Terraform
AlibabaCloudにおけるTerraformの実践例を記載します。 本章はゴールとなる構成図、完成像からTerraformを使ってリソースを作成します。 この実践例は初心者でもわかりやすいようにモジュールは非使用、main.tf
、variables.tf
、output.tf
、confing.tfvars
、provisioning.sh
の4つのファイルに分けて作成します。(kubernetesなど一部例外もありますし、provisioning.sh
が空白の事例もあります。またTerraformはリソースごとにimmutable
とnot_immutable
で分けてフォルダ・ファイル構成をするのが理想ですが、ここは同フォルダにて同様配置を前提とします。)
このサンプルで実行したTerraformのバージョンはTerraform v0.11.13
、tfenv 0.6.0
になります。Terraformのバージョン情報は以下の記事を参照ください。
https://www.sbcloud.co.jp/help/best-practice/terraform/02/install/index.html
実践例の実行方法の流れとしては、実行したいコードを空のディレクトリに保存(格納)し、コードを実行するだけです。なので他のプロジェクトの実行ファイル.tf
と混ざらないように注意してください。
コードを実行するときは confing.tfvars
にて各自の個人情報を入力してください。
access_key = "xxxxxxxxxxxxxxxxx"
secret_key = "xxxxxxxxxxxxxxxxx"
あとは以下のコマンドで実行できます。
terraform init
terraform play -var-file="confing.tfvars"
terraform apply -var-file="confing.tfvars"
もし作成したリソースを削除、解放したい場合は、諸元となるソースコードを一切変更せずに このコマンドを実行します。これで作成したリソースを破棄できます。
terraform destroy -var-file="confing.tfvars"
それではTerraformを使って誰でも簡単にAlibabaCloudによるリソース作成をしてみましょう。
- SSH踏み台サーバの作成 Terraformを用いて、Alibaba Cloud上でssh踏み台サーバの作成方法を紹介します。
- SLBの構築 Terraformを用いて、Alibaba Cloud上でSLBを作成します。
- RDSの構築 Terraformを用いて、Alibaba Cloud上でRDSを作成します。
- Kubernetesの構築と設定 Terraformを用いて、Alibaba Cloud上でkubernetesを作成します。
- Webアプリケーションの構築 Terraformを用いて、Alibaba Cloud上でWebアプリケーションの構築します。
- 高速コンテンツ配信の実現 Terraformを用いて、Alibaba Cloud上で高速コンテンツ配信可能なWebアプリケーションの構築します。
- オートスケーリングの実現 Terraformを用いて、Alibaba Cloud上でオートスケーリングの作成方法を紹介します。
- KubernetesによるコンテナでWordPress作成 Terraformを用いて、Alibaba Cloud上でKubernetesによるWordPress作成方法を紹介します。