ヤマムギ

growing hard days.

*

Developers Summit 2024「AWS CDK×サーバレスアーキテクチャを極める」を見ました

   

株式会社Works Human Intelligence Product Div.Advanced Technology Dept.HCI Grp.HCI
恋塚 大さん
齋藤 康生さん

AWS CDKとServerless Framwworkの比較

AWS CDK

  • 数種類の言語でシンプルに記述
  • AWS公式
  • ローカル開発環境への知見が少ない

Serverless Framwwork

  • プラグインによるローカル開発環境が簡単に構築できる
  • シンプルにサーバーレスリソースを記述できる
  • CloudFormationライク

サーバーレスアーキテクチャ

フロントエンド: S3、CloudFront
バックエンド: API Gateway、Lambda、DyanmoDB
ETL: Glue、Lambda

CDKはTypeScript。

理想のローカル開発環境

フロントエンド、APIまでをローカルで完結できるのが理想。
cdk synth→sam build→sam local start-apiでローカルテストを実行。
sam buildは–parallelオプションで並列化。
DynamoDB Localを起動。
自作スクリプトでDynamoDB Localへテーブルを作成。

課題と解決

sam local start-apiがFn::GetAttに対応していなかったのでネストしているスタックで困った。
→CDKでローカル実行かどうかを判定してローカルのみの処理を追加して対応した。

Docker Lambdaを素早く起動するためにProvisioned Concurrencyを使用した。

AWSテスト環境
→各開発者向けにステージというプレフィックスをつけたスタックを作成するようにした。
各リソースにもステージプレフィックスがつくようにして、リソース名競合を解決している。

感想

DynamoDBテーブルの作成にPythonから生成したJSONを–cli-input-jsonでCLIを実行していたり、様々な工夫をされてプロダクトや組織にとって必要なCI/CDを実現されていました。
ステージ環境の開発者ごとの変数プレフィックスは、リソース名の重複も防げる上に誰の環境のリソースかも一目でわかるので良いなあと思いました。
参考にさせていただきます。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - event, study

ad

ad

  関連記事

EC-CUBE3.0 コードリーディング勉強会第1回目に行ってきました

EC-CUBE3.0 コードリーディング勉強会第1回目に行ってきました。 ECサ …

「MasterCloud-Alexa makes the world a better place-」で登壇しました

クラウド全体を扱う勉強会MasterCloudのAlexaの会で登壇してきました …

「Kubernetes(k8s)導入とその後」を聞きにCTO Meetupというイベントに来ました

CTOではないのですが、参加者要項に「Kubernetesを知りたいエンジニア」 …

MonotaRO TechTalk #4「データ分析」に行ってきました

本日の一杯目。MonotaRO TechTalk #4「データ分析」もちろん呑み …

「XP祭り in 関西 2016 〜アジャイル15周年ふりかえり〜」に行ってきました

「XP祭り in 関西 2016 〜アジャイル15周年ふりかえり〜」に行ってきま …

「JAWS-UG Osaka AWSデビューするなら大阪から!大阪リージョン触ろうの会」に参加しました

3/2に大阪リージョンがオープンしたことを受けて、大阪リージョンでサーバーレスア …

ヤマムギvol.28でIAMロール、クロスアカウントアクセス、AWS SSOのデモをしました

全半はIAMロールを作成して、マネジメントコンソール、CLI、SDKからそれぞれ …

「コミュニティリーダーズサミット in 高知 2022初鰹編」に参加しました

「コミュニティリーダーズサミット in 高知 2022初鰹編」に現地参加してきま …

「Fin-JAWS 第25回 ~Go to Fin-JAWS School! 2022~」で発表しました

「Fin-JAWS 第25回 ~Go to Fin-JAWS School! 2 …

サバワさんとAlexa(Alexa Day 2019でのブログ)

ランチタイムセッション2本目はサーバーワークスさん。 以下は、気になったことのメ …