===== Gestion des VMs ===== **//ATTENTION//: on ne touche pas à la config de martine quand on est défoncé⋅e !!!** [[martine:virtualmachines:list|Liste des VMs]] ==== Stockage ==== On utilise les pools libvirt. On en a deux : * ''ssd_pool'' : utilise le groupe de volumes LVM posé sur le RAID1 des SSD (128GB) * ''storage-pool'' : utilise le groupe de volumes LVM posé sur le RAID10 des HDD (capacité 24TB) On utilise en priorité le storage, et pour les VMs qui ont besoin de disques rapides, on peut mettre l'OS sur les SSD et le stockage sur les HDD. ==== Réseau ==== * L'hôte a une IPv4 publique (185.177.181.105), configurée sur son port eno1. * ''libvirt'' a un réseau ''default'', sur le bridge virbr0, 192.168.122.1 * Les VMs se voient mettre dans ce réseau, et leurs IPs sont configurées dans ''virsh net-edit default'' ou données aléatoirement par le ''dnsmasq'' de libvirt. * Les redirections de port se passent dans ''/etc/libvirt/hooks/qemu'' ==== Créer une VM ==== Dans ''/opt/installvm'' y'a un script ''./create'' qui gère les bails de création de VM. ''./create --help'' affiche un peu d'aide. Procédure pour créer une VM: * Ouvrir un tmux, puis aller dans le dossier ''/opt/installvm'' * ''./create -n -l martine-vg VM-NAME dummy'' * Le ''-n'' désactive le preseed (le truc d'installation automatique de Debian) * Le ''-l martine-vg'' dit au script qu'on veut créer un volume logique LVM dans le groupe de volume "martine-vg", qui est dans md1 (sur les SSD, voir [[martine:host|la config de martine]]) * ''dummy'' c'est parce que le script attend une adresse IP pour la VM or pour l'instant on est sur du NAT de base, donc IP dynamique * Ensuite il faut se connecter à la console de la VM pour continuer l'install: * ''virsh console VM-NAME'' * Là si rien ne s'affiche on peut faire CTRL-L pour actualiser l'affichage * Pour en sortir à tout moment (décrocher de l'affichage), il faut faire CTRL-] (donc sur clavier français CTRL ALT ]) * Quand c'est fini ça éteint la machine, faut la démarrer avec ''virsh start VM-NAME'' * On peut aussi la mettre en démarrage automatique: ''virsh autostart VM-NAME'' ==== Supprimer une VM ==== **ATTENTION: c'est irréversible** * ''virsh destroy VM-NAME'' * ''virsh undefine VM-NAME'' * ''lvremove martine-vg/VM-NAME'' ==== Process clonage VM LibreTime ==== * Partir de la VM Debian 11 dans VirtManager (+ check "details"), clonage (l'opération prend du temps) * SSH dedans (ip defaut 122.120) * changer l'IP pour nouvel IP /etc/network/ * reboot * lancer le playbook system.yml (renomage de host) LT : * ansible-galaxy install -r requirements.yml * preparer l'install : > config variables LT et autres * hosts.yml * files/hostname/config.yml.j2 *Check logs no err (journalctl & /var/log/lt