ovirt.manageiq

Déployer ManageIQ dans oVirt

Ce rôle a été migré vers oVirt Ansible Collection. Veuillez utiliser la dernière version disponible là-bas. Ce dépôt est maintenant en lecture seule et n'est plus utilisé pour le développement actif.

Le rôle ovirt.manageiq télécharge une image QCOW de ManageIQ/CloudForms et la déploie sur oVirt/Red Hat Virtualization (RHV).

Le rôle vous permet également de créer une machine virtuelle et d'attacher le disque ManageIQ, puis d'attendre l'initialisation du système ManageIQ et d'enregistrer oVirt en tant que fournisseur d'infrastructure.

Remarque

Veuillez noter que lors de l'installation de ce rôle depuis Ansible Galaxy, vous devez exécuter la commande suivante :

$ ansible-galaxy install ovirt.manageiq

Cela téléchargera le rôle dans un répertoire portant le même nom que celui que vous avez spécifié, dans ce cas ovirt.manageiq. Notez que les noms sont sensibles à la casse, donc si vous spécifiez par exemple OVIRT.manageiq, cela téléchargera le même rôle mais l'ajoutera dans un répertoire nommé OVIRT.manageiq. Vous devrez donc toujours utiliser ce rôle avec le préfixe en majuscules. Soyez donc prudent lorsque vous spécifiez le nom du rôle en ligne de commande.

Pour l'installation RPM, nous installons trois noms legacy oVirt.manageiq, ovirt.manageiq et ovirt-manageiq. Vous pouvez donc utiliser l'un de ces noms. Cette documentation et les exemples dans ce dépôt utilisent le nom ovirt.manageiq. Les noms de rôle oVirt.manageiq et ovirt-manageiq sont obsolètes.

Exigences

De plus, effectuez les vérifications suivantes pour vous assurer que les processus requis sont en cours d'exécution.

  • Vérifiez si ovirt-imageio-proxy est en cours d'exécution sur le moteur :
systemctl status ovirt-imageio-proxy
  • Vérifiez si ovirt-imageio-daemon est en cours d'exécution sur les hôtes :
systemctl status ovirt-imageio-daemon

Vous aurez également besoin du certificat CA du moteur. Pour ce faire, configurez la variable ovirt_ca avec le chemin vers le certificat CA.

Limitations

  • Nous ne supportons pas le mode Vérification Ansible (Exécution à blanc), car ce rôle utilise quelques modules (module de commande) qui ne le supportent pas. Une fois que tous les modules utilisés par ce rôle le prendront en charge, nous le supporterons.

Variables de rôle

Variables QCOW :

Nom Valeur par défaut Description
miq_qcow_url http://releases.manageiq.org/manageiq-ovirt-hammer-6.qc2 L'URL de l'image QCOW de ManageIQ.
miq_image_path /tmp/ Chemin où l'image QCOW2 sera téléchargée. Si le répertoire existe, le nom de base de l'URL du serveur distant sera utilisé.
miq_image_checksum UNDEF Si un checksum est défini, le digest du fichier de destination sera calculé après son téléchargement pour garantir son intégrité et vérifier que le transfert s'est déroulé avec succès. Format : :, par exemple checksum="sha256:D98291AC[...]B6DC7B97".

Variables de connexion au moteur :

Nom Valeur par défaut Description
engine_user UNDEF L'utilisateur pour accéder au moteur.
engine_password UNDEF Le mot de passe de l'utilisateur 'engine_user'.
engine_fqdn UNDEF Le FQDN du moteur.
engine_ca UNDEF Le chemin vers le certificat CA du moteur.

Variables de la machine virtuelle :

