Terraform

AlibabaCloudにおけるTerraformの実践例を記載します。

  本章はゴールとなる構成図、完成像からTerraformを使ってリソースを作成します。 この実践例は初心者でもわかりやすいようにモジュールは非使用、main.tfvariables.tfoutput.tfconfing.tfvarsprovisioning.shの4つのファイルに分けて作成します。(kubernetesなど一部例外もありますし、provisioning.shが空白の事例もあります。またTerraformはリソースごとにimmutablenot_immutableで分けてフォルダ・ファイル構成をするのが理想ですが、ここは同フォルダにて同様配置を前提とします。)

このサンプルで実行したTerraformのバージョンはTerraform v0.11.13tfenv 0.6.0になります。Terraformのバージョン情報は以下の記事を参照ください。

https://sbcloud.github.io/help/best-practice/devops/terraform/02/install/


実践例の実行方法の流れとしては、実行したいコードを空のディレクトリに保存(格納)し、コードを実行するだけです。なので他のプロジェクトの実行ファイル.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によるリソース作成をしてみましょう。