cybergavin.nutanix_vm_create

Ansibleロール名 - cybergavin.nutanix_vm_create

このAnsibleロールは、単一のNutanixクラスター上で1台または複数のVMを作成することを可能にします。

特徴

  • 異なるディスクイメージからのVMのプロビジョニングを許可
  • 異なるサブネット内でのVMのプロビジョニングを許可
  • 作成されたVMのIPアドレスを含むインベントリファイルを生成し、他のプレイブックで使用可能
  • 有効にすると、プロビジョニング後にVMにNutanix Guest Toolsをマウントして有効化

注意:

  • デフォルトではUEFIブート設定でVMを作成します。これは、vars/main.ymlの変数ファイルでグローバルに上書き可能です。

要件

  • ユーザーが提供した、1台以上のVMの仕様を含むカンマ区切り値ファイル。ロールディレクトリ内のサンプルファイル/files/vm.csvを参照してください。
  • ユーザーが提供した必要な変数の適切な値を含む変数ファイル。

ロール変数

  • pc_cluster_fqdn # Prism CentralのFQDN/IP
  • cluster_name # VMが作成されるNutanixクラスターの名前
  • vm_data_csv # デプロイされるVMの詳細を含むカンマ区切り値ファイルの相対パスと名前
  • global_debug # グローバルデバッグフラグ (boolean)
  • enable_ngt # Nutanix Guest Toolsを有効にしますか? (boolean)
  • boot_type # すべてのVMのブートタイプ - "UEFI" (デフォルト)、"LEGACY" または "SECURE_BOOT"

依存関係

なし

テスト環境:

  • Ansible 2.9
  • Nutanix AOS 5.15.4
  • AHV 20190916.360

インストール後の使用例

ステップ 1: 次の例に従ってvars/main.ymlファイルを作成します。

pc_cluster_fqdn: "prismcentral.contoso.com"   # Prism CentralのFQDN/IP
cluster_name: "mynutanix"                     # VMが作成されるNutanixクラスターの名前
vm_data_csv: "files/vm.csv"                   # デプロイされるVMの詳細を含むカンマ区切り値ファイルの相対パスと名前
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-20480

ステップ 3: 次の例に従ってプレイブックmain.ymlファイルを作成します。

---
- name: Nutanix AHV上にVMを作成する
  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_userprism_password変数に保存してください。

ステップ 4: 次の例に従ってプレイブックを実行します。

ansible-playbook main.yml

注意:

  • 作成されたVMのIPアドレスを含むインベントリファイルfiles/inventoryが生成されます。
  • NGTを有効にしたい場合は、vars/main.ymlに"enable_ngt: true"を設定することもできます。

ライセンス

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は、Copyright (c) 2018 Red HatのMITライセンスでライセンスされています。
プロジェクトについて

An Ansible role for creating Nutanix VMs on a single cluster

インストール
ansible-galaxy install cybergavin.nutanix_vm_create
ライセンス
gpl-3.0
ダウンロード
137
所有者