🐏

レポート|AWS CDK Conference 2024 #cdkconf2024

2024/07/09に公開

はじめに

7/6(土)AWS CDK Conference 2024 参加レポートです。現地参加しました!

https://jawsug-cdk.connpass.com/event/317921/

究極の人見知りと口下手で交流はなにもできませんでしたが(何やってるの)、X で呟き続けていたら何人かの方と繋がることができたので次回はお話できることを目標にします。頑張ってほしい、未来の自分。

それにしても、新しい情報と経験者ならではの知識の放出を目の当たりにして、わかるな〜という思いや初めて知ったな〜という思いによる脳と気持ちの震えに、楽しさと嬉しさを感じて仕方なかったです。心地よい好奇心のくすぐりを感じます。運営の皆様、登壇者の皆様、本当にありがとうございました!

オープニングは和やかに

CDK 支部の部長さんによるオープニングトーク。
部長さんの緩やかな空気すごく好きなんですよね。本日も和やかな雰囲気で開会しました。さすがです。

opening
(緊張のため唯一撮影できたスライド(何やってるの))

これまで、昨年のカンファレンスや定期の LT 会・ディスカッションで話された CDK Tips を(さりげなく)社内の開発環境に取り入れてきました。私自身、1 年 CDK を使ってきてなかなか悩みも増えてきたところで、今回は興味のあるタイトルがずらりと並んでいたのでまさにというところです。

そして今回はなんとコントリビュートや自作コンストラクトなど、OSS に繋がる話題も盛りだくさん。このような形で知見ある方々と直に面することができるコミュニティに感謝です。私もできることから貢献していきたい気持ちです。

なんと豪華なワークショップ

オープニングが終わったところで、ワークショップに参加のため別室へ向かいます。
そうです。今回は初カンファレンス参加にして、初ワークショップ参加。
極度の人見知りが一歩を踏み出したということです。補欠繰り上がり参加、大歓喜。
https://jawsug-cdk.connpass.com/event/322480/

いつも CDK 支部でお名前を聞くゆっきーさん、HERO 後藤さん、クライヤーさんが近くにいらっしゃって「この方達が...ホワワ」とそわそわしていたのは今だから言えます。ホワそわしていないで話しかけなさいという感じですね。それはそう。

これまで AWS CDK 使ってきたし、これからも使うし、もっと使うだけじゃなくて何かしらコントリビュートしたい...と思いつつも、なかなか何をどのようにすればいいのか分からない人にとって最適なワークショップでした。内容を一つ一つ丁寧に説明してくださるのですんなり理解も進んでいきます。

最初はゆっきーさんの説明により、環境の準備から。
今回参加者の開発環境を合わせるために、CloudFormation テンプレートで開発環境を準備してくださっていました。手厚くて震えます。その際 EC2 に EC2 Instance Connect Endpoint で接続したり、VSCode Server を立ち上げたりと、初めての経験も多々。開発環境セットアップから学ばせていただきました。要復習です。

続いて後藤さん、クライヤーさんによるコントリビュートの説明とワーク。
aws-cdk ライブラリの構成から、コントリビュートの方法、テストの方法、PR の作成方法、PR 作成で走る CI の内容まで。丁寧に作り込まれたドキュメントでわかりやすく、詰まることもありません。準備に時間をかけてくださったんだなあと感じます。

ワークショップ用に開発環境や PR 作成の環境まで用意してくださいました。感謝のオンパレードです。実際にコードを触り、PR も作成します。楽しい。あっという間の 2 時間でした。
https://github.com/jaws-ug-cdk/aws-cdk-for-workshop

特にインテグレーションテストについては初めて知ったものでした。
作ってテストして削除する。これは弊社環境にも取り入れたいところです。

https://aws.amazon.com/jp/blogs/news/how-to-write-and-execute-integration-tests-for-aws-cdk-applications/

CDK コントリビュートについては、過去 CDK 支部の皆様の記事スライドがいくつかありますので、こちらも改めて拝読しようと思います。

https://speakerdeck.com/tomoki10/how-to-aws-cdk-contribute
https://speakerdeck.com/gotok365/aws-cdk-contribution-tips

さて、私へ。本日のワークショップも経て、コントリビュートの準備は万端ではないでしょうか?
すでにコントリビュートしている受講者の方もいらっしゃるようです。頑張ろう。

濃密すぎるセッションタイム

そしてセッション聴講へ。
途中雷鳴の轟による雰囲気も抜群で、それもいと趣深いといったところでしょう。

ワークショップのため聴けなかった前半セッションも気になるタイトルがいっぱいです。隙を見て配信を見返そうと思います。

https://www.youtube.com/watch?v=sc3PVTV0fp0

後半セッションも、タイトルからしてどれもとても興味深いものでした。少しずつコメントさせていただきます。

”AWS CDK を選定しなかった理由”から見る CDK の現在地 @_watany さん

https://speakerdeck.com/watany/do-we-need-cdk

つい最近弊社でも CDK を選定しないことあったなぁと感じながら、開発から運用チームへの引き継ぎコストや、技術にコストをかけられない運用チームの実態など、うんうんわかる...と頷かせていただきました。
発表では CloudFormation を採用ということでしたが、一方で私は CDK しか使えないのでそれはそれでリスクなのかなぁと感じたりしました。
あれもこれも身につけたいけど時間がないですね..。とりあえず一極集中でいくべきなのかしら。

AWS CDK コンストラクトの分割戦略: レベル指向プラクティスの実践 @WinterYukky さん

