こんにちは!岡本です。
ハンズオンイベントに参加してきましたのでレポート記事と学んだことを少し紹介させていただきます。
この記事は、どんなイベントだったんだろう?という方から、AWSを活用したSaaS開発に興味があるエンジニアや、マルチテナント構成を検討している開発者・アーキテクトの方に向けて書いています。
この記事だけで設計をすべて学べるわけではないですがキャッチアップの取っ掛かりになれば幸いです。
イベントの雰囲気だけ気になる!という方は適宜読み飛ばしてもらえればと思います。
今回は、JAWS-UG京都支部 × KyotoLT共催のハンズオンイベントに参加し、AWS CDKを使ったアプリケーション構築や、SaaS Builder Toolkit for AWSの実践的な活用について学んできました。
本記事では、その内容をセクションごとに整理して紹介します。とくに「SaaSの構築・運用をどこから始めれば良いかわからない」という方にとって、SBTは非常に有用性のあるツールキットです。
昨年10月に参加したAWS GameDayの懇親会で名刺交換させていただいた
本イベントの登壇者でもある方からお声がけいただきました。
内容は
でした。
とても密度の高い内容で、特にSaaSをこれから設計・構築する方にとって、多くの学びがあるイベントでした。
また、ハンズオン用として$25分のAWSクレジットも配布されました。ありがたい!
AWS CDKを使ってアプリケーションをデプロイしてみようというものでした。
ハンズオンではCreate/Readができるシンプルなサーバーレスアプリケーションのデプロイでした。
SageMaker StudioでCode Editorを作成してアプリケーションのgitをクローンして cdk deployするだけ!
これで上図のアプリケーションがデプロイされました。
動作確認は作成されたAPI GatewayのAPIキーを使ってcurlでDBへのデータ投入と参照を行いました。
↑の記事の著者でもあるAWS 櫻谷さんが解説してくださいました。
今回のイベントの内容を網羅しておりこの記事でも学ぶことができます。
さて、AWS CDKを使ってアプリケーションを構築する流れを体験した後は、「本格的なSaaS構築では何が必要か?」という次のステップへ移りました。
ここで紹介されたのが、SaaS Builder Toolkit for AWS(SBT)です。
SBTは、AWS上でSaaSアーキテクチャを設計・運用するための開発者向けツールキットで、特に以下のような方におすすめです:
GitHub:SaaS Builder Toolkit for AWS
次のセクションである「AWS CDKで実際にSaaSシステムを構築」ハンズオンでもこのSBTが使用されています。
SBTはSaaSに求められる多くの機能をあらかじめテンプレート化しており、以下のような特徴を備えています
SaaSにおいて「誰がどのテナントにアクセスできるか」という認可設計は非常に重要です。SBTではこの点もサポートしています。
いよいよサンプルSaaSシステムの構築です!
※このサンプルをデプロイすると約1,000円/日かかるそうなので注意です。
環境構築はCDKハンズオンと同様にSageMaker StudioのCode Editorから行いました。
ハンズオンに使用したアプリケーション:Amazon ECS SaaS リファレンスアーキテクチャ
今回作成するシステム構成図
引用:Amazon ECS SaaS リファレンスアーキテクチャ
前提としてマルチテナントSaaSの概念と設計を理解するため
別日に「AWSを活用したマルチテナントSaaSの設計と実践~座学編~」を開催されています。
岡本は都合が合わず座学編には参加できませんでしたが事前に資料も展開いただいていたのである程度理解してから"実践編"に臨むことができました。
引用:AWS におけるマルチテナント SaaS の実装パターン
特に問題なく構築でき、ホストされているWeb画面からテナントの登録や参照で動作確認ができました。
構築中(約40分ほど)に"座学編"の振り返りも入れながら構成図に出てくる設計上の概念などを丁寧に解説していただきました。
個人的にマルチテナントSaaSを理解するため、用語集的に構成図と照らし合わせる形でメモとして以下のようにまとめました。キャッチアップの取っ掛かりになれば幸いです。
詳しく調べたい方はAWS におけるマルチテナント SaaS の実装パターンやAmazon ECS SaaS リファレンスアーキテクチャを参照することをお勧めします。
(後述する書籍もオススメです!)
【4. 懇親会】
まずは技術書争奪の"じゃんけん大会"が行われました。
景品は「マルチテナントSaaSアーキテクチャの構築」というオライリー・ジャパンから出版されている書籍でした。今回登壇されていたAWSの櫻谷さんが翻訳されているようでご提供いただいたようでした。
岡本がなんとゲットしちゃいました、ありがとうございます!
そのあとは近くのレストランへ移動して運営・参加者の皆さんと乾杯!
テーブルが同じになった方々と最近の生成AI事情やAWSサービスについての意見交換、プライベートなお話などでとても盛り上がりました。
【参加しての感想】
JAWS-UG 京都支部・KyotoLTの共催イベントに初めて参加しましたが、和やかな雰囲気の中で進行し、非常に居心地が良かったです。
SaaSに関する新たな知識を得ることができ、とても有意義な時間を過ごしました。
この記事では触れませんでしたが、有志の方々による3つのLTも内容が非常に興味深く、登壇者と参加者の温かなやり取りが印象的でした。
懇親会では新たな出会いがたくさんあり、嬉しく感じました。
今後もこのようなイベントには積極的に参加していきますのでまたレポート記事書こうと思います。
最後まで読んでいただきありがとうございました。