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
- oVirt doit être en version 4.0.4 ou supérieure.
- Ansible doit être en version 2.9 ou supérieure.
- ovirt-imageio doit être installé et en cours d'exécution.
- oVirt Python SDK version 4.
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'automatisationdatabase_operations
- Opérations de base de donnéesevent
- Moniteur d'événementsems_inventory
- Inventaire du fournisseurems_operations
- Opérations du fournisseurreporting
- Reportingscheduler
- Planificateursmartstate
- Analyse SmartStateuser_interface
- Interface utilisateurwebsocket
- Websocketweb_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
Role to deploy ManageIQ/CloudForms into oVirt/RHV.
ansible-galaxy install ovirt.manageiq