Azure は Microsoft が提供する様々なクラウドサービスのプラットフォームです。Amazon の AmazonWebService、Google の GoogleCloudPlatform みたいなものです。Azureは2010年から続くサービスであり、インターネット上に多くの情報が転がっています。このため昔から変わらず提供されている基幹的な部分はChatGPTに訊いても十分な答えが返ってきやすいです。
Terraformはクラウド上のもろもろを定義ファイルの様にコード化して管理でき、実際にクラウドに適用できるアプリケーションです。2014年から開発が続けられており、こちらもChatGPTでいい感じの答えが返ってきやすいです。
ChatGPTを用いて Azure と Terraform で Azure 上に仮想マシンを用意する例を紹介します。前提条件として Azure への登録は済んでいるものとしています。仮想マシンを用意するのは無料枠でも十分できます。
まずはどこから始めるかを質問しながら進めます。この時、自分がどの段階にいるかも伝えると適切な部分から始めてくれやすいです。ここでは Azure と Terraform を使えばいい感じになることは知っているので「Azure と Terraform を用意するところから初めて欲しい」と伝えました。
それなりにまとまった内容が返ってきました。初見だと分かりにくいどことどこに同じ値を設定するかなどの部分も読み取れます。とはいえこれそのままではまだ不十分です。これを解決するために都度返答を見ながら何度か注文を付けます。
注文内容
- exampleの代わりにcpoint-labを使ってください
- 日本語のコメントをつけてください
- 仮想マシンの種類はubuntu22.04にしてください
- セキュリティ上ベタ書きすべきでないものは外部ファイルから読み込むようにしてください
- 日本に配置してください
この結果が次です。
# secrets.tfvars admin_password = "YourSecurePasswordHere"
これを次のコマンドで実行します。
terraform init terraform apply -var-file="secrets.tfvars"
実行するとエラーになるので次の様にChatGPTに投げて返答をもらいます。これぐらいエラーメッセージが親切な場合はそのまま自分でも直せますが、ここでは例としてChatGPTに伝えます。一番効果を発揮するのはなんだかよくわからないけど何か詳しそうなことを言っているエラーの解決です。
これで改めて実行すると次の様に Azure 上に仮想マシンとそれに付随する一式が揃えられます。
これだけで何ができるというわけでもありませんが、あまりファイルの数や大きさが増えずインターネット上に知見の貯まっている Terraform は ChatGPT に向いた題材です。最新機能を操作するには心もとない面もありますが、Azure や Terraform をよく知らない状態から手を進めるにはとても便利です。