9 チャプター
54 課題

コース概要

AWS基礎コース・実践コースで手動構築したAWSリソースを、ひとつずつ丁寧にTerraform化していくコースです。

現実の現場ではゼロから楽しくTerraformで構築する機会は少なく、既存の手動構築されたインフラをどうコード化するかが鍵になります。つまり、Terraformを使う最初の一歩は terraform import であることが多く、ここでつまずくことが圧倒的に多いんです。

Cloud Praticaでは、この最も難易度の高い「既存インフラのコード化」をあえて学習初期のカリキュラムに組み込んでいます。

私自身、複数社でTerraformの導入支援を行った際、import作業を通じてTerraformへの理解が一気に深まりました。

正直、地味で根気のいる作業ではありますが、このコースを突破することでTerraformの手触り感がつき、本番環境で予期せぬ差分が出たときでも、落ち着いて対応できるようになるはずです。

学習ポイント

  • 既存AWSリソースの terraform import によるコード化
  • stateファイルの構造理解と差分の読み解き方
  • ディレクトリ構成・Module設計のベストプラクティス
  • for_each / dynamic / lookup など実践的なHCL構文
  • IAMロール・ポリシーの管理手法
  • state mv や init の使い分け
  • 本番環境で落ち着いて対応できる実力の養成
Ch.01 Terraformの世界へようこそ
01 インフラのコード化がもたらす4つの価値
02 TerraformがIaCとして優れている6つの理由
03 【資産性あり】Terraformを使いこなせると市場価値が爆上がりする理由
04 Terraformを使いこなすとは何なのか? ~ 熟練への道しるべ ~
Ch.02 Terraformの環境構築を行う
01 個人用のリポジトリの作成とGitHubの招待
02 Terraformをローカル環境でインストール
03 Terraformのバージョン管理 tenv
04 Terraformのstateファイルを管理するS3を作成
05 AWSの認証とTerraformの初期ファイルの準備
06 【深掘り】Terraformのバージョン管理を完全に理解する
07 Terraformを扱う上で必須のVSCode (Cursor) の設定
Ch.03 Terraformの必須コマンドを叩いて手触り感を持とう
01 terraform init
02 terraform plan
03 terraform apply
04 【深掘り】terraform plan実行時の内部の動きを完全に理解する
05 terraform state list, terraform state show
06 terraform state mv
07 terraform state rm
08 terraform fmt
09 Terraformコマンドのエイリアスを設定する
10 -targetオプションでターゲットを指定する
11 導入必須 terraform-tui (tftui) を使って、直感的にTerraformリソースを操作しよう
Ch.04 Terraformのmodule戦略を理解する
01 環境ごとにDRYに管理するためにmoduleが便利
02 【動画】実際にECRの定義をmodule化してみる
03 【動画】パブリックなmoduleの紹介と使い方の説明
04 【動画】Terraformの運用フレンドリーなmodule設計
Ch.05 Terraformで既存リソースをimportするノリを覚える
01 Terraform importを自由自在にできるスキルこそが本質的なTerraform力
02 【動画】既存リソースを取り込む手順の説明
03 実際にVPCをterraform importで取り込んでみる
Ch.06 terraform import特訓 Lv1
01 terraform import サブネット (module Aの出力を module Bの引数に使う)
02 terraform import インターネットゲートウェイ (ローカル変数)
03 【動画】Terraformに慣れてきた人のための爆速import術
04 【動画】terraform import ルートテーブル (for_each)
05 terraform import セキュリティグループ
06 terraform import ECR (unit module, jsonencode, validation)
07 terraform import Secrets Manager
08 terraform import SQS
09 terraform import SES
Ch.07 terraform import特訓 Lv2
01 terraform import IAMロール、IAMポリシー
02 terraform import EC2
03 terraform import RDS (lifecycle ignore_changes)
04 terraform import Certificate Manager (マルチリージョン対応、set型とlist型の違い)
Ch.08 terraform import特訓 Lv3
01 terraform import ECSクラスター
02 【動画】terraform import ECSタスク定義
03 terraform import ECSサービス
04 terraform import ECSサービス オートスケーリング (depends_on)
05 terraform import EventBridge Scheduler
Ch.09 terraform import特訓 Lv4
01 terraform import ターゲットグループ
02 terraform import ALB (httpsリスナー、リスナールール)
03 【動画】terraform import S3 (terraform-aws-modules)
04 terraform import CloudFront
05 terraform import Route 53 (dynamic、lookup、optional引数)
06 全てをTerraform化するのが正義ではない
07 Terraformのコードレビューを依頼しよう

コース突破者の声

K.N さん 受講完了

まず初めに、自分はterraformをほとんど触ったことがなく、勉強のために本を読んでも眠たくなるばかりで全く身にならず、避けていた部分がありました。ただ、入会時にterraform importコースが本当にためになるという話を聞き、これを機に克服したいという思いで受講いたしました。

T.K さん 受講完了

感動したポイントが山のようにありました!
これまでTerraform関連の書籍、記事、教材はいろいろと読み漁っていましたが、ここで納得の型が見つけられることができました。生成AIやネットで探して回っても見つからない技術の叡智が凝縮されていました。

Y.S さん 受講完了

importコースでstateファイルを意識した作業を徹底して行ったおかげでterraformに対する恐怖心が激減しました。
二ヶ月前くらいから本業でterraformを触る機会が増えたのですがimportコースに入ってから自信を持ってterraformを扱えるようになりました。

J.K さん 受講完了

今までTerraformは、インフラエンジニアやテックリードしか触れない専門的な領域だと思っていました。しかし、実際にTerraform Importを大量にこなしながら、Terraform PlanやTerraform Apply、Terraform MoveといったコマンドをGitのような感覚で扱えるようになったことで、Terraformに対する恐怖心がなくなり、大きな自信につながりました。

R.N さん 受講完了

「terraform import何それ、美味しいの?」状態から、かなり理解が深まりました。
何回も繰り返し実践したことで、秒速インポートできるようになりました。

S.Y さん 受講完了

Terraformの扱いもそうですが、Terraformコマンドで色々操作していく内に、曖昧だった各AWSリソースについての理解がどんどん深まっていき有意義でした。

K.M さん 受講完了

まず、正直な感想としてはめちゃくちゃ大変でした。特にterraform importの課題が量も多く、大変でしたね。でもその分Terraformの理解度はかなり高まったと思います!

A.T さん 受講完了

ボリュームが想像以上に膨大で、最初は「これ全部やりきれるのか…」と正直ビビっていました。
importの概念も「既存リソースをコード化? 意味わからん…」状態からのスタートで、すべてが未知の世界でした。