スキップしてメイン コンテンツに移動

Terraformのど基本 - その2

はじめに

前回の「Terraformのど基本 - その1」ではTerraformのど基本としてその概要に迫ってみた。Terraformあると良さそうだなぁ。というのを少しでも感じて頂ければ取り敢えずはOK。

今回は「Terraformのど基本 - その2」になるのだが、では実際にどういう流れでコーディングしていけば良いかについて、まずはその流れから見てきたいと思う。

まずは基本的な流れから

Terraformを使用していくにあたって、まずはよく使う基本のコマンドから紹介。これらのコマンドは特に重要なので使い方をここでしっかり理解しておいて欲しい。

  • terraform init
  • terraform plan
  • terraform apply
では早速それぞれのコマンドについて解説していく。

terraform init

現在のディレクトリ内のTerraform関連ファイル(main.tfなど)を元に必要なモジュールのダウンロードを行い.terraformというディレクトリ内に保存を行う。

ちなみにこちらのコマンドを誤って複数回実行しても特に問題はない。

詳しくはドキュメントのCommand: initを参照。

terraform plan

このコマンドは実際にterraformにて設定を適用した場合に(terraform applyした場合に)変更点はどこにあるのかの差分の確認を行う。

このコマンドをapply前に叩くことで、適用前に事前に変更差分を確認出来るので、同じ開発チーム内でも変更差分を共有できる等のメリットがある。

詳しくはドキュメントのCommand: planを参照。

terraform apply

このコマンドはもうお分かりの通りterraform planした結果を実際に反映させる。

実はこのコマンドを実際に実行させると分かるのだが、実際に実行する前にきちんと変更差分を教えてくれるようになっている。

プロンプトにより実際に適用してOKか否かでOKして初めて適用される仕様となっている。

ちなみに-auto-approveを付与することでプロンプトによる承認無く適用させることも可能だが、特段の理由が無い限りはこのオプションは付けない方が無難であろう。

詳しくはドキュメントのCommand: applyを参照。

まとめ

いかがだっただろうか?コマンドに関しては至ってシンプルであまり迷うところも特に無いハズ。

要は初期化して、ドライランして適用するというよくある一般的な流れと同等と考えてもらえれば良いかと思う。

続いてはこれらのコマンドを使って実際に簡単なサンプルを作りながら、AWSの場合を例に「EC2インスタンスを立ち上げ、そして破棄」までの一連の流れを見ていく。

P. S. 
この記事に関する内容の誤りや改善提案などございましたら随時お待ちしております。

コメント