Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS CDK for Terraform 入門してみた

AWS CDK for Terraform 入門してみた

JAWS-UG青森 2022 Autumn登壇資料

Yuki_Kurono

October 30, 2022
Tweet

More Decks by Yuki_Kurono

Other Decks in Technology

Transcript

  1. AWS CDK for Terraform
    入門してみた
    黒野 雄稀 | 2022/10/29
    1
    For

    View Slide

  2. AWS CDK for Terraform
    入門してみた
    2

    View Slide

  3. AWS CDK for Terraform
    入門してみた
    3
    CDK for Terraform on AWS
    入門してみた

    View Slide

  4. 自己紹介
    黒野 雄稀 Yuki Kurono
    kurono_98
    kurono
    アイレット株式会社 所属 
    普段はインフラ設計・構築や運用構築に従事
    2022 APN ALL AWS Certifications Engineers
    4

    View Slide

  5. 5
    名古屋

    View Slide

  6. 6
    片道:4時間半
    名古屋→青森

    View Slide

  7. 7
    CDK for Terraform?
    なにそれ美味しいの?

    View Slide

  8. 8
    どうせ生のHCLで書いたほうが楽
    なんでしょ?
    私の心

    View Slide

  9. もう一人の自分が囁きます
    9
    私の心 私の心2
    まずやってみろよ

    View Slide

  10. 10
    CDK for Terraformとは 1
    CDK for Terraform (CDKTF)は2020年からHashiCorp社とAWS CDKチームによって
    共同開発が進められており、2022/8/12にGAされました。
    https://aws.amazon.com/jp/blogs/news/cdk-for-terraform-on-aws-jp/

    View Slide

  11. 11
    CDK for Terraformとは 2

    View Slide

  12. 12
    ● aws cliのセットアップが完了していること
    ● cdktf cliをインストールしていること
    ○ Terraform ver1.1以上
    ○ Node.js ver16以上
    事前準備

    View Slide

  13. 13
    セットアップ
    プロバイダー
    インストール
    デプロイ
    実行までのコマンド

    View Slide

  14. 14
    今回作成した構成

    View Slide

  15. 実行結果(create)

    View Slide

  16. 実行結果(replace)

    View Slide

  17. 実行結果

    View Slide

  18. 18
    いつかミスりそうな・・
    デプロイ 削除

    View Slide

  19. 19
    記述量
    HCL
    ● 約350行
    CDK for Terraform
    ● 約380行
    ほぼほぼ、変わりはないけど、
    HCLのがちょっと短い

    View Slide

  20. 20
    イケてると思うところ
    ▶ 慣れてるプログラミング言語で記述できる
    ▶ Terraformとほぼ同じ書き心地で記述できる
    ▶ cdktf deployでterraform initも実行してくれる
    ▶ watchコマンド

    View Slide

  21. 21
    watchコマンド
    ▶ コマンド実行後、ファイルに修正すると変更を検知し、
      自動でデプロイが走る
    ▶ ちょっと変更したいときとかにめちゃくちゃ良い

    View Slide

  22. 22
    惜しいなと思うところ
    ▶ 慣れたプログラミング言語で記述できるのが売りだけれども、
      ドキュメントがまだ不十分
     ▶TypeScript以外は書いている人も少なめ
    ▶ 純粋なTerraformと比較してdeployまでの実行時間は少し遅め
     ▶エラーが出るまでにも時間が掛かるので辛いところもある
    ▶細かいリソースの制御が難しい

    View Slide

  23. 23
    まずはやってみてはどうでしょう
    残念そうなところだけを比べがち(これは私だけかも)
    →やってみたら面白いじゃん

    View Slide

  24. 24
    どうせ生のHCLで書いたほうが楽
    なんでしょ?
    私の心

    View Slide

  25. 25
    生のHCLで書いたほうが楽だった
    けどね。
    やってみた
    後の私の心

    View Slide