Nom Valeur par défaut Description
miq_vm_name manageiq_gaprindashvili-3 Le nom de la machine virtuelle ManageIQ.
miq_vm_cluster Default Le cluster de la machine virtuelle.
miq_vm_memory 16GiB La mémoire système de la machine virtuelle.
miq_vm_memory_guaranteed UNDEF Quantité de mémoire minimale garantie de la machine virtuelle. Le paramètre miq_vm_memory_guaranteed ne peut pas être inférieur au paramètre miq_vm_memory.
miq_vm_memory_max UNDEF Limite supérieure de la mémoire de la machine virtuelle, jusqu'à laquelle la mémoire peut être ajoutée à chaud.
miq_vm_cpu 4 Le nombre de cœurs CPU de la machine virtuelle.
miq_vm_cpu_shares UNDEF Définissez une part CPU pour cette machine virtuelle.
miq_vm_cpu_sockets UNDEF Nombre de sockets CPU virtuels de la machine virtuelle.
miq_vm_cpu_threads UNDEF Nombre de threads CPU virtuels de la machine virtuelle.
miq_vm_os rhel_7x64 Le système d'exploitation de la machine virtuelle.
miq_vm_root_password miq_app_password Le mot de passe root pour la machine virtuelle.
miq_vm_cloud_init UNDEF Le dictionnaire d'initialisation cloud à transmettre à la machine virtuelle.
miq_vm_high_availability true Si oui, la machine virtuelle ManageIQ sera définie comme hautement disponible.
miq_vm_high_availability_priority 50 Indique la priorité de la machine virtuelle dans les files d'attente d'exécution et de migration. La valeur est un entier compris entre 0 et 100. Plus la valeur est élevée, plus la priorité est élevée.
miq_vm_delete_protected true Si oui, la machine virtuelle ManageIQ sera définie comme protégée contre la suppression.
miq_debug_create false Si vrai, enregistrez des données sensibles, utile à des fins de débogage.
miq_wait_for_ip_version v4 Spécifie quelle version IP doit être attendue. Soit v4 soit v6.
miq_wait_for_ip_timeout 240 Durée maximum pendant laquelle le playbook doit attendre que l'IP soit signalée.

