ahuffman.sat6_create_hosts
ahuffman.sat6_create_hosts
Eine Ansible-Rolle zum Erstellen neuer virtueller und physischer Hosts in Satellite 6.x. Version 2 der Satellite6 API ist erforderlich.
Rollenvariablen
Variablenname | Erforderlich | Beschreibung | Typ | Standard |
---|---|---|---|---|
sat6_fqdn | ja | Vollqualifizierter Domänenname des Satellite 6 Hosts. | string | "" |
sat6_user | ja | Benutzername des Satellite 6 Benutzers, der Zugriff hat, um neue Hosts zu erstellen. | string | "" |
sat6_pass | ja | Passwort des Satellite 6 Benutzers, der Zugriff hat, um neue Hosts zu erstellen. Dies sollte zur Sicherheit verschlüsselt werden. | string | "" |
sat6_organization | ja | Satellite6-Organisation, in der die Hosts erstellt werden, die in sat6_hosts definiert sind. |
string | "" |
sat6_fail_on_existing | nein | Fehler bei der Playbook-Ausführung, wenn einer der in sat6_hosts definierten Hosts bereits in Satellite6 existiert. Nützlich, wenn Benachrichtigungen in Ansible Tower verwendet werden und man im Falle eines Fehlers benachrichtigt werden möchte. Wahr bedeutet Fehler, wenn ein Host existiert, Falsch bedeutet nur eine Zusammenfassung ausgeben und ermöglicht ein idempotentes Ausführen. (d.h. man kann das Playbook immer wieder ausführen und es werden nur Hosts erstellt, die nicht existieren) |
boolean | Falsch |
sat6_power_on_delay | nein | Sekunden, um die Erstellungsaktion einer neuen virtuellen Maschine und das Einschalten zu verzögern (um potenzielle Rennbedingungen zu vermeiden, während die VM im externen System erstellt wird) | integer | 30 |
sat6_hosts | ja | Satellite 6 Hosts, die erstellt werden sollen | Liste von Wörterbüchern | [] |
sat6_hosts
Wörterbuchfelder - Allgemein
Felder, die für die Erstellung physischer oder virtueller Hosts verwendet werden können.
Feldname | Erforderlich | Beschreibung | Typ |
---|---|---|---|
name | ja | Hostname des zu erstellenden Hosts | string |
comment | nein | Ein Kommentar, der in den zusätzlichen Informationen des Hosts angezeigt wird. Eine kurze Beschreibung, wofür der Host dient. | string |
domain | nein | Name der Satellite6-Domain, mit der der Host erstellt werden soll. Nicht erforderlich, wenn die Standard-Domain der Host-Gruppe verwendet werden soll; andernfalls überschreibt dies die Standard-Domain der Host-Gruppe. | string |
host_group | ja | Name der Satellite6 Host-Gruppe, mit der der neue Host erstellt werden soll. Wenn Host-Gruppen geschachtelt werden, wäre dies der Hostgruppenname in der Form hostgroup1/hostgroup2/hostgroup3 , auch bekannt als title in der API. |
string |
ipv4 | nein | IPv4-Adresse, die dem Host zugewiesen werden soll. Nicht erforderlich, wenn die Host-Gruppe so konfiguriert ist, dass sie eine IPv4-Adresse über ipam oder dhcp vorschlägt. | string |
location | ja | Name des Standorts in Satellite6, an dem der Host bereitgestellt wird. | string |
partition_table | nein | Name der Satellite6-Partitionstabelle, mit der der Host erstellt werden soll. Nicht erforderlich, wenn die Standardpartitionstabelle der Host-Gruppe übernommen werden soll. | string |
subnet | nein | Name des Satellite6-Subnets, mit dem der Host erstellt werden soll. Nicht erforderlich, wenn die Standard-Subnet der Host-Gruppe übernommen werden soll. | string |
parameters | nein | Liste zusätzlicher, hostspezifischer Parameter von Satellite6, die für den Host festgelegt werden sollen. Dies ist nützlich bei nachträglichen Bereitstellungsaufgaben und wenn man bedingte Werte basierend auf diesen Werten verwenden möchte. | Liste von Wörterbüchern |
register_only | nein | Ob nur der Host-Eintrag in Satellite6 erstellt werden soll (im Gegensatz zu tatsächlicher Bereitstellung und Einschalten) (Standard ist Falsch). Funktionalität hinzugefügt für andere Anwendungsfälle als die Bereitstellung (z.B. Client-Registrierung mit angegebenem Standort). Wenn diese Methode zur Host-Erstellung verwendet wird, müssen Rechenressourcen und Profile angegeben werden, da sie nicht von der Host-Gruppe abgefragt werden. | boolean |
manage_host | nein | Wenn register_only: True und force_host_update: True verwendet werden, wird der Build-Zyklus des Hosts von Satellite6 verwaltet. Standard ist Falsch . |
|
force_host_update | nein | Wenn register_only: True verwendet wird, wird der Satellite6-Host auf die angegebenen Optionen aktualisiert. Standard ist Falsch . |
boolean |
provision_method | nein | Bereitstellungsmethode build oder image . Standard ist build |
string |
sat6_hosts
Wörterbuchfelder - Virtual
Feldname | Erforderlich | Beschreibung | Typ |
---|---|---|---|
compute_profile | nein | Name des Satellite6-Rechenprofils, mit dem der Host bereitgestellt werden soll. Wenn nicht angegeben, wird das Standardprofil der Host-Gruppe verwendet. | string |
compute_resource | ja | Name der Satellite6-Rechenressource, auf der der Host bereitgestellt werden soll. | string |
sat6_hosts
Wörterbuchfelder - Physisch
Feldname | Erforderlich | Beschreibung | Typ |
---|---|---|---|
mac | ja | MAC-Adresse des physischen Hosts, den Sie bereitstellen möchten. | string |
sat6_hosts.parameters
Wörterbuchfelder
Feldname | Erforderlich | Beschreibung | Typ |
---|---|---|---|
name | ja | Name des zu erstellenden Parameters | string |
value | ja | Wert des zu erstellenden Parameters | string |
Debugging
Um die vollständige Debugging-Ausgabe anzuzeigen, erhöhen Sie die Detailgenauigkeit auf 1 (ausführlich) in Ansible Tower oder fügen Sie ein einzelnes -v
in Ansible Core/Engine hinzu.
Beispiel-Playbook
---
- name: "ahuffman.sat6_create_hosts Beispiel-Playbook"
hosts: "localhost"
vars_files:
- "vars/myvaultedsecrets.yml"
tasks:
- name: "Bereitstellung von Satellite 6 Hosts"
include_role:
name: "ahuffman.sat6_create_hosts"
vars:
sat6_fqdn: "mysat6server.mydomain.com"
sat6_user: "mysat6admin"
#sat6_pass: "dies wird in der vars/myvaultedsecrets.yml-Datei festgelegt"
sat6_organization: "meine Organisation"
sat6_fail_on_existing: True
#Es wird empfohlen, sat6_hosts als extra_variable zu übergeben, aber Sie können
#sat6_fail_on_existing: False festlegen, um das Playbook idempotenter auszuführen, falls Sie
#alle sat6 Hosts, die Sie in der Quellkontrolle erstellen, verfolgen möchten.
sat6_hosts:
#VM
- name: "meine-neue-vm"
host_group: "RHEL7-Virtual"
location: "Raleigh"
ipv4: "192.168.122.24"
domain: "redhat.com"
comment: "Webserver für die coole neue Webseite"
compute_resource: "vsphere.vmware.com" #Dies ist der Name Ihrer Rechenressource
compute_profile: "3-Groß"
parameters:
- name: "build_type"
value: "httpd"
#Bare-metal
- name: "meine-neue-bare-metal"
host_group: "RHEL7-Physical"
location: "Raleigh"
ipv4: "192.168.122.25"
domain: "redhat.com"
comment: "Datenbankserver"
mac: "12:34:56:78:91:23"
#Nur registrieren (d.h. nur erstellen)
- name: "host1"
host_group: "RHEL7-Virtual"
location: "Raleigh"
ipv4: "192.168.122.26"
domain: "redhat.com"
comment: "Vorregistrierung des Host-Eintrags"
register_only: True
#Aktualisierung eines bestehenden Hosts (entschuldigen Sie den schwachen Witz)
- name: "meine-neue-vm"
host_group: "RHEL7-Virtual"
location: "Armonk"
ipv4: "192.168.122.24"
comment: "Migrierte Q3"
domain: "ibm.com"
parameters:
- name: "build_type"
value: "ihs"
register_only: True # bedeutet, dass keine Bereitstellung versucht wird
force_host_update: True # Host aktualisieren, wenn er existiert
#Verwalten von Host-Bauten (Bereitstellung) bei derzeit nicht verwalteten vorhandenen Hosts
- name: "irgendeinalterserver"
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
Lizenz
Autor Informationen
Über das Projekt
An Ansible role to create new virtual and bare-metal hosts in Satellite 6.x.
Installieren
ansible-galaxy install ahuffman.sat6_create_hosts
Lizenz
mit
Downloads
5.1k
Besitzer