Table des matières

Installation automatique VM

*/!\ Ceci est un draft /!*

Le but est de pouvoir automatiser l'installation d'une VM.

Le script est écrit en Bash avec du Curl et de JQ pour l'interprétation du json. J'en conviens que ce n'est pas des plus académique mais ça fait le JOB!.

Implémentation

Les scripts sont pour le moment sur un GIT privé, ils seront rendu public lorsque qu'ils seront secs.

Licence : https://fr.wikipedia.org/wiki/Beerware


Ingrédients


Cuisine

Maintenant que l'on a défini tout cela, on va scripter le tout pour créer une VM à notre adhérent.

Installation d'une VM de déploiement

Nous partons sur une Debian. Une installation classique en mode Net-Install. Avec simplement ssh d'installé.

Binaire supplémentaire

Pour le DHCP :

Pour la les API

Réseau

La VM devra accéder à l'hyperviseur Proxmox et à l'IPAM via leur API.

Deux interfaces réseaux sont nécessaires, une dans le Vlan Admin et une spécifique au PXE/DHCP.

Pour accéder à l'hyperviseur, pour récupérer le prochaine ID disponible et lancer la création d'une VM en CLI. Et récupérer la prochaine IPv4 et le pool IPv6 disponible.

On ajoute une interface pour séparer le service DHCP des autres réseaux. Il ne sera utiliser que pour l'installation de nouvelles VM.


API Ipam

API IPAM

Morceau de l'API :


API proxmox

API Proxmox

API Proxmox (RU)

Dans la suite jq va être important. Il va permettre de mettre en forme le retour en Json des commandes proxmox.


Récupération du paramétrage Proxmox

Récupérer l'ID disponible sur le cluster :

pvesh get /cluster/nextid

Création VM Proxmox

Commande de création VM :

qm create 101 –name vmtest –onboot no –sockets 1 –net0 virtio,bridge=vmbr1 –virtio0 local:16,format=qcow2 –bootdisk virtio0 –ostype l26 –memory 512 -pool dotux

Configuration DHCP / PXE

Fichier de configuration

# vim /etc/dnsmasq.conf

Configuration

PXE

Les fichiers preseed et de post-installation seront placer de le domaine public tellement les sources ont été diverses.

Fichier Preseed Debian

Le fichier preseed mérite une page a lui tout seul.

Post installation

La post installation ou plutôt le fichier de post-install est appeler à la fin du fichier preseed pour personnaliser un certain nombre de paramètre de la VM.

Dans le désordre :

Dégustation

Pour savourer, on quitte la cuisine pour aller dans le salon : Dégustation