Skip to content

Instantly share code, notes, and snippets.

@gowatana
Last active March 28, 2021 07:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gowatana/34faf19a455ef14672acc15517d1a65b to your computer and use it in GitHub Desktop.
Save gowatana/34faf19a455ef14672acc15517d1a65b to your computer and use it in GitHub Desktop.
Nutanix AHV の Custom Script(Cloud-Init)で Terraform がインストールされた VM を作成する。
#cloud-config
disable_root: true
ssh_pwauth: true
package_upgrade: false
users:
- name: nutanix
lock-passwd: false
passwd: $6$oDzrtJla$rMzS0vuH95Q2PjDgqVOsI30MqAYemPK5Y9uYsSpeQWd99R4hqm/JWoJqH4Y81SlbtTMkglp243leccceKNZ9h.
sudo: ALL=(ALL) NOPASSWD:ALL
packages:
- git
- unzip
- epel-release
runcmd:
- yum install -y jq
- mkdir -p /home/nutanix/bin
- curl -LO https://releases.hashicorp.com/terraform/0.14.9/terraform_0.14.9_linux_amd64.zip
- unzip terraform_0.14.9_linux_amd64.zip -d /home/nutanix/bin/
- echo 'complete -C /home/nutanix/bin/terraform terraform' >> /home/nutanix/.bashrc
- chown -R nutanix:nutanix /home/nutanix/bin
@gowatana
Copy link
Author

gowatana commented Mar 28, 2021

Terraform VM 作成自動化くん

Nutanix AHV の Custom Script(Cloud-Init)で Terraform がインストールされた VM を作成する。

事前準備

  • Prism で、イメージ サービスに CentOS-7-x86_64-GenericCloud-2009.qcow2 を登録しておく。
  • Prism で、nw-vlan-11 ネットワークを、IPAM 有効で作成しておく。
    • Terraform インストールでインターネット接続するので、デフォルトゲートウェイや DNS サーバ設定も必要。

VM 作成例

  • CVM に SSH ログインして実行する。

VM を作成して、パワーオンする。

$ VMNAME=lab-vm-01
$ acli uhura.vm.create_with_customize $VMNAME num_vcpus=1 memory=2G cloudinit_userdata_path=https://gist.githubusercontent.com/gowatana/34faf19a455ef14672acc15517d1a65b/raw/terraform-centos7-vm.yml
$ acli vm.disk_create $VMNAME clone_from_image=CentOS-7-x86_64-GenericCloud-2009.qcow2
$ acli vm.nic_create $VMNAME network=nw-vlan-11
$ acli vm.on $VMNAME

IP アドレスは AOS の IPAM による DHCP 自動設定なので、下記のコマンドか Prism などから確認する。

$ acli vm.nic_list $VMNAME

VM が起動したら下記で SSH ログインする。

  • ユーザ: nutanix
  • パスワード: nutanix/4u

Terraform が利用可能なはず。

$ terraform version
Terraform v0.14.9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment