Nous allons voire durant tutoriel une méthode simple qui permet de déployer proxmox avec ansible en utilisant le rôle lae.proxmox disponible sur ansible galaxy mais également sur Github. Nous partons du postulat selon lequel vous avez déjà ansible configuré. Vous pouvez suivre nos tutoriels sur ansible si se n’est pas le cas.
Pour notre tutoriel nous allons utiliser la dernière version du rôle disponible sur github qui nous permettra d’installer proxmox 7 sur debian 11. Donc vous pouvez soit faire un clone du repot github dans votre répertoire de rôle ou alors télècharger la collection ansible.
joel@serv:~/ansible/roles/$ git clone https://github.com/lae/ansible-role-proxmox
###ou alors
joel@serv:~/ansible/$ ansible-galaxy install lae.proxmox
Une fois l’une ou l’autre des méthode utilisé pour récupérer notre rôle nous allons créer notre playbook.
joel@serv:~/ansible/$ cat playbook_proxmox_lae.xml
---
#Playbook hyperviseur
- name: "Playbook hyperviseur Proxmox"
hosts: hypervisor
become: yes
roles:
- role: ansible-role-proxmox
pve_datacenter_cfg:
keyboard: fr-FR
pve_groups:
- name: Admins
comment: Administrators of this PVE cluster
- name: Clients
comment: Groupes Clients
pve_users:
- name: root@pam
email: blabla@atomit.fr
- name: user1@pam
email: blabla0@atomit.fr
groups: [ "Admins" ]
- name: user2@pve
email: blabla1@gmail.com
firstname: user2
lastname: user2
password: "user2"
groups: [ "Clients" ]
pve_acls: # This should generate different ACLs
- path: /
roles: [ "Administrator" ]
groups: [ "Admins" ]
- path: /vms
roles: [ "PVEVMUser" ]
groups: [ "Clients" ]
pve_storages:
- name: data
type: lvmthin
content: [ "images", "rootdir" ]
vgname: debian-vg
thinpool: data-vms
pve_reboot_on_kernel_update: yes
joel@serv:~/ansible/$ ansible-playbook --user jojo -bKk playbook_proxmox_lae.yml
Dans notre exemple à la fin de l’installation de proxmox nous allons créé :
- le compte root et le compte user1 qui seront lié au compte utilisateur présent sur notre débian donc qui utiliseront les même mot de passe ansi qu’un compte user2 qui sera créé dans la BDD proxmox il ne sera pas lié à un compte local donc nous devons lui donner un mot de passe.
- Nous avons créé également un groupe Admins dans lequel je place mon utilisateur user1 et je donne le rôle Adminstrateur à se groupe, donc les utilisateur du groupe seront administrateur de proxmox. je fait de même pour le groupes Clients mais avec le rôle PVEVMUser donc les utilisateurs de ce groupe n’aurons qu’un accès restreint aux VM.
A la fin de l’installation votre serveur reboot et vous pouvez accèder à l’insterface d’administration en https sur le port 8006. Si votre machine à plusieurs carte réseau, vous pouvez simplement ajouter la ligne suivantes dans la conf juste avant pve_datacenter_cfg. Pensez à remplacer enp0s8 par le nom de votre carte réseau externe.
pve_cluster_addr0: « {{hostvars[inventory_hostname][‘ansible_facts’][‘enp0s8’][‘ipv4’][‘address’]}} »
Laisser un commentaire