first commit

This commit is contained in:
Guillaume Archambault 2024-04-25 23:03:18 +02:00
commit ff608979d3
4 changed files with 67 additions and 0 deletions

29
template/README.md Normal file
View File

@ -0,0 +1,29 @@
Script template.sh
Fonctionnement:
Ce script permet de créer facilement des templates de machines virtuelles (VM) dans Proxmox VE en utilisant cloud-init pour leur configuration initiale. Il automatise plusieurs étapes manuelles, vous faisant gagner du temps et de l'effort.
Une fois le template créé, il suffit de créer un clone en lui donnant un nom puis aller dans la partie cloud-init pour modifier les paramètres voulus.
Variables personnalisables:
template_id: Identifiant unique pour le template VM (nombre entier).
template_name: Nom du template VM (par exemple, "template-webserver").
cloudinit_img: Chemin vers le répertoire contenant l'image cloud-init (par défaut, "./cloudinit-img").
storage: Type de stockage pour les disques VM (par défaut, "Datastore").
Utilisation:
Le rendre exécutable en exécutant chmod +x template.sh.
Exécuter le script avec les paramètres souhaités :
./template.sh <template_id> <template_name> <cloudinit_img>
Exemple :
./template.sh 1000 ubuntu-2204 ubuntu-2204.img

BIN
template/debian-12.qcow2 Normal file

Binary file not shown.

38
template/template.sh Normal file
View File

@ -0,0 +1,38 @@
#!/bin/bash
template_id=$1
template_name=$2
cloudinit_img=$3
storage="Datastore" # De base local-lvm | local-btrs | local-zfs | local
# Personnalisation Cloud-init
ci_username="cloudinit"
ci_password="changeme"
ci_network="dhcp"
# Création de la VM
qm create $template_id --memory 2048 --core 2 --name $template_name --net0 virtio,bridge=vmbr0 --agent 1
# Import disque cloud-init
qm importdisk $template_id $cloudinit_img/jammy-server-cloudimg-amd64.img Datastore
# Création disque de stockage
qm set $template_id --scsihw virtio-scsi-pci --scsi0 Datastore:$template_id/vm-$template_id-disk-0.raw
# Activation cloud-init
qm set $template_id --ide2 $storage:cloudinit
# Mise en place du boot sur cloud-init
qm set $template_id --boot c --bootdisk scsi0
# Mise en place serial vga obligatoire pour cloud-init
qm set $template_id --serial0 socket --vga serial0
# Paramètres cloud-init
qm set $template_id -ciuser $ci_username
qm set $template_id -cipassword $ci_password
qm set $template_id --ipconfig0 ip=$ci_network
# Création template
qm template $template_id

BIN
template/ubuntu-22_04.img Normal file

Binary file not shown.