nutanix_vm_create

Имя роли Ansible - cybergavin.nutanix_vm_create

Эта роль ansible позволяет создавать одну или несколько виртуальных машин (VM) на едином кластере Nutanix.

Особенности

  • Позволяет развертывать виртуальные машины из различных образов дисков.
  • Позволяет развертывать виртуальные машины в разных подсетях.
  • Генерирует файл инвентаризации с IP-адресами созданных виртуальных машин для дальнейшего использования другими плейбуками.
  • При включении монтирует и активирует инструменты Nutanix Guest Tools на виртуальных машинах после их развертывания.

ПРИМЕЧАНИЕ:

  • Виртуальные машины создаются с конфигурацией загрузки UEFI по умолчанию. Это можно переопределить глобально в файле vars/main.yml.

Требования

  • Файл с записями значений, предоставленный пользователем, содержащий спецификации одной или нескольких виртуальных машин. Смотрите пример в files/vm.csv в директории роли.
  • Файл переменных, предоставленный пользователем, содержащий соответствующие значения для необходимых переменных.

Переменные роли

  • pc_cluster_fqdn # FQDN/IP для Prism Central
  • cluster_name # Имя кластера Nutanix, на котором будут созданы ВМ
  • vm_data_csv # Относительный путь и имя файла с запятыми, содержащего данные о развертываемых ВМ
  • global_debug # Глобальный флаг отладки (булевый)
  • enable_ngt # Включить инструменты Nutanix Guest Tools? (булевый)
  • boot_type # Тип загрузки для всех ВМ - "UEFI" (по умолчанию), "LEGACY" или "SECURE_BOOT"

Зависимости

Нет

Тестируемая среда:

  • Ansible 2.9
  • Nutanix AOS 5.15.4
  • AHV 20190916.360

Пример использования после установки роли ansible

ШАГ 1: Создайте файл vars/main.yml по следующему примеру:

pc_cluster_fqdn: "prismcentral.contoso.com"   # FQDN/IP для Prism Central
cluster_name: "mynutanix"                     # Имя кластера Nutanix, на котором будут созданы ВМ
vm_data_csv: "files/vm.csv"                   # Относительный путь и имя файла с запятыми, содержащего данные о развертываемых ВМ
global_debug: false                           # Глобальный флаг отладки

ШАГ 2: Создайте файл files/vm.csv по следующему примеру:

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

ШАГ 3: Создайте плейбук main.yml по следующему примеру:

---
- name: Создать ВМ на Nutanix AHV
  hosts: localhost
  connection: local
  gather_facts: false
  vars_prompt:
    - name: prism_user
      prompt: Введите имя пользователя для доступа к Prism Central
      private: no
    - name: prism_password
      prompt: Введите пароль для вышеуказанного пользователя
      unsafe: yes
      private: yes
  tasks:
    - name: Включить переменные
      include_vars: dir=vars
    - name: Использовать роль ansible cybergavin.nutanix_vm_create
      include_role:
        name: cybergavin.nutanix_vm_create

ПРИМЕЧАНИЕ: В приведенном выше примере плейбука используется vars_prompt для запроса у пользователя учетных данных Prism. Если вы решите использовать хранилище для этих учетных данных или принять их другим способом, убедитесь, что они хранятся в переменных prism_user и prism_password.

ШАГ 4: Выполните плейбук по следующему примеру:

ansible-playbook main.yml

ПРИМЕЧАНИЕ:

  • Будет сгенерирован файл инвентаризации files/inventory, содержащий IP-адреса созданных ВМ.
  • Если вы хотите включить NGT, вы также можете установить "enable_ngt: true" в vars/main.yml.

Лицензия

GPLv3.0

Информация об авторе

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

Ссылки

  • Вдохновлено/под влиянием роли Ansible mbach04.nutanix_vm_provisioner по адресу https://github.com/mbach04/nutanix_vm_provisioner.
  • Роль ansible mbach04.nutanix_vm_provisioner лицензирована под лицензией MIT с авторским правом (c) 2018 Red Hat.
О проекте

An Ansible role for creating Nutanix VMs on a single cluster

Установить
ansible-galaxy install cybergavin/nutanix_vm_create
Лицензия
gpl-3.0
Загрузки
123
Владелец