Variables des disques principaux de la machine virtuelle (par exemple, système d'exploitation) :

Nom Valeur par défaut Description
miq_vm_disk_name miq_vm_name Le nom du disque de la machine virtuelle.
miq_vm_disk_storage UNDEF Le domaine de stockage cible du disque.
miq_vm_disk_size Taille du disque qcow La taille du disque de la machine virtuelle.
miq_vm_disk_interface virtio_scsi Le type d'interface du disque de la machine virtuelle.
miq_vm_disk_format cow Le format du disque de la machine virtuelle.

Variables pour les disques supplémentaires de la machine virtuelle (par exemple, base de données, journaux, tmp) : un dictionnaire nommé miq_vm_disks permet de décrire chacun des disques supplémentaires (voir l'exemple de playbook). Notez que cela ne fonctionne qu'avec CFME. Pour chaque disque, les attributs suivants peuvent être définis :

Nom Valeur par défaut Description
name miq_vm_name_type Le nom du disque de la machine virtuelle.
size UNDEF La taille du disque de la machine virtuelle (XXGiB).
interface virtio_scsi Le type d'interface du disque de la machine virtuelle (virtio ou virtio_scsi). virtio_scsi est recommandé, car virtio a une faible limite de nombre de disques.
format UNDEF Le format du disque de la machine virtuelle (raw ou cow).
timeout UNDEF Délai de création du disque.

Variables des NIC de la machine virtuelle :

Nom Valeur par défaut Description
miq_vm_nics {'name': 'nic1', 'profile_name': 'ovirtmgmt', 'interface': 'virtio'} Liste de dictionnaires définissant les interfaces réseau de la machine virtuelle.

Les éléments de la liste miq_vm_nics peuvent contenir les attributs suivants :

Nom Valeur par défaut
name UNDEF Le nom de l'interface réseau.
interface UNDEF Type de l'interface réseau.
mac_address UNDEF Adresse MAC personnalisée de l'interface réseau, par défaut elle est obtenue à partir de la piscine MAC.
profile_name UNDEF Profil de l'interface réseau virtuelle à attacher à l'interface réseau de la VM.

Variables de ManageIQ :

Nom Valeur par défaut Description
miq_app_username admin Le nom d'utilisateur utilisé pour se connecter à ManageIQ.
miq_app_password smartvm Le mot de passe de l'utilisateur spécifié dans le nom d'utilisateur pour se connecter à ManageIQ.
miq_username admin Alias de miq_app_username pour la compatibilité descendante.
miq_password smartvm Alias de miq_app_password pour la compatibilité descendante.
miq_db_username root Le nom d'utilisateur pour se connecter à la base de données.
miq_db_password miq_app_password Le mot de passe de l'utilisateur spécifié dans le nom d'utilisateur pour se connecter à la base de données.
miq_region 0 La région de ManageIQ créée dans la base de données. Note : fonctionne uniquement avec CFME.
miq_company My Company Le nom de l'entreprise de l'appliance.
miq_disabled_roles [] Liste des rôles de serveur ManageIQ à désactiver sur l'appliance.
miq_enabled_roles [] Liste des rôles de serveur ManageIQ à activer sur l'appliance.

Pour ManageIQ et CloudForms, les rôles de serveur activés par défaut sont :

  • automate - Moteur d'automatisation
  • database_operations - Opérations de base de données
  • event - Moniteur d'événements
  • ems_inventory - Inventaire du fournisseur
  • ems_operations - Opérations du fournisseur
  • reporting - Reporting
  • scheduler - Planificateur
  • smartstate - Analyse SmartState
  • user_interface - Interface utilisateur
  • websocket - Websocket
  • web_services - Services Web

Variables du fournisseur RHV et des métriques RHV :

Nom Valeur par défaut Description
miq_rhv_provider_name Fournisseur RHV Nom du fournisseur RHV à afficher dans ManageIQ.
metrics_fqdn UNDEF FQDN des métriques oVirt/RHV.
metrics_user engine_history L'utilisateur pour se connecter au serveur de métriques.
metrics_password "" Le mot de passe de l'utilisateur metrics_user.
metrics_port 5432 Port pour se connecter aux métriques oVirt/RHV.
metrics_db_name ovirt_engine_history Nom de la base de données des métriques du moteur oVirt.

Dépendances

Aucune.

Exemple de Playbook

Notez que pour les mots de passe, vous devez utiliser Ansible vault.

Voici un exemple pour déployer CFME :

    - name: Déployer CFME sur le moteur oVirt
      hosts: localhost
      gather_facts: no

      vars_files:
        # Contient la variable `engine_password` encryptée avec ansible-vault
        - passwords.yml

      vars:
        engine_fqdn: ovirt-engine.example.com
        engine_user: admin@internal

        miq_qcow_url: https://cdn.example.com/cfme-rhevm-5.9.1.2-1.x86_64.qcow2
        miq_vm_name: cfme_59
        miq_vm_cluster: mycluster
        miq_vm_cloud_init:
          host_name: "{{ miq_vm_name }}"
        miq_vm_disks:
          database:
            name: "{{ miq_vm_name }}_database"
            size: 10GiB
            interface: virtio_scsi
            format: raw
          log:
            name: "{{ miq_vm_name }}_log"
            size: 10GiB
            interface: virtio_scsi
            format: cow
          tmp:
            name: "{{ miq_vm_name }}_tmp"
            size: 10GiB
            interface: virtio_scsi
            format: cow
        miq_disabled_roles:
          - smartstate
        miq_enabled_roles:
          - notifier
          - ems_metrics_coordinator
          - ems_metrics_collector
          - ems_metrics_processor
          - embedded_ansible

      roles:
        - ovirt.manageiq

Voici un exemple pour déployer ManageIQ :

---
- name: Déploiement de ManageIQ sur oVirt
  hosts: localhost
  connection: local
  gather_facts: false

  vars_files:
    # Contient les mots de passe `engine_password` et `metrics_password` encryptés
    # avec ansible-vault
    - passwords.yml

  vars:
    engine_fqdn: ovirt.example.com
    engine_user: admin@internal
    engine_cafile: /etc/pki/ovirt-engine/ca.pem

    miq_qcow_url: http://releases.manageiq.org/manageiq-ovirt-hammer-6.qc2
    miq_vm_name: manageiq_hammer6
    miq_vm_cluster: mycluster

    metrics_fqdn: metrics.example.com
    metrics_port: 8443
    metrics_user: admin


  roles:
    - ovirt.manageiq
À propos du projet

Role to deploy ManageIQ/CloudForms into oVirt/RHV.

Installer
ansible-galaxy install ovirt.manageiq
Licence
apache-2.0
Téléchargements
15.2k
Propriétaire
Open Virtual Datacenter