cybergavin.nutanix_vm_create

Ansible-Rollenname - cybergavin.nutanix_vm_create

Diese Ansible-Rolle ermöglicht die Erstellung von ein oder mehreren VMs auf einem einzelnen Nutanix-Cluster.

Funktionen

  • Ermöglicht die Bereitstellung von VMs aus verschiedenen Festplatten-Images
  • Ermöglicht die Bereitstellung von VMs in unterschiedlichen Subnetzen
  • Generiert eine Inventar-Datei mit den IP-Adressen der erstellten VMs, die für spätere Verwendung durch andere Playbooks genutzt werden kann
  • Falls aktiviert, mountet und aktiviert die Nutanix Guest Tools auf den VMs nach der Bereitstellung.

HINWEIS:

  • Erstellt VMs standardmäßig mit UEFI-Bootkonfiguration. Dies kann global in der Datei vars/main.yml überschrieben werden.

Anforderungen

  • Eine vom Benutzer bereitgestellte CSV-Datei, die die Spezifikationen von ein oder mehreren VMs enthält. Siehe die Beispiel-Datei files/vm.csv im Rollenverzeichnis.
  • Eine vom Benutzer bereitgestellte Variablen-Datei mit passenden Werten für erforderliche Variablen.

Rollenspezifische Variablen

  • pc_cluster_fqdn # FQDN/IP für Prism Central
  • cluster_name # Name des Nutanix-Clusters, auf dem die VMs erstellt werden
  • vm_data_csv # Relativer Pfad und Name der CSV-Datei mit den Details der einzurichtenden VMs
  • global_debug # Globaler Debug-Flag (boolean)
  • enable_ngt # Nutanix Guest Tools aktivieren? (boolean)
  • boot_type # Boot-Typ für alle VMs - "UEFI" (Standard), "LEGACY" oder "SECURE_BOOT"

Abhängigkeiten

Keine

Getestete Umgebung:

  • Ansible 2.9
  • Nutanix AOS 5.15.4
  • AHV 20190916.360

Beispielhafte Verwendung nach der Installation der Ansible-Rolle

SCHRITT 1: Erstellen Sie eine vars/main.yml-Datei gemäß folgendem Beispiel:

pc_cluster_fqdn: "prismcentral.contoso.com"   # FQDN/IP für Prism Central
cluster_name: "mynutanix"                     # Name des Nutanix-Clusters, auf dem die VMs erstellt werden
vm_data_csv: "files/vm.csv"                   # Relativer Pfad und Name der CSV-Datei mit den Details der einzurichtenden VMs
global_debug: false                           # Globaler Debug-Flag

SCHRITT 2: Erstellen Sie eine files/vm.csv-Datei gemäß folgendem Beispiel:

vm_name,ip,subnet_name,image_name,num_vcpu,memory_mib,disk_list_mib
testvm,10.1.1.10,webnet,rhel8-image,2,4096,10240-20480

SCHRITT 3: Erstellen Sie eine Playbook-Datei main.yml gemäß folgendem Beispiel:

---
- name: VMs auf Nutanix AHV erstellen
  hosts: localhost
  connection: local
  gather_facts: false
  vars_prompt:
    - name: prism_user
      prompt: Geben Sie einen Benutzernamen für den Zugriff auf Prism Central ein
      private: no
    - name: prism_password
      prompt: Geben Sie das Passwort für den oben genannten Benutzer ein
      unsafe: yes
      private: yes
  tasks:
    - name: Variablen einfügen
      include_vars: dir=vars
    - name: Verwende Ansible-Rolle cybergavin.nutanix_vm_create
      include_role:
        name: cybergavin.nutanix_vm_create

HINWEIS: Im obigen Beispiel-Playbook wird vars_prompt verwendet, um den Benutzer nach den Prism-Anmeldeinformationen zu fragen. Wenn Sie ein Vault für diese Anmeldeinformationen verwenden oder sie auf andere Weise akzeptieren, stellen Sie sicher, dass sie in den Variablen prism_user und prism_password gespeichert werden.

SCHRITT 4: Führen Sie das Playbook gemäß folgendem Beispiel aus:

ansible-playbook main.yml

HINWEIS:

  • Eine Inventar-Datei files/inventory wird erstellt, die die IP-Adressen der erstellten VMs enthält.
  • Wenn Sie NGT aktivieren möchten, können Sie auch "enable_ngt: true" in vars/main.yml setzen.

Lizenz

GPLv3.0

Autoreninformationen

Cybergavin - https://cybergav.in - https://github.com/cybergav.in

Referenzen

  • Beeinflusst/Inspirierung durch die Ansible-Rolle mbach04.nutanix_vm_provisioner unter https://github.com/mbach04/nutanix_vm_provisioner.
  • Die Ansible-Rolle mbach04.nutanix_vm_provisioner ist unter der MIT-Lizenz mit Urheberrecht (c) 2018 Red Hat lizenziert.
Über das Projekt

An Ansible role for creating Nutanix VMs on a single cluster

Installieren
ansible-galaxy install cybergavin.nutanix_vm_create
GitHub Repository
Lizenz
gpl-3.0
Downloads
137
Besitzer