19-1 設計図を文章で書く(Terraform とは)
新しい店を出すとき、前の店を建てた職人の記憶だけが頼りだと、同じ店はもう建ちません。柱の位置も棚の高さも、覚えている人がいなくなれば終わりです。設計図が紙に残っていれば、何度でも同じ店が建ちます。
第 1 章からここまで、いま読んでいるこのサイト(Cloudflare Lab)の設定は、画面を開いて手で作ってきました。電話帳の行、棚の決まり書、検問の紙。どれも画面の上には残っていますが、「どこを何の順に触ったか」はどこにも残っていません。
同じ店をもう一度建てるには、手順ではなく完成した姿を文章にしておく必要があります。この節では、その文章を書く道具を見ます。
Learning goals
この節でできるようになること
- Terraform がどんな道具かを日常語で説明できる
- 手で作るのと文章で書くのとの違いを三つ言える
- Terraform を手元に入れる流れを言える
- 設計図と手作業を混ぜてはいけない理由を説明できる
1. 欲しい状態を文章で書く
Section titled “1. 欲しい状態を文章で書く”職人に「こう直して」と口で頼むと、その場は直りますが、次に同じ物を作るときは頼み直しになります。設計図なら、渡すだけで同じ物が建ちます。
Cloudflare では、この設計図を書く道具として Terraform を使います。公式は Terraform を、HashiCorp の「Infrastructure as Code」の道具だと説明しています。日本語にすれば「設備を文章(コード)で書く」という考え方です。
実物では、Cloudflare が用意した Terraform provider を通して、Cloudflare のネットワークを、ほかの設備を自動で用意するのと同じ道具で扱えます。手順を並べるのではなく、完成した姿を書くのが特徴です。
左が文章で書いた設計図、右が実際の店です。道具の仕事は、右を左に合わせることだけです。
つまり、Terraform は「こうなっていてほしい」を文章で書き、そのとおりにする道具です。
2. 手で作るのとの違い
Section titled “2. 手で作るのとの違い”手で作った設定は、作った本人の記憶の中にしかありません。誰がいつ何を変えたのか、後から確かめる方法がありません。
公式は、設定を文章にすると三つのことができると説明しています。GitHub のような置き場に設定そのものを保存できること、時間をまたいで変更を追い、版を付けられること、そして必要なときに前の状態へ戻せること(roll back)です。
さらに公式は、これらを Cloudflare の API を直接使わずに行える、とも書いています。文章を書き換えて道具に渡すだけで、店の側が追いついてきます。
左は記憶頼みの手作業、右は文章の設計図です。右には、いつ誰が何を変えたかが行として残ります。
つまり、文章にする値打ちは、保存・追跡・巻き戻しの三つです。
3. 道具を手元に入れる
Section titled “3. 道具を手元に入れる”新しい道具を使うには、まず道具箱に入れます。Terraform は部品の寄せ集めではなく、公式の言い方では single binary file、つまり 1 つの実行ファイルとして配られます。
macOS で最も簡単なのは Homebrew を使う方法だと公式は説明しています。次の 2 行は「配布元を登録して、そこから Terraform を入れる」という命令です。読めなくても大丈夫です。
brew tap hashicorp/tapbrew install hashicorp/tap/terraform入ったかどうかは、版を尋ねる命令で確かめます。公式の例では、次のように版の番号が返ってきます。
terraform version道具箱に細長い道具が 1 本増えます。中身が 1 つなので、入れる手順も短くて済みます。
つまり、Terraform を入れるのは配布元の登録と本体の取得の 2 手で終わります。
4. 混ぜて触らない
Section titled “4. 混ぜて触らない”設計図で建てた店を、後から誰かが図面を見ずに改装すると、図面と実物が食い違います。次に図面どおり建て直すと、その改装は消えます。
公式もこの点を強く注意しています。Terraform は設定の状態を自分で持っており、同じ設定を Terraform と Cloudflare の Dashboard や API の両方から変えると、その状態が壊れることがあるという注意書きです。
実物では、Terraform に任せた設定は Terraform だけで触る、と決めます。どちらで触ったか分からない設定が一つでもあると、以降の差分がすべて疑わしくなります。
つまり、扱う口は一つに決めます。
Cloudflare Lab での使われ方
Section titled “Cloudflare Lab での使われ方”ここで紹介した設計図が、いま読んでいる Cloudflare Lab でどう使われるかを見ます。
Cloudflare Lab は第 1 章から第 18 章まで、画面を開いて手で設定してきました。この章では、そのうち電話帳の行と棚の決まり書を、文章の設計図に書き直す予定です。実装と実測(書き直した設定の数、最初に走らせた結果)は、実装後に追記します。
つまずきやすいところ
Section titled “つまずきやすいところ”この節のまとめ
Section titled “この節のまとめ”- Terraform は、欲しい状態を文章で書き、そのとおりにする道具です。
- 文章にすると、保存・変更の追跡・巻き戻しができます。
- Terraform に任せた設定は、画面から触らずに Terraform だけで扱います。
この節で出てきた言葉を、つながりの順に並べると次のようになります。
図のラベル: 手で作った設定 再現できない / 欲しい状態を文章で書く Terraform / 設備を文章で書く考え方 Infrastructure as Code / 置き場に保存する GitHub / 変更を追う・前へ戻す roll back / 触る口は一つに決める Dashboard と混ぜない
次の節では、この設計図を実際にどう書くのかを見ます。
この節のチェック
© 2026 osdse