stafwag.qemu_img

Rôle Ansible : qemu_img

Un rôle Ansible pour créer des images disque QEMU.

Exigences

Ce rôle utilise la commande qemu-img.
Ce rôle installera le paquet qemu_img pour votre distribution GNU/Linux.
Ce rôle a été testé sur les distributions GNU/Linux suivantes :

  • Archlinux
  • AlmaLinux
  • Debian
  • Centos
  • Fedora
  • RedHat
  • Rocky
  • Suse
  • Ubuntu

Tâches, balises, variables et modèles du rôle

Tâches

  • installer

    Toutes les tâches liées à l'installation sont définies dans le playbook install. Cela vous permet d'installer les paquets requis et de démarrer/activer le service requis avec tasks_from dans les modules ansible include_role, import_role, etc.

    Voir l'exemple ci-dessous.

Balises

  • installer

    Installer les paquets requis.

Variables

  • qemu_img : "espace de noms"

Les données peuvent être dans des variables ou une liste (tableau). Lorsqu'une liste est utilisée, le rôle va parcourir la liste et créer toutes les images disque QEMU définies.

  • dest : requis. L'image de destination.
  • src : optionnel. L'image source, une nouvelle image sera créée si non définie.
  • size : optionnel. requis si pas de src défini. La taille de l'image de destination.
  • owner : uid, par défaut 0. Le propriétaire du fichier de l'image de destination.
  • group : gid, par défaut 0. Le groupe de fichiers de l'image de destination.
  • mode : mode, par défaut '0400'. Les permissions de l'image de destination.
  • remote_src : booléen, par défaut : faux. Lorsque le fichier source est sur un hôte distant.
  • format : format, par défaut : qcow2. Le format de l'image disque.
  • overwrite : booléen, par défaut : faux. Écraser la destination si elle existe déjà.

Dépendances

Aucune

Exemples de Playbooks

Installer les paquets requis

---
- name: Installer libvirt & co
  gather_facts: true 
  hosts: all
  become: true
  tasks:
    - name: Installer les exigences
      include_role:
        name: "{{ item }}"
        tasks_from:
          install
      with_items:
        - stafwag.libvirt 
        - stafwag.qemu_img

Créer une nouvelle image qemu

---
- name: Créer une nouvelle image disque
  gather_facts: no 
  become: true
  hosts: localhost
  roles:
    - role: stafwag.qemu_img
      vars:
        qemu_img:
          dest: datadisk.qcow2 
          size: 20G 
          format: qcow2

Copier une image disque et redimensionner

---
- name: Copier une image disque et redimensionner
  gather_facts: no 
  become: true
  hosts: localhost
  roles:
    - role: stafwag.qemu_img
      vars:
        qemu_img:
          dest: /var/lib/libvirt/images/tstdebian.qcow2 
          format: qcow2
          size: 50G
          src: /home/staf/Downloads/isos/debian/arm64/cloud/debian-10-openstack-arm64.qcow2

Créer plusieurs images disque

---
- name: Créer plusieurs images disque
  gather_facts: no 
  become: true
  hosts: localhost
  roles:
    - role: stafwag.qemu_img
      vars:
        qemu_img:
          - dest: /var/lib/libvirt/images/tstdebian.qcow2 
            src: /home/staf/Downloads/isos/debian/arm64/cloud/debian-10-openstack-arm64.qcow2
          - dest: /var/lib/libvirt/images/tstdebian_data001.qcow 
            size: 20G
          - dest: /var/lib/libvirt/images/tstdebian_data002.qcow 
            size: 20G

Licence

MIT/BSD

Informations sur l'auteur

Créé par Staf Wagemakers, email : staf@wagemakers.be, site web : https://www.wagemakers.be, ma société : https://mask27.dev

À propos du projet

An ansible role to create qemu_img images

Installer
ansible-galaxy install stafwag.qemu_img
Licence
mit
Téléchargements
490
Propriétaire