会員登録すると
学習することができます。
会員登録する(無料)
登録済みの方はこちら
ログイン

stateの役割 ― Terraformが何を覚えているかと、stateを守る理由を説明する

目安学習時間 20分

課題

全問正解でレクチャー完了です。

【問題1】

何もバックエンドを設定していない構成で apply したとき、state が保存される場所として正しいものはどれですか。

[選択肢]

【問題2】

変数に sensitive = true を付けたときの、state の中の値の説明として正しいものはどれですか。

[選択肢]
会員登録すると
学習することができます。
会員登録する(無料)

学ぶ目的

state とは

state は、設定ファイルに書いたリソースと、実際にクラウド上にあるものを結び付ける記録です。Terraform は state を見て「この設定のサーバは、クラウド上のこのサーバだ」と分かります。

state が要る理由

  • 対応付け … 設定の名前と、実際の ID を結び付ける
  • 差分を出す … 設定・state・実際のインフラを比べて、plan を作る
  • 依存関係の記録 … 設定から消えたものを、どの順番で消すかを判断する

既定の保存場所

何も設定しないと、state は作業ディレクトリの terraform.tfstate に JSON で保存されます(ローカルバックエンド)。1つ前の state は terraform.tfstate.backup に残ります。

state を守る

  • 直接編集しない … 変えるときは terraform state のコマンドを使う
  • 秘密が入る … パスワードなどの値も、平文で入ることがある。sensitive を付けても state には残る
  • 共有の仕方に注意 … バージョン管理に入れると、秘密がもれたり、同時に変えて壊したりする

チームで使うための置き場所(リモートバックエンド)とロックは、パート2で扱います。

このレクチャーで学ぶこと

  • state が結び付けているもの
  • state が要る3つの理由
  • 既定の保存場所(terraform.tfstate)とバックアップ
  • state を直接編集しない理由と、秘密情報の扱い

質問

まだ質問は投稿されていません。

質問投稿

ログイン後に質問の投稿ができます。