
EKS(Elastic Kubernetes Service)は、AWSが提供するマネージド型のKubernetes(クバネティス)サービスです。
コントロールプレーンはAWSによって運用・管理され、ユーザーはデータプレーンとして EC2(Elastic Compute Cloud)または Fargate を利用する起動タイプを選択できます。
EKSのクラスタは、AWSが提供する高可用なコントロールプレーンと、ユーザーが管理するワーカーノードで構成されます。ノードは ノードグループ(EC2ベース) または Fargate Profile(サーバーレスベース)として構築でき、用途や負荷に応じて柔軟に運用できます。
コンテナは Pod(ポッド)単位で実行され、VPC CNI(Container Network Interface) によって各PodにVPC内のIPアドレスが直接割り当てられます。アプリケーション公開には ALB(Application Load Balancer)/NLB(Network Load Balancer) Ingress を利用し、HTTP/HTTPSやTCPトラフィックを効率的にルーティングします。
EBS(Elastic Block Store) や EFS(Elastic File System)を利用した永続ストレージは CSI(Container Storage Interface) を通じてPodにアタッチされます。
スケーリング機能としては、ノード数を自動調整する Cluster Autoscaler(クラスターオートスケーラー)、Pod数を動的に増減する HPA(Horizontal Pod Autoscaler)、リソース割り当てを最適化する VPA(Vertical Pod Autoscaler) をサポートしています。
セキュリティ面では、IRSA(IAM Roles for Service Accounts) により、Pod単位でIAM(Identity and Access Management)ロールを割り当て、最小権限の原則に基づいたきめ細かなアクセス制御を実現します。
さらに、Observability(可観測性)を高めるため、CloudWatch や Prometheus(オープンソースのモニタリングツール)などと統合でき、メトリクス・ログ・トレースを通じてクラスター全体の状態を可視化できます。
Helm(ヘルム)よるアプリケーションデプロイや、App Mesh によるサービスメッシュ連携も可能で、マイクロサービス間通信の可視化やトラフィック制御を効率的に行うことができます。
重要用語
ユースケース
- リスト1
 - リスト2
 - リスト3
 
ベストプラクティス
- リスト1
 - リスト2
 - リスト3
 
高可用性・冗長化
- リスト1
 - リスト2
 - リスト3
 
セキュリティ
- リスト1
 - リスト2
 - リスト3
 
運用・監視
- リスト1
 - リスト2
 - リスト3
 
デフォルトのリミット値
| リミット事項 | 上限数 | 
|---|---|
| 項目1 | 上限1 | 
| 項目2 | 上限2 | 
| 項目3 | 上限3 | 
| 項目4 | 上限4 | 
| 項目5 | 上限5 | 
AWS CLIのサンプルコード
vpc を作成
#include <stdio.h>
void main(void) {
  int i;
  for (i=0; i<10; i++)
    printf("%d\n", i);
vpc を作成
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc
Terraformのサンプルコード
vpc を作成
bbbbbbbbbbbbbbbbbbbbbbb
ddddddddddddddddddddddd
vpc を作成
xxxxxxxxxxxxxxxxxxxxxxx
yyyyyyyyyyyyyyyyyyyyyy
課金モデル
| 項目 | 内容 | 
|---|---|
| 項目1 | 内容1 | 
| 項目2 | 内容2 | 
| 項目3 | 内容3 | 
| 項目4 | 内容4 | 
| 項目5 | 内容5 |