MAAAAAAAAS!
MAAS(Metal as a Service)チョー便利。もう離せません
ESXiもMAASで物理サーバーにプロビジョニングできるということは
あんなことやこんなことも自動化できるわけですね。
https://maas.io/tutorials/maas-esxi-quickstart#1-overview
にあるオフィシャルな情報からESXiを試しにデプロイしてみたわけですが、
挫折したものもあったので記録して残します。
※深夜のテンションなのでお見苦しい点もあるかと思いますが・・・
環境
ESXi用のイメージを作りには物理サーバーがよい。
packerがqemuを使っているのですが、MAAS のイメージビルド環境をVMware上で実行すると
Qemu stderr: qemu-system-x86_64: CPU model 'host' requires KVM
で失敗します。
KVM仮想マシンなら行けるのでしょうが、物理サーバーで行ったところ無事できました。
材料
- VMware ESXi ISO
- VMware社からダウンロード
- VMware-VMvisor-Installer-7.0U3b-18905247.x86_64.iso
- /home/ubuntuに置きました
- Packer
- https://www.packer.io/downloads
- Linux上にインストールします
- Packer-maas
- https://github.com/canonical/packer-maas
- /home/ubuntuでgit cloneします
必要パッケージのインストール
apt package
$ sudo apt install -y maas qemu-system-x86 xorriso python3-pip
packer
$ curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
$ sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
$ sudo apt-get update && sudo apt-get install packer
packer maas templateのダウンロード
$ git clone https://github.com/canonical/packer-maas.git
$ cd packer-maas/vmware-esxi/
imageのビルド
$ sudo modprobe nbd
$ sudo packer build -var 'vmware_esxi_iso_path=/home/ubuntu/VMware-VMvisor-Installer-7.0U3b-18905247.x86_64.iso' vmware-esxi.json
MAASへログイン
※事前にAPI Keyを取得しておく
http://{MAAS-IP}:5240/MAAS/r/account/prefs/api-keys
$ maas login admin http://{MAAS-IP}:5240/MAAS/
API key (leave empty for anonymous access):
You are now logged in to the MAAS server at
http://{MAAS-IP}:5240/MAAS/api/2.0/ with the profile name
'admin'.
For help with the available commands, try:
maas admin --help
imageのアップロード
$ sudo chown ubuntu:ubuntu vmware-esxi.dd.gz
$ maas admin boot-resources create name='esxi/7.0u3' title='VMware ESXi 7.0U3' architecture='amd64/generic' filetype='ddgz' content@=vmware-esxi.dd.gz
ふえてる!
http://{MAAS-IP}:5240/MAAS/r/images
Deploy & login
デプロイはMAASの通常デプロイで一発でインストールできました。
ESXiのWeb画面はMAASでデプロイされたノードのネットワーク・インターフェースのIPアドレスへ接続するだけで入れます。
UserID | Password |
---|---|
root | password123! |