Installer Proxmox VE de manière silencieuse via une clef USB

Sommaire

L'objectif est d'installer Proxmox de manière silencieuse via une clef USB.

Depuis la sortie de Proxmox 8.2, il existe maintenant un moyen natif d'installer Proxmox de manière silencieuse. Pour les versions antérieures, vous trouverez une procédure via Ventoy ici : Installer Proxmox VE de manière silencieuse avec Ventoy et Ansible

1. Prérequis

2. Installer l'outil assistant de Proxmox

Configurer le dépôt Proxmox VE "no-subscription" sur votre Debian :

1sudo wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
2echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" | sudo tee /etc/apt/sources.list.d/proxmox.list
3sudo apt-get update

Installer l'assistant de création d'une image ISO personnalisée de Proxmox VE :

1sudo apt install proxmox-auto-install-assistant

3. Préparation du fichier de réponse d'installation de Proxmox VE

Le fichier de réponse est attendu au format TOML.

Les paramètres disponibles pour ce fichier de réponse sont documentés ici : Answer File Format

Dans notre exemple, nous allons utiliser le fichier de réponse suivant "answer.toml" :

 1[global]
 2keyboard = "fr"
 3country = "fr"
 4fqdn = "pve10.domain.name"
 5mailto = "mail@domain.name"
 6timezone = "Europe/Paris"
 7root_password = "ChangeMe!"
 8
 9[network]
10source = "from-dhcp"
11
12[disk-setup]
13filesystem = "ext4"
14disk_list = ["sda"]

Ce fichier de réponse "proxmox.seed" réalise les actions suivantes :

  1. Configuration du clavier en Français
  2. Configuration du code pays sur France
  3. Configuration du nom FQDN du noeud Proxmox VE
  4. Configuration de l'email de l'administrateur
  5. Configuration du fuseau horaire sur Paris
  6. Configuration du mot de passe pour l'utilisateur "root" du noeud Proxmox VE (à changer)
  7. Configuration réseau via DHCP
  8. Configuration d'un disque avec formatage de la partition en ext4

Vérifier le fichier de réponse :

1proxmox-auto-install-assistant validate-answer answer.toml

Le résultat de la commande doit ressembler à cela :

1The file was parsed successfully, no syntax errors found!

4. Intégrer le fichier de réponse à l'image ISO d'installation de Proxmox VE

On intègre le fichier de réponse à l'image ISO via cette commande :

  • Remplacer /path/to/source.iso avec le chemin vers l'image ISO de Proxmox VE officielle et non modifiée
  • Remplacer /path/to/answer.toml avec le chemin vers votre fichier de réponse
1proxmox-auto-install-assistant prepare-iso /path/to/source.iso --fetch-from iso --answer-file /path/to/answer.toml

Le résultat de la commande doit ressembler à cela :

1Checking provided answer file...
2The file was parsed successfully, no syntax errors found!
3Copying source ISO to temporary location...
4Preparing ISO...
5Moving prepared ISO to target location...
6Final ISO is available at "proxmox-ve_8.2-1-auto-from-iso.iso".

5. Préparer l'image ISO Proxmox VE sur la clef USB

Recherchez d’abord le nom de périphérique correct de la clé USB (voir ci-dessous).

1lsblk -a --nodeps -o PATH,NAME,LABEL,VENDOR,MODEL,SIZE

Utilisez la commande suivante pour copier l'image ISO sur la clé USB :

  • Remplacer /path/to/proxmox-auto-install.iso avec le chemin vers l'image ISO de Proxmox VE modifiée
  • Remplacer /dev/XYZ par l'emplacement de votre clef USB
1sudo dd oflag=sync status=progress bs=1M conv=fdatasync if=/path/to/proxmox-auto-install.iso of=/dev/XYZ

6. Démarrage de l'installation du noeud Proxmox VE

  1. Brancher la clef USB sur votre machine dédiée à l'installation de Proxmox VE et booter sur cette dernière.
  2. Enfin, connectez vous en HTTP sur l'adresse IP du noeud Proxmox VE

7. Troubleshooting

Si l'installation échoue, vous disposerez d'un Shell (sauf si l'option "reboot_on_error" dans le fichier de réponses est définie sur "true").

Les fichiers journaux intéressants sont :

  • /tmp/fetch_answer.log - les étapes pour récupérer le fichier de réponses
  • /tmp/auto_installer - analyse du fichier de réponses et informations du matériel
  • /tmp/install-low-level-start-session.log - processus d'installation

8. Liens utiles