https://speakerdeck.com/winteryukky/aws-cdk-construct-partition-strategy-implementing-level-oriented-practice

まさに今スタック分割やコンストラクト分割で迷い始めている最中にいました。ドンピシャです。
CDK アプリケーションを構成する上で、L2 レベルのコンストラクト を作ることであったり、デザインガイドラインからコード構成を考えることであったり、新しい観点を得ることができました。

https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md

ゆっきーさんが講じてくださったレベル指向プラクティス、ぜひ取り入れてみたい。
そんな中、何より印象的だったのは「CDK 好きが収まらず勢い余って AWS へ入社」というパワーワード。一体勢い余るとは。会場と X がどよめいた瞬間です。強すぎる。

App Staging Synthesizer に入門する @skrirdev さん

既存 Bootstrap モジュールの課題を解決し置き換えることを目指している開発中モジュールのお話でした。こちら本当に興味深かったです。聴いてて心臓が小躍りするのを感じました。
内容としては現在 Bootstrap ではアプリのアセットを共有の S3・ECR にアップロードしているものを、アプリ毎にできるようにする。そうすることでアプリ間のリソース分離を図るというものです。

入門にあたって Bootstrap の仕組みなど、 Security And Safety Dev Guide の内容も説明してくださいました。

https://github.com/aws/aws-cdk/wiki/Security-And-Safety-Dev-Guide

こちらのドキュメント、最近お客様環境へデプロイするために最小権限は何かねと参照したばかりでした。あ〜分かる〜となりながらも Synthesizer の詳細は読み飛ばしてしまっていたので、その点もとても勉強になりました。もう少し深く復習しようと思います。

ちなみに App Staging Synthesizer について少し検索すると、去年の 10 月に AWS ブログへの投稿がありました。あとで読もう。
https://aws.amazon.com/jp/blogs/devops/enhancing-resource-isolation-in-aws-cdk-with-the-app-staging-synthesizer/

今こそ始める、CDK コンストラクトライブラリ開発 ― 入門から実践まで @tmokmss さん

https://speakerdeck.com/tmokmss/jin-kososhi-meru-cdkkonsutorakutoraiburarikai-fa-ru-men-karashi-jian-made

Projen ってなぁに、jsii ってなぁに...というはてな状態から聞き入りましたが、なんとかついていくことができたと思います。多分。いや、怪しいかも。要復習です。ですがすごくコアなお話をされていたことをひしひしと感じました。便利ツール・効率化だいすき人間としてはここまでいけるようになりたい気持ちです。
ワークショップでもお話があった integ-runner についても言及がありました。
途中紹介されていた記事は以下です。まだまだ知らない世界があるんだなぁ。

https://qiita.com/hayao_k/items/194dfb051f18a38b6dbd
https://aws.amazon.com/jp/blogs/news/getting-started-with-projen-and-aws-cdk/

大規模ドラレコデータ収集・機械学習基盤を支える AWS CDK 〜導入・運用事例紹介〜 @PEmugi2 さん

GO の会社の方によるセッション。スタック数が数十〜百と多いにも関わらず、特に困ったことがないという、それはすごいと感じた時間でした。
機械学習ならではでしょうか、検証パターンに応じて複数の QA 環境を用意することについても新しく知る世界だあと感じつつ聴いておりました。

学びとなったのは良い点としてあげていたことで、
一つが 「CDK を含む CI/CD を最初に作成する」 こと。
CI/CD を最初に作成すること、CDK に限らずなんとなくそうだなと感じていましたが、文字に起こすと改めて確かにぃと感じました。
もう一つが 「Makefile を使用する」 こと。
context の指定コマンドなど、ちょっとしたタイプミスで動かない、なんてことがよくあります。Makefile 使うの確かにいいなと感じました。取り入れよう。

AWS CDK における「再利用性」を考える @365_step_tech さん

https://speakerdeck.com/gotok365/aws-cdk-reusability

HERO 後藤さんによるトリ。実装ポイントいっぱい書いてくださって本当にヒーローだなと思いました。ご自身の経験から Tips として公開してくださること、本当にありがたいです。
現状弊社の実装状況としては、スタック内に全てを詰め込んでいてコンストラクトをうまく活用できていないな〜と感じているので、実装ポイント踏まえてコードの構成を見直したいところです。とはいえ、どのように活用すべきか未だ理解が曖昧かも...と感じている自分もいます。いろんな CDK コードを見て吸収していきたいなと思います。

過去の記事も読むぞう。
https://aws.amazon.com/jp/builders-flash/202406/cdk-validation/
https://speakerdeck.com/gotok365/aws-dev-day-cdk-gof-design-patterns

おわりに

最後はクロージングと写真撮影。なんと今年は昨年より約 100 人もの参加者増だそうです。コミュニティが発展していく様子を見るのは心躍りますね。
みんなの集合写真はどこかに公開されているのかしら。見つけられていないだけかしら。欲しいなぁ..。

aws
撮影した 2 枚のうちの 2 枚目

所用で懇親会は参加できませんでしたが、次回こそは、と思います。
積極的にイベントに参加してお話しできたらいいなぁ。そのためにたくさん CDK 触ろう。

最後に、思いの丈はここまでで書き尽くした感じもしますが、改めて感謝の気持ちを。
運営の皆様、登壇者の皆様、CDK を深く学ぶ機会をいただきありがとうございました。心より楽しかったです!私も 1 ユーザとして、CDK も、コミュニティも盛り上げられるように活動していきたいと思います。

まとめ

人見知りは克服しましょう。

Discussion