/var/log/study

つまり雑記

vSphereでterraformする時のポイント

VMを立てるだけならばvagrantでも良い気がするし、色々設定するならAnsibleで事足りている.

が、仮想基盤に対してリソースを用意するための適切なツールを利用する意味で、terraformを利用してみる

入門自体は以下

dev.classmethod.jp

公式ドキュメントのvSpherプロバイダページ

www.terraform.io

ポイント

  1. providerの箇所には allow_unverified_ssl = true 記述すること
    • vSpher providerのドキュメントをパクっていくと分かる
    • vCenterあるあるの証明書の話し
  2. resource "vsphere_virtual_machine" には skip_customization = true を記述すること
    • terraformを利用すると、作成したいVMのOS上の設定までいじれるらしい
    • ただ、vSphere で利用すると vsphere_virtual_machine.es: Customization of the guest operating system というエラーが出る
    • redhat系とdebian系がダメって言うなら普通はスキップする設定にしておいたほうが無難そう
  3. いつまでたっても apply が終了しない
    • 何やら、 network_interface の項目に, labelしか記述しないと正常に終了しないらしい?
      • customizationがいじれないのに、これ以上何を記述したら良いのか (´・_・`)
    • 問題のissueは以下 github.com
    • とりあえずぶち切っても大丈夫そう

所感

  • ドキュメントを見る感じ、出来ること
    • フォルダを作る
    • VMを作成
      • VMを作るための素(新しくisoからなのか、templateからなのか)
      • ネットワークの指定
  • Ansibleとの比較
    • playbookとroleとAPIでゴリゴリ設定できるAnsibleのほうが、自由度が高く出来ることも多い
      • ポートグループを作るとか
      • NSXと連携してDFWを当てるとか
    • 正直terraformのvsphereプロバイダだと…
    • ただ、オープンソースなのでコードを書いて貢献しろと言われると確かに… と言う話し
  • HCL
    • www.terraform.io
    • 使い込んでないけどYAMLより良いと思う
      • なんとなくレベルの話し