Slide 1

Slide 1 text

Amazon ECS とマイクロサービスから 考えるシステム構成

Slide 2

Slide 2 text

自己紹介 名前 / 檜山 準(ひやんが / hiyanger) 職種 / AWS エンジニア 好きなサービス / Code シリーズ 所属 / クラウド系 SIer 出身 / 栃木県 宇都宮市 趣味 / ギター 🎸 @hiyanger

Slide 3

Slide 3 text

自己紹介 宇都宮には 餃子通り なるものが存在する!! よくこの有名店「正嗣」を 食べてました!!

Slide 4

Slide 4 text

自己紹介 2025/1/18 「栃木ゆる勉強会」でも ECS x CI/CD ネタでお話ししてきました!

Slide 5

Slide 5 text

自己紹介 JAWS-UG 栃木 発足 おめでとうございます!!

Slide 6

Slide 6 text

Amazon ECS とマイクロサービスから 考えるシステム構成

Slide 7

Slide 7 text

もくじ 1. システム構成 2. サービス間のつなぎこみ 3. 実際にサービス間をつないでみる

Slide 8

Slide 8 text

※ 補足 マイクロサービスとは 大きなシステムを小さな独立した サービスにわける方法。 独立して動作するので、 他サービスへの影響ががない。

Slide 9

Slide 9 text

① システム構成

Slide 10

Slide 10 text

① システム構成 ※ 提案案件にて (Web)システムの構築は マイクロサービスを前提とする!!

Slide 11

Slide 11 text

① システム構成 やったーおもしろそうな システムだーー!! インフラエンジニア(自分)

Slide 12

Slide 12 text

① システム構成 システム構成してみよう!! インフラエンジニア(自分)

Slide 13

Slide 13 text

① システム構成 リポジトリは 機能ごと パイプラインも 機能ごと 複数の選択肢 DBも分割 ドメイン開発駆動 (境界づけられたコンテキスト) 監修

Slide 14

Slide 14 text

① システム構成 リポジトリは 機能ごと パイプラインも 機能ごと 複数の選択肢 DBも分割 ドメイン開発駆動 (境界づけられたコンテキスト) 監修 ここを深堀りや!! 🔥

Slide 15

Slide 15 text

② サービス間の つなぎこみ検討

Slide 16

Slide 16 text

② サービス間のつなぎこみ検討 手間とコスト 😢 2026年 サポート終了 ...😭 Blue/Green が 困難😭 2022年 リリース😲 GraphQLでAPI の統合可能 中継層が必 要... 検討のながれ

Slide 17

Slide 17 text

② サービス間のつなぎこみ検討 やはり奴にするしかない...

Slide 18

Slide 18 text

② サービス間のつなぎこみ検討 安心と信頼の ALB!!

Slide 19

Slide 19 text

③実際にサービス間を つないでみる

Slide 20

Slide 20 text

③ 実際にサービス間をつないでみる 監修 ここを検証!! 🔥

Slide 21

Slide 21 text

③ 実際にサービス間をつないでみる フロントエンド 1. Docker イメージを ECR へプッシュ バックエンド A (API) バックエンド B (API)

Slide 22

Slide 22 text

③ 実際にサービス間をつないでみる 2. VPC、ALB、ECS を構築 ALB Service VPC ECS

Slide 23

Slide 23 text

③ 実際にサービス間をつないでみる 3. ALB のリソースマップ(とてもわかりやすい) パスパターンで ふりわけ!!

Slide 24

Slide 24 text

③ 実際にサービス間をつないでみる つながりました!! API から取得!! API から取得!!

Slide 25

Slide 25 text

まとめ

Slide 26

Slide 26 text

まとめ ・マイクロサービスとうたうなら  ECS サービス以外もできる限りわける!! ・サービス間接続は  ECS Service Connect → ALB で  まずは検討してみる!!

Slide 27

Slide 27 text

参考 / 協力 ・本検証ができる GitHub(Terraform) https://github.com/hiyanger/ecs-microservices-connections ・検証メモ https://zenn.dev/hiyanger/scraps/0e21a1f60b7892 ・ECS Service Connectによるサービスの新しいつなぎ方 https://speakerdeck.com/iselegant/a-new-way-to-connect-services-with-ecs-service -connect ・ECSのサービス間通信 4つの方法を比較する 〜Canary,Blue/Greenも添えて〜 https://speakerdeck.com/tkikuc/greenmotian-ete ・みちのすけ(X) https://x.com/Michin0suke

Slide 28

Slide 28 text

以上です ありがとうございました!! (次回の JAWS-UG 栃木 も楽しみにしてます!!)