Slide 1

Slide 1 text

Azure Kubernetes Service を活用した マイクロサービス開発のベストプラクティス

Slide 2

Slide 2 text

自己紹介 https://gooner.hateblo.jp/ https://jazug.connpass.com

Slide 3

Slide 3 text

AKS を活用したマイクロサービス開発のベストプラクティス

Slide 4

Slide 4 text

1. Helm でマイクロサービスの構成を管理する https://hub.kubeapps.com/

Slide 5

Slide 5 text

2. Nginx Ingress Controller で外部向けエンドポイントを公開する ※ Azure ポータルから設定できる HTTP Application Routing アドオンの本番運用は非推奨です。 POS Service Client Item Service Nginx Ingress Controller /pos /item Ingress.yaml Kubernetes Cluster Ingress.yaml

Slide 6

Slide 6 text

3. アップグレード戦略には Blue / Green デプロイを採用する ※ サービスメッシュ(Istio など)を使わなくても、Blue / Green デプロイを実現できます。 POS Service Client Nginx Ingress Controller Kubernetes Cluster Pod Pod pos-api v1 pos-api v1 pos-api v2 Service

Slide 7

Slide 7 text

3. アップグレード戦略には Blue / Green デプロイを採用する Nginx Ingress Controller Microservices ( Pod ) Kubernetes Cluster v 1.18.14 Nginx Ingress Controller Kubernetes Cluster v 1.19.7 Microservices ( Pod ) Application Gateway V2 Data Store

Slide 8

Slide 8 text

4. Pod と Node のスケーリングを組み合わせて構成する 200m 256Mi 100m 128Mi

Slide 9

Slide 9 text

4. Pod と Node のスケーリングを組み合わせて構成する ※ 導入時は Cluster Autoscaler を使わずに、Node 数を固定して運用を開始する方法もあります。

Slide 10

Slide 10 text

5. 障害が発生する前提で構成を決める

Slide 11

Slide 11 text

5. 障害が発生する前提で構成を決める / 80 /readiness 80

Slide 12

Slide 12 text

6. Azure Monitor でマイクロサービスを監視する Kubernetes Docker Application Container(Pod) アプリ監視 インフラ・ミドル ウェア監視 Application Insights Azure Monitor for Containers OS VM マイクロサービス プラットフォーム

Slide 13

Slide 13 text

6. Azure Monitor でマイクロサービスを監視する

Slide 14

Slide 14 text

6. Azure Monitor でマイクロサービスを監視する

Slide 15

Slide 15 text

まとめ マイクロサービスを実現する手段は、Kubernetes だけではありません。 Kubernetes を採用するなら、シンプルな構成から始めましょう。

Slide 16

Slide 16 text

Microsoft Learn のお勧めコンテンツ https://aka.ms/k8s-learn-jp

Slide 17

Slide 17 text

No content