2024年3月21日に出版された「Terraform の教科書」を読んだ📕
本書は「これから Terraform に入門したいと思っている初学者」に特におすすめできる一冊だった.また本書では原著と違って,2024年1月にリリースされた Terraform v1.7.0 をベースに修正されていて,情報の鮮度が意識されているのも素晴らしかった👌
目次
- Part 1: 基礎知識
- 1章: IaC を知る
- 2章: Terraform のインストール
- Part 2: コア・コンセプト
- 3章: Terraform をはじめよう
- 4章: Terraform へのディープダイブ
- 5章: Terraform CLI
- 6章: Terraform のワークフロー
- 7章: Terraform のモジュール
- Part 3: Terraform によるインフラストラクチャの管理
- 8章: Terraform の構成ファイル
- 9章: Terraform スタックを理解する
- 10章: Terraform Cloud と Terraform Enterprise
- 付録A: Terraform 用語集
- 付録B: 解答と解説
PDF で読むなら「マイナビブックス」で購入できる👌
AWS / Google Cloud / Azure サポート
本書を読んでまず驚いたのは,Terraform を学ぶ題材として,AWS (Amazon Web Services), Google Cloud, Microsoft Azure 3種類のプロバイダーの解説をサポートしているところで,多くのトピックで3種類のサンプルコードが紹介されていた👀
これから Terraform に入門する初学者のことを考えると,もちろん仕事で使うパブリッククラウドを題材として Terraform を学べるのが1番効率が良く,例えば仕事では AWS を使っているけど,書籍では Google Cloud で紹介されていると,内容的には一般的なトピックだとしても,イメージが湧きにくかったり,読みながら挫折してしまうことにも繋がると思う.3種類のプロバイダーをサポートしているのは本書の特徴の一つだと思う❗
逆に言えば3種類の解説にページを割く必要があって,計400ページというのは本書の目次と解説のレベル感から考えると多少多いようには感じた.
認定資格サポート
本書のもう一つの特徴として,HashiCorp 公式の認定試験「HashiCorp Certified: Terraform Associate」に対応しているという点がある.今まで認定資格の対策として使えると謳った Terraform 関連書籍はなかったと思う(たぶん).
ちなみに本書の表紙には「Terraform Associate exam 対応」と書かれていて,冒頭の「本書について」では 本書は Terraform アソシエイト試験を受験しようとしている人のために作られた
と書いてある📝
そして,本書の各章末には Questions という練習問題が収録されていて,認定資格対策として使える❗
実際に僕は2023年7月に HashiCorp Certified: Terraform Associate (003) を取得しているけど,出題範囲に近く構成されているとは思った.とは言え,Terraform CLI の詳細・シークレット管理など不足してるトピックもある印象なので認定資格を受験するときは他にも対策は必要だと思う💡
Terraform Cloud と Terraform Enterprise
10章に Terraform Cloud(ちなみに2024年4月22日から HCP Terraform に改名された)と Terraform Enterprise の解説が入っているのは良かった👌また画面キャプチャも多くてイメージを掴みやすいと思う.もちろん認定試験の出題範囲に Terraform Cloud が入っているからという背景もあるとは思うけど,実際に Terraform Cloud や Terraform Enterprise を使って Terraform のワークフローを運用してるチームも多いと思うし(実際に僕も仕事では Terraform Cloud を使っている),使うとどういうメリットがあるのかを把握しておくことは重要だと思う.
また2023年5月に変更された料金プランが反映された機能比較表も載っていて素晴らしかった👏
誤植
読みながら気付いたところをまとめておく📝(サポートサイトに未掲載のもののみ)
- P.21:
古いレゴシステム
→古いレガシーシステム
(レゴシステムという言葉に馴染みがなく気になったけど実は一般的な用語?) - P.119:
ステートファイル保存する
→ステートファイルを保存する
- P.125:
チームメンバーにに
→チームメンバーに
- P.289:
Github
→GitHub
- P.316:
書かれています、
→書かれています。
あと誤植ではないけど少し気になったのは,一部のサンプルコードでリソース名にハイフンが使われていたところ.Terraform Style Guide / Google Cloud Terraform Best practices など,基本的にはリソース名の単語区切りにはアンダースコアが推奨されているため,今後 Terraform に入門する人は以下のドキュメントなどもあわせて読んでおくと良いと思う😀
詳解 Terraform 第3版
あくまで個人的な感想として,2023年11月に出版された「詳解 Terraform 第3版」との比較をまとめておく.優劣を付けたいという意味ではなく読者層の違いがあると感じた❗
まず,認定資格 HashiCorp Certified: Terraform Associate の取得を目指していたり,基礎の基礎から Terraform を学びたいという初学者には「Terraform の教科書」が良いと思う.また AWS / Google Cloud / Azure をサポートしているため,特に Google Cloud / Azure のサンプルを参考に学びたかったら「Terraform の教科書」が良いと思う💡
Terraform に関して学べる技術的なレベルの深さという観点だと「詳解 Terraform 第3版」はより実践的なので,もちろん初学者も読めるけど,中級者におすすめできると思う.また多くのサンプルコードが AWS プロバイダーを前提にしているため,仕事で AWS を使っている場合にもおすすめ.よって,「Terraform の教科書」の目次をザッと見て,ある程度わかるな〜と感じるのであれば,最初から「詳解 Terraform 第3版」を読むのが良いかなと思う👌