Slide 1

Slide 1 text

ECS Service Connectで マイクロサービスを 繋いでみた 佐藤 靖幸 JAWS-UGコンテナ⽀部 #22 re:Cap 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 1

Slide 2

Slide 2 text

⾃⼰紹介 佐藤 靖幸 @yasai_ls JAWS-UG コンテナ⽀部の 運営メンバーになりました。 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 2 PARTNER NETWORK 2022 APN AWS Top Engineers

Slide 3

Slide 3 text

いっぬ最⾼︕︕ 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 3 ポメ柴アラレちゃん Youtube チャンネルをよろしくお願いします! https://www.youtube.com/@pomeshiba.aralechan

Slide 4

Slide 4 text

アジェンダ 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 4 ECS Service Connectでマイクロサービス繋いでみたよ やってみた構成 FastAPIでマイクロサービスを作る ECS Service Connectの設定 ECS Service Connectのつまづきポイント まとめ(所感)

Slide 5

Slide 5 text

やってみた構成 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 5

Slide 6

Slide 6 text

FastAPIでマイクロサービスを 作る – クライアント側 クライアントは Service Connect ServiceのURLを 指定してマイクロ サービスに アクセスする APIのレスポンスは サービス側の レスポンスをそのまま 表⽰しているだけ 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 6

Slide 7

Slide 7 text

FastAPIでマイクロサービスを 作る – サービス公開側 サービス公開側も FastAPIで。 ルートURLを APIとして提供し クライアント側が 呼び出すだけ。 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 7

Slide 8

Slide 8 text

ECS Service Connectの設定 サービス公開側 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 8

Slide 9

Slide 9 text

ECS Service Connectの設定 クライアント側 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 9

Slide 10

Slide 10 text

ECS Service Connectの設定 Cloud Mapの内容 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 10 お散歩連れてって ..

Slide 11

Slide 11 text

ECS Service Connectの設定 サービス公開の確認 クライアントからマイクロサービスに 繋がった︕︕ 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 11 やったワン! じゃぁお散歩!

Slide 12

Slide 12 text

ECS Service Connectの設定 サービス公開できていない例 クライアントはエラーを返却する 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 12 よくあるエラー メッセージだワン

Slide 13

Slide 13 text

ECS Service Connectの つまづきポイント クライアントのマイクロサービスをデプロイし ようとして壮⼤にハマりました ... 何故か起動 に失敗する ... 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 13

Slide 14

Slide 14 text

ECS Service Connectの つまづきポイント ドキュメントに書いてあった 👀 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 14 >> 新しいネームスペースまたは空のネームスペースの 最初のサービスがクライアントのみの場合、デプロイは 完了しません。新しいネームスペースまたは空のネーム スペースの最初のサービスとして、クライアント・サー バ・サービスを作成する必要があります。

Slide 15

Slide 15 text

ECS Service Connectの つまづきポイント ドキュメントを読むと新たな気付きが...🥹 • 異なるVPC間でも相互に接続可能。ただし、 VPCピアリングなどのVPC間の接続セット アップが必要(のようです) • Service Connect プロキシコンテナ⽤のCPU とメモリ確保をタスク定義で⾏う必要がある 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 15

Slide 16

Slide 16 text

まとめ(所感) • ECS Service Connectを利⽤することで、 ELB、Service Discovery、App Meshなど を利⽤することなくマイクロサービス間の接続 が出来た︕ • サービスを事前に公開しないとクライアント側 が落ちるというつまづきポイントもあった。 • 疑問点もある。可⽤性を⾼めるためのサーキッ トブレーカーの仕組みはどうやって⾏う︖ECS サービスの機能を使って実現︖︖🤔 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 16

Slide 17

Slide 17 text

ご清聴ありがとうございました。 2022/12/20 JAWS-UGコンテナ⽀部 #22 re:Cap 17