AWS CDK Conference Japan を開催しました

吉田真吾です。

もうひと月前になりますが、AWS CDK Conference Japan という AWS CDKのカンファレンスイベントを開催しました。

jawsug.connpass.com

事前登録705名となり、ひさしぶりに少し人数の多いイベントとなりました。


www.youtube.com

togetter.com

AWS CDK はプログラミング言語でAWSインフラのリソースを定義することが可能なライブラリ群とコマンドラインツールの集合です。

昨年末にライブラリが1つに統合されたバージョン2がGAし、本日時点(5/2(月))で v2.22.0 になってます。Lambda Function URLs なども素早くL2コンストラクトに対応し、ベターな初期値で定義するなら非常に非常に簡単に少ないコードで複数サービスのリソースを定義することが可能です。

2011年にCloudFormationがリリースされて以降、JSONで構造化してリソースを定義することに慣れ、自分のインフラリソースを緻密に設定できるだけでなく、初心者でもプロが作った構成と同じリソースをそのまま作ることができることで一気に知の高速道路が整備されました。

さらに2014年に Terraform がリリースされると、ベターな初期値とYAMLにより見やすく構造化・変数化された定義によりわれわれはインフラをつねに意図した記述通りに冪等な状態で担保するための生産性を向上しました。Terraformにより、YAMLで必要な設定を構造化し、ステートを内部管理するスタイルが、われわれの直感や認知能力(忘れっぽさ)にとってちょうど良いリソースの定義方法であると認知され、いまや多くのインフラの保守に利用されています。

Terraformも当初はtfstateですべてのリソースのステート(現在状態)を管理する方式でしたが、とあるバージョンからCloudFormationのインタープリタとしての側面を強化し、管理方法を進化させました。このCloudFormationのインタープリタという概念がAWSのリソース管理の強力なロバスト性を活用しながら、tfstateでさらにメンテナンス性も向上させる機構として働くという良いとこどりを実現するベストプラクティスになっていると感じ、構造の扱いやすさもあいまって開発者の間でTerraformの人気が不動になったという流れだったと記憶しています。

そして2年ほど前から、普段利用しているプログラミング言語でAWSリソースを定義可能な野心的なツールがリリースされ、AWSからもCDKというプロジェクトがリリースされます。ベターな初期値で非常に簡潔な記述で定義可能なL2コンストラクトや、ベストプラクティスなサービスの組み合わせを簡潔に定義可能なL3コンストラクトにより、大幅に簡潔さが向上されることにより、今まさにさらなるゆとりと、厳密な定義「も」可能な万能さの両立を含めて AWS CDK は注目されているのです。

ということで AWS CDK はまさに今から盛り上がりを見せるところです。カンファレンスではすでにCDKリリース当初からさまざまなチャレンジをしてきた先進的なユーザーの事例が発表されました。カンファレンス終了後には、コミュニティの支部運営体制も発足し、6/1(水)には第1回目の勉強会が開催されます。

jawsug-cdk.connpass.com

乗るしかない このビッグウェーブに