ahuffman.sat6_create_hosts
ahuffman.sat6_create_hosts
Un rôle Ansible pour créer de nouveaux hôtes virtuels et physiques dans Satellite 6.x. La version 2 de l'API Satellite6 est requise.
Variables du Rôle
Nom de la variable | Obligatoire | Description | Type | Par défaut |
---|---|---|---|---|
sat6_fqdn | oui | Nom de domaine complet de l'hôte Satellite 6. | chaine | "" |
sat6_user | oui | Nom d'utilisateur de l'utilisateur Satellite 6 qui a accès pour créer de nouveaux hôtes. | chaine | "" |
sat6_pass | oui | Mot de passe de l'utilisateur Satellite 6 qui a accès pour créer de nouveaux hôtes. Cela doit être sécurisé. | chaine | "" |
sat6_organization | oui | Organisation Satellite6 pour créer les hôtes définis dans sat6_hosts . |
chaine | "" |
sat6_fail_on_existing | non | Fait échouer le playbook si l'un des hôtes définis dans sat6_hosts existe déjà dans Satellite6. Utile lors de l'utilisation des notifications dans Ansible Tower, vous permettant d'être averti d'une erreur. Vrai signifie échouer si un hôte existe, faux signifie simplement fournir un résumé. |
booléen | Faux |
sat6_power_on_delay | non | Temps en secondes à retarder entre la création d'une nouvelle machine virtuelle et son démarrage. | entier | 30 |
sat6_hosts | oui | Hôtes Satellite 6 que vous souhaitez créer | liste de dictionnaires | [] |
Champs du Dictionnaire sat6_hosts
- Commun
Champs que vous pouvez utiliser pour la création d'hôtes physiques ou virtuels.
Nom du champ | Obligatoire | Description | Type |
---|---|---|---|
name | oui | Nom de l'hôte à créer. | chaine |
comment | non | Un commentaire qui apparaîtra dans les informations supplémentaires de l'hôte. Une courte description de l'objectif de l'hôte. | chaine |
domain | non | Nom du domaine Satellite6 avec lequel créer l'hôte. Non requis si vous souhaitez hériter du domaine par défaut du groupe d'hôtes. | chaine |
host_group | oui | Nom du groupe d'hôtes Satellite6 avec lequel créer le nouvel hôte. Si des groupes d'hôtes sont imbriqués, ce sera le nom du groupe d'hôtes sous la forme hostgroup1/hostgroup2/hostgroup3 , aussi connu sous le nom de titre dans l'API. |
chaine |
ipv4 | non | Adresse IPv4 à attribuer à l'hôte. Non requis si le groupe d'hôtes est configuré pour suggérer une adresse IPv4 via ipam ou dhcp. | chaine |
location | oui | Nom de l'emplacement Satellite6 où vous déploierez l'hôte. | chaine |
partition_table | non | Nom de la table de partition Satellite6 avec laquelle créer l'hôte. Non requis si vous souhaitez hériter de la table de partition par défaut du groupe d'hôtes. | chaine |
subnet | non | Nom de la sous-réseau Satellite6 avec lequel créer l'hôte. Non requis si vous souhaitez hériter de la sous-réseau par défaut du groupe d'hôtes. | chaine |
parameters | non | Liste de paramètres spécifiques à l'hôte Satellite6 que vous souhaitez définir. Utile pour effectuer des tâches après la provision. | liste de dictionnaires |
register_only | non | Que faire pour créer uniquement l'entrée de l'hôte dans Satellite6 ou pour le démarrer et le provisionner (par défaut c'est faux). | booléen |
manage_host | non | Lors de l'utilisation de register_only: True et force_host_update: True , cela permettra au cycle de construction de l'hôte d'être géré par Satellite6. (Par défaut faux). |
booléen |
force_host_update | non | Lors de l'utilisation de register_only: True , cela mettra à jour l'hôte Satellite6 selon vos options spécifiées. (Par défaut faux). |
booléen |
provision_method | non | build ou image . (Par défaut c'est build ). |
chaine |
Champs du Dictionnaire sat6_hosts
- Virtuel
Nom du champ | Obligatoire | Description | Type |
---|---|---|---|
compute_profile | non | Nom du profil de calcul Satellite6 avec lequel vous souhaitez déployer l'hôte. Si non fourni, le défaut du groupe d'hôtes sera utilisé. | chaine |
compute_resource | oui | Nom de la ressource de calcul Satellite6 sur laquelle vous souhaitez déployer l'hôte. | chaine |
Champs du Dictionnaire sat6_hosts
- Physique
Nom du champ | Obligatoire | Description | Type |
---|---|---|---|
mac | oui | Adresse MAC de l'hôte physique que vous souhaitez déployer. | chaine |
Champs du Dictionnaire sat6_hosts.parameters
Nom du champ | Obligatoire | Description | Type |
---|---|---|---|
name | oui | Nom du paramètre à créer. | chaine |
value | oui | Valeur du paramètre à créer. | chaine |
Débogage
Pour voir la sortie de débogage complète, augmentez la verbosité à 1 (Verbeux) dans Ansible Tower, ou utilisez un -v
dans Ansible Core/Engine.
Exemple de Playbook
---
- name: "Exemple de Playbook ahuffman.sat6_create_hosts"
hosts: "localhost"
vars_files:
- "vars/myvaultedsecrets.yml"
tasks:
- name: "Provisionner des Hôtes Satellite 6"
include_role:
name: "ahuffman.sat6_create_hosts"
vars:
sat6_fqdn: "monsat6serveur.mondomaine.com"
sat6_user: "monsat6admin"
#sat6_pass: "cela est défini dans le fichier vars/myvaultedsecrets.yml"
sat6_organization: "mon organisation"
sat6_fail_on_existing: True
#il est recommandé de passer sat6_hosts comme une variable supplémentaire, mais vous pouvez définir
#sat6_fail_on_existing: False pour exécuter le playbook de manière plus idempotente si vous souhaitez
# garder une trace de tous les hôtes sat6 que vous créez dans le contrôle de version
sat6_hosts:
#VM
- name: "ma-nouvelle-vm"
host_group: "RHEL7-Virtual"
location: "Raleigh"
ipv4: "192.168.122.24"
domain: "redhat.com"
comment: "Serveur web pour un nouveau site"
compute_resource: "vsphere.vmware.com" #C'est le nom de votre ressource de calcul
compute_profile: "3-Large"
parameters:
- name: "type_de_construction"
value: "httpd"
#Métal nu
- name: "mon-nouveau-metal-nu"
host_group: "RHEL7-Physical"
location: "Raleigh"
ipv4: "192.168.122.25"
domain: "redhat.com"
comment: "Serveur de base de données"
mac: "12:34:56:78:91:23"
#Inscription seulement (c'est-à-dire créer seulement)
- name: "hôte1"
host_group: "RHEL7-Virtual"
location: "Raleigh"
ipv4: "192.168.122.26"
domain: "redhat.com"
comment: "Entrée d'hôte pré-inscription"
register_only: True
#Mettre à jour un hôte existant
- name: "ma-nouvelle-vm"
host_group: "RHEL7-Virtual"
location: "Armonk"
ipv4: "192.168.122.24"
comment: "Migré Q3"
domain: "ibm.com"
parameters:
- name: "type_de_construction"
value: "ihs"
register_only: True #ne pas essayer de provisionner
force_host_update: True #mettre à jour l'hôte s'il existe
#Gérer des constructions d'hôtes sur un hôte existant non géré
- name: "certainsvieuxserveur"
host_group: "RHEL7-Physical"
mac: "32:34:56:78:91:23"
domain: "redhat.com"
location: "Raleigh"
register_only: True
force_host_update: True
manage_host: True
Licence
Informations sur l'auteur
À propos du projet
An Ansible role to create new virtual and bare-metal hosts in Satellite 6.x.
Installer
ansible-galaxy install ahuffman.sat6_create_hosts
Licence
mit
Téléchargements
5.1k
Propriétaire