Anúncio

Provisioning Nutanix VMs with Terraform

14 de Nov de 2019
Anúncio

Mais conteúdo relacionado

Apresentações para você(20)

Similar a Provisioning Nutanix VMs with Terraform(20)

Anúncio

Último(20)

Provisioning Nutanix VMs with Terraform

  1. 株式会社ネットワールド SI技術本部 ソリューションアーキテクト課 合言葉は「JUST DEPLOY」 - Provisioning Nutanix VMs with Terraform - Nutanix Meetup #47 海野 航
  2. 2Copyright © 2019 Networld Corporation All Rights Reserved. もくじ • 自己紹介 • Terraform • 帰ってすぐできる! Terraform でプロビジョニング • まとめとか
  3. Copyright © 2019 Networld Corporation All Rights Reserved. 自己紹介
  4. 4Copyright © 2019 Networld Corporation All Rights Reserved. あんた誰 海野 航 (うんの わたる) Twitter : @UnnoWataru クレカと旅行の話が多い ネットワールド っていう会社で ソリューションアーキテクトをやってます Citrix Future of Work 2019 で登壇しますので 万が一 VDI に興味があればレジストをお願いします
  5. 5Copyright © 2019 Networld Corporation All Rights Reserved. あんた誰
  6. Copyright © 2019 Networld Corporation All Rights Reserved. Terraform
  7. 7Copyright © 2019 Networld Corporation All Rights Reserved. Terraform の前に Infrastructure as Code のメリット 出典 : [iMagazine] Infrastructure as Codeの留意点とメリット サーバー更改プロジェクトへの適用で得られた知見・実感 https://www.imagazine.co.jp/infrastructure-as-codeの留意点とメリット%E3%80%80~サーバー更改プロ/
  8. 8Copyright © 2019 Networld Corporation All Rights Reserved. Terraform とは 再利用可能な ソースコードとして インフラの構成を 定義する 多様なインフラを ワークフローを 変えることなく 導入する 出典 : Azure 上の HashiCorp Terraform https://azure.microsoft.com/ja-jp/solutions/devops/terraform/ 出典 : Terraformで超サクッとループで リソースを用意する方法 https://dev.classmethod.jp/cloud/ aws/terraform-network-variable/
  9. 9Copyright © 2019 Networld Corporation All Rights Reserved. Terraform だけでいろんな環境のデプロイができるぞ! ACME Cloudflare GitHub Local OVH Spotinst Akamai CloudScale.ch GitLab Logentries Packet StatusCake Alibaba Cloud CloudStack Google Cloud Platform LogicMonitor PagerDuty TelefonicaOpenCloud Archive Cobbler Grafana Mailgun Palo Alto Networks Template Arukas Consul Gridscale MongoDB Atlas PostgreSQL TencentCloud Avi Vantage Datadog Hedvig MySQL PowerDNS Terraform Aviatrix DigitalOcean Helm Naver Cloud ProfitBricks Terraform Cloud AWS DNS Heroku Netlify Pureport TLS Azure DNSimple Hetzner Cloud New Relic RabbitMQ Triton Azure Active Directory DNSMadeEasy HTTP Nomad Rancher UCloud Azure Stack Docker HuaweiCloud NS1 Rancher2 UltraDNS A10 Networks Dome9 HuaweiCloudStack Null Random Vault Bitbucket Dyn Icinga2 Nutanix RightScale Venafi Brightbox Exoscale Ignition 1&1 Rundeck VMware NSX-T CenturyLinkCloud External InfluxDB OpenStack RunScope VMware vCloud Director Chef F5 BIG-IP JDCloud OpenTelekomCloud Scaleway VMware vRA7 CherryServers Fastly Kubernetes OpsGenie Selectel VMware vSphere Circonus FlexibleEngine LaunchDarkly Oracle Cloud Infrastructure SignalFx Vultr Cisco ASA FortiOS Librato Oracle Cloud Platform Skytap Yandex Cisco ACI Genymotion Linode Oracle Public Cloud SoftLayer 出典 : HashiCorp Terraform Providers https://www.terraform.io/docs/providers/index.html
  10. 10Copyright © 2019 Networld Corporation All Rights Reserved. Terraform はデプロイするだけなら帰ってすぐできるぞ!
  11. Copyright © 2019 Networld Corporation All Rights Reserved. 帰ってすぐできる! Terraform でプロビジョニング
  12. 12Copyright © 2019 Networld Corporation All Rights Reserved. 注意事項 今回紹介する内容について、 Nutanix 様 ならびに HashiCorp 様 では ノンサポートです それに、もともと OSS 版の Terraform は コミュニティサポート ( Terraform のサポートが必要な場合は Enterprise Edition を!) なぜなら、本当は Prism Element ではなく Prism Central が必要だからです 個人的に聞かれたら できるだけがんばります
  13. 13Copyright © 2019 Networld Corporation All Rights Reserved. 仮想マシン デプロイまでの流れ 仮想マシンのディスクイメージ化 UUID の確認 ( クラスター / ネットワーク / ディスクイメージ ) Terraform のインストール例 コードの作成 Terraform の実行 ( INIT / PLAN / APPLY )
  14. 14Copyright © 2019 Networld Corporation All Rights Reserved. 今回のゴール • Terraform を使って仮想マシンを コード でデプロイする
  15. 15Copyright © 2019 Networld Corporation All Rights Reserved. 仮想マシンのディスクイメージ化 • Terraform を使ってプロビジョニングしたい仮想マシンの テンプレート を ディスクイメージ に変換します image.create <target-img> image_type=kDiskImage clone_from_vmdisk=vm:<taget-vm>:scsi.0 ここでは <unnow-win2016template> という仮想マシンを <unnow_win2016_img> というイメージに変換しようとしている 参考ブログ : NTNX>日記 VM から Acropolis Image Service のディスクイメージを作成する。 http://blog.ntnx.jp/entry/2017/05/06/133123
  16. 16Copyright © 2019 Networld Corporation All Rights Reserved. UUID の確認 • AHVクラスターのUUID
  17. 17Copyright © 2019 Networld Corporation All Rights Reserved. UUID の確認 • ネットワークの UUID : net.list • ディスクイメージの UUID : image.list <0> という名前のネットワークに接続させたい <unnow_win2016_img> を使いたい
  18. 18Copyright © 2019 Networld Corporation All Rights Reserved. Terraform のインストール例 (Windows 環境) • Terraform のダウンロード https://www.terraform.io/ からダウンロード
  19. 19Copyright © 2019 Networld Corporation All Rights Reserved. Terraform のインストール例 (Windows 環境) • 展開して生成されたフォルダーを任意の場所に配置
  20. 20Copyright © 2019 Networld Corporation All Rights Reserved. Terraform のインストール例 (Windows 環境) • 環境変数 Path の設定
  21. 21Copyright © 2019 Networld Corporation All Rights Reserved. Terraform のインストール例 (Windows 環境) • 動作確認 : コマンドプロンプトから “terraform -version”
  22. 22Copyright © 2019 Networld Corporation All Rights Reserved. コードの作成 • GitHub から [ main.tf ] と [ terraform.tfvars ] をコピペ https://github.com/unnowataru/terraform-nutanix-sample
  23. 23Copyright © 2019 Networld Corporation All Rights Reserved. コードの作成 • 任意のフォルダーに [ main.tf ] と [ terraform.tfvars ] をコピペして新規作成 https://github.com/unnowataru/terraform-nutanix-sample
  24. 24Copyright © 2019 Networld Corporation All Rights Reserved. コードの作成 • terraform.tfvars のパラメータを各環境固有のものに置き換える
  25. 25Copyright © 2019 Networld Corporation All Rights Reserved. Terraform INIT • コマンドプロンプトにて main.tf と terraform.tfvars を 配置したフォルダーに移動して “terraform init” を実行
  26. 26Copyright © 2019 Networld Corporation All Rights Reserved. Terraform INIT • “terraform init” を実行すると、Nutanixのプロバイダーに応じた プラグインが自動的にダウンロードされる
  27. 27Copyright © 2019 Networld Corporation All Rights Reserved. Terraform PLAN • コマンドプロンプトにて “terraform plan” を実行 • 特に問題がなければ”terraform apply”が実行可能な状態に遷移
  28. 28Copyright © 2019 Networld Corporation All Rights Reserved. Terraform APPLY • コマンドプロンプトにて “terraform apply” を実行
  29. 29Copyright © 2019 Networld Corporation All Rights Reserved. Terraform APPLY • デプロイ完了
  30. 30Copyright © 2019 Networld Corporation All Rights Reserved. ワンカットの DEMO VIDEO (4分ぐらい)
  31. Copyright © 2019 Networld Corporation All Rights Reserved. まとめとか & 謝辞
  32. 32Copyright © 2019 Networld Corporation All Rights Reserved. Terraform はデプロイするだけなら帰ってすぐできるぞ!
  33. 33Copyright © 2019 Networld Corporation All Rights Reserved. まとめとか (初出情報多い) • 今回の Terraform 前提条件 ₋Windows 10 バージョン 1903 ₋Terraform 0.12.14 ₋Nutanix AOS 5.10.6 / AHV 20170830.279 ₋今回は Prism Element に直接接続 (サポート対象外) • オレの GitHub リポジトリ ₋https://github.com/unnowataru/terraform-nutanix-sample https://github.com/terraform-providers/terraform-provider-nutanix/blob/master/examples/main.tf
Anúncio