Installer Proxmox avec Ansible

Installer Proxmox avec Ansible

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’]}} »

joel

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.