cybergavin.nutanix_vm_create
Nombre del Rol de Ansible - cybergavin.nutanix_vm_create
Este rol de Ansible permite la creación de una o más máquinas virtuales (VMs) en un solo clúster Nutanix.
Características
- Permite aprovisionar VMs a partir de diferentes imágenes de disco.
- Permite aprovisionar VMs en diferentes subredes.
- Genera un archivo de inventario con las direcciones IP de las VMs creadas, para su uso posterior por otros playbooks.
- Si está habilitado, monta y activa las herramientas de Nutanix en las VMs después del aprovisionamiento.
NOTA:
- Crea VMs con configuración de arranque UEFI por defecto. Esto puede ser anulado globalmente en el archivo de variables vars/main.yml.
Requisitos
- Un archivo de valores separados por comas proporcionado por el usuario que contenga las especificaciones de una o más VMs. Consulta el archivo de ejemplo files/vm.csv en el directorio del rol.
- Un archivo de variables proporcionado por el usuario que contenga valores apropiados para las variables requeridas.
Variables del Rol
- pc_cluster_fqdn # FQDN/IP para Prism Central
- cluster_name # Nombre del clúster Nutanix en el que se crearán las VMs
- vm_data_csv # Ruta y nombre relativo del archivo de valores separados por comas que contiene detalles de las VMs a desplegar
- global_debug # Ficha de depuración global (booleano)
- enable_ngt # ¿Habilitar las herramientas de Nutanix? (booleano)
- boot_type # Tipo de arranque para todas las VMs - "UEFI" (por defecto), "LEGACY" o "SECURE_BOOT"
Dependencias
Ninguna
Entorno de Pruebas:
- Ansible 2.9
- Nutanix AOS 5.15.4
- AHV 20190916.360
Ejemplo de uso después de la instalación del rol de Ansible
PASO 1: Crea un archivo vars/main.yml según el siguiente ejemplo:
pc_cluster_fqdn: "prismcentral.contoso.com" # FQDN/IP para Prism Central
cluster_name: "mynutanix" # Nombre del clúster Nutanix en el que se crearán las VMs
vm_data_csv: "files/vm.csv" # Ruta y nombre relativo del archivo de valores separados por comas que contiene detalles de las VMs a desplegar
global_debug: false # Ficha de depuración global
PASO 2: Crea un archivo files/vm.csv según el siguiente ejemplo:
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
PASO 3: Crea un archivo de playbook llamado main.yml según el siguiente ejemplo:
---
- name: Crear VMs en Nutanix AHV
hosts: localhost
connection: local
gather_facts: false
vars_prompt:
- name: prism_user
prompt: Introduce un nombre de usuario para el acceso a Prism Central
private: no
- name: prism_password
prompt: Introduce la contraseña para el usuario anterior
unsafe: yes
private: yes
tasks:
- name: Incluir variables
include_vars: dir=vars
- name: Usar el rol de Ansible cybergavin.nutanix_vm_create
include_role:
name: cybergavin.nutanix_vm_create
NOTA: En el playbook de ejemplo anterior, vars_prompt se usa para pedir al usuario las credenciales de Prism. Si optas por usar un vault para estas credenciales o aceptarlas por otros medios, asegúrate de que se almacenen en las variables prism_user y prism_password.
PASO 4: Ejecuta el playbook según el siguiente ejemplo:
ansible-playbook main.yml
NOTA:
- Se generará un archivo de inventario files/inventory que contendrá las direcciones IP de las VMs que se crearon.
- Si deseas habilitar NGT, también puedes establecer "enable_ngt: true" en vars/main.yml.
Licencia
GPLv3.0
Información del Autor
Cybergavin - https://cybergav.in - https://github.com/cybergav.in
Referencias
- Influenciado/Inspirado por el rol de Ansible mbach04.nutanix_vm_provisioner en https://github.com/mbach04/nutanix_vm_provisioner.
- El rol de Ansible mbach04.nutanix_vm_provisioner está licenciado bajo la Licencia MIT con Copyright (c) 2018 Red Hat.
Acerca del proyecto
An Ansible role for creating Nutanix VMs on a single cluster
Instalar
ansible-galaxy install cybergavin.nutanix_vm_create
Licencia
gpl-3.0
Descargas
137
Propietario