Kubernetes 応用コース / Chapter 06

EKS上のアプリとスケーリング

EKSでアプリを動かし、レプリカ数とノード容量の両面からスケールを考える。

この章で学ぶこと
  1. DeploymentはアプリPodの更新・複製を管理する。
  2. HPAはメトリクスに基づいて必要なPod数を調整する。
  3. Pod数だけでなくNodeの容量とスケジューリング上限を確認する。

01DeploymentからServiceまでの配信経路

DeploymentがReplicaSetとPodを更新し、Ready PodをServiceが選ぶ。

DeploymentからServiceの経路
rollout statusとEndpointsを合わせて確認する。

rollout statusとEndpointsを合わせて確認する。

判断できるようになること:DeploymentからServiceまでの配信経路。

02HPAはrequests基準でPod数を変える

Metrics Serverの利用量をrequestsに対する比率として評価し、Deploymentのreplica数を調整する。

HPAによるPod数調整
requests未設定では利用率の基準が欠ける。

requests未設定では利用率の基準が欠ける。

判断できるようになること:HPAはrequests基準でPod数を変える。

03Workload障害を状態から切り分ける

rollout、Service endpoints、HPA events、Pod readinessを順に確認する。

DeploymentとHPAの確認順
状態を一つずつ照合する。

状態を一つずつ照合する。

判断できるようになること:Workload障害を状態から切り分ける。

章のまとめ

  1. DeploymentはアプリPodの更新・複製を管理する。
  2. HPAはメトリクスに基づいて必要なPod数を調整する。
  3. Pod数だけでなくNodeの容量とスケジューリング上限を確認する。