SAA / ドメイン3 高パフォーマンスなアーキテクチャの設計

Amazon EKS (Elastic Kubernetes Service)

は、KubernetesのコントロールプレーンをAWSが管理するサービスです。SAA では、既存のKubernetesツール、、運用知識、移植性を維持しながらAWSでを実行する場合に選びます。


概要

AWSがKubernetesコントロールプレーンの可用性、スケーリング、保守を管理します。ワーカーノードはマネージドノードグループ、セルフマネージドノード、などから選びます。


主要技術

①コントロールプレーンとデータプレーン

コントロールプレーンはで管理されます。Podを実行するデータプレーンは利用者が方式を選び、複数へ分散します。


②ノード方式 ⚠️ 頻出

方式判断ポイント
マネージドノードグループノード更新をAWSに支援してもらいます。
セルフマネージドノード特殊構成を細かく制御します。
Pod単位で実行し、EC2ノードを管理しません。

③可用性とスケーリング

複数のへノードを配置し、Podのレプリカ、トポロジー分散、Pod Disruption Budgetを設計します。Cluster Autoscaler等でノード容量、Horizontal Pod AutoscalerでPod数を調整します。

HPAでPod数を増やしても、ノードに空きがなければ新しいPodはPendingのまま残ります。ノードを増やすには、配置できないPodを検知してノードグループのグループの希望容量を増やすCluster Autoscalerか、Podの要求に合うインスタンスを直接起動するKarpenterを使います。 Auto ModeはKarpenterを基にノードの伸縮をAWSが管理します。

ではノードの管理が不要になる一方、DaemonSet、特権、は使えません。全ノードでエージェントをDaemonSetとして動かす構成では、EC2ノードを残します。


④AWS統合

、、、、などと統合します。PodごとのAWS権限では、ノード全体へ広い権限を付けず、ワークロード単位のIAM連携を使います。

の Kubernetes Secret はコントロールプレーンの etcd に保存されます。保存時の保護を顧客管理の キーで制御したい場合は、クラスターのシークレット暗号化でそのキーを指定します。KMS を使ったエンベロープ暗号化により、ワーカーノードの EBS 暗号化とは別に etcd 内の Secret を保護します。 Kubernetes 1.28 以降のクラスターでは、EKS が Secret を含むすべての Kubernetes データを既定で AWS 所有キーによりエンベロープ暗号化します。AWS 所有キーは利用者が使用状況を確認したり無効化したりできないため、鍵の管理や での監査を自社で行いたい場合は、クラスターの暗号化設定にを関連付けます。既存のクラスターにも後から関連付けられます。

などを External Secrets Operator 経由で Pod から参照する構成は、シークレットの保管元やローテーションを外部サービスへ寄せる方法です。一方、EKS のシークレット暗号化は Kubernetes Secret が etcd に保存される場合の暗号化境界を強化します。目的を分けて選びます。


試験対策

「Kubernetes互換」「既存Helmチャート」「移植性」はです。Kubernetes要件がなくAWSで運用を簡素化したい場合はを検討します。

⚠️ 頻出: EKS の Secret を保存時に暗号化する要件では、ノードの 暗号化だけでなく、 キーを指定したクラスターのシークレット暗号化を選びます。


参考文献

  1. ※1出題比率: AWS 公式の試験ガイドに記載された、採点対象の設問のうちその分野が占める割合です。

検索

キーワードを入力してください