AWS Outposts を使用して Amazon EKS をオンプレミスにデプロイする - Amazon EKS

このページの改善にご協力ください

本ユーザーガイドの改善にご協力いただけませんか? このページの下部までスクロールし、[GitHub でこのページの編集] を選択します。皆さまにご協力いただくことで、あらゆる人々に使いやすいユーザーガイドになります。

AWS Outposts を使用して Amazon EKS をオンプレミスにデプロイする

Amazon EKS を使用して、オンプレミス Kubernetes アプリケーションを AWS Outposts で実行できます。次の方法で Amazon EKS を Outposts にデプロイできます。

  • 拡張クラスター - Outpost の AWS リージョン とノードで Kubernetes コントロールプレーンを実行します。

  • ローカルクラスター - Outpost で Kubernetes コントロールプレーンとノードを実行します。

どちらのデプロイオプションでも、Kubernetes コントロールプレーンは、AWS によって完全に管理されています。クラウドで使用するのと同じ Amazon EKS API、ツール、コンソールを使用して Outposts で Amazon EKS を作成および実行することができます。

以下の図に、これらのデプロイのオプションを示します。

Outpost デプロイオプション

各デプロイオプションを使用する時

ローカルクラスターと拡張クラスターはどちらも汎用のデプロイオプションであり、さまざまなアプリケーションに使用できます。

ローカルクラスターでは、Amazon EKS クラスター全てを Outposts でローカルに実行できます。この方法により、クラウドへの一時的なネットワーク切断によって生じる可能性のあるアプリケーションダウンタイムのリスクを軽減できます。このようなネットワーク接断は、ファイバーの切断や天候によって発生する可能性があります。すべての Amazon EKS クラスター全体が Outposts でローカルに実行されるため、アプリケーションは引き続き使用できます。クラウドへのネットワーク切断中にクラスターオペレーションを実行できます。詳細については、「AWS Outposts でローカル Amazon EKS クラスターを準備して、ネットワークの切断に備える」を参照してください。Outposts から親 AWS リージョン へのネットワーク接続の品質が気になる場合、およびネットワークの切断による高可用性を必要とする場合は、ローカルクラスターデプロイオプションを使用してください。

拡張クラスターでは、Kubernetes コントロールプレーンが親 AWS リージョン で動作するため、Outpost の容量を節約できます。このオプションは、Outpost から AWS リージョン への信頼性が高く冗長なネットワーク接続に投資できる場合に適している可能性があります。このオプションでは、ネットワーク接続の品質が重要です。Kubernetes が Kubernetes コントロールプレーンとノード間のネットワーク切断を処理する方法によって、アプリケーションのダウンタイムが発生する可能性があります。Kubernetes の動作の詳細については、Kubernetes ドキュメントの「スケジューリング、プリエンプション、エビクション」を参照してください。

デプロイオプションの比較

以下の表は、これら 2 つのオプションの違いを比較したものです。

機能 拡張クラスター ローカルクラスター

Kubernetes コントロールプレーンの位置

AWS リージョン

Outpost

Kubernetes コントロールプレーンアカウント

AWS アカウント

お客様のアカウント

リージョナルな可用性

サービスエンドポイント」を参照してください

米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (北カリフォルニア)、米国西部 (オレゴン)、アジアパシフィック (ソウル)、アジアパシフィック (シンガポール)、アジアパシフィック (東京)、アジアパシフィック (シドニー)、カナダ (中部)、欧州 (フランクフルト)、欧州 (アイルランド)、欧州 (ロンドン)、中東 (バーレーン)、南米 (サンパウロ)

Kubernetes マイナーバージョン

サポートされている Amazon EKS バージョン

サポートされている Amazon EKS バージョン

プラットフォームのバージョン

各 Kubernetes バージョンの Amazon EKS プラットフォームのバージョンを表示する」を参照してください。 AWS Outposts の Kubernetes および Amazon EKS プラットフォームバージョンについて説明します。」を参照してください。

Outpost フォームファクター

Outpost ラック Outpost ラック

ユーザーインターフェイス

AWS Management Console、AWS CLI、Amazon EKS API、eksctl、AWS CloudFormation、および Terraform

AWS Management Console、AWS CLI、Amazon EKS API、eksctl、AWS CloudFormation、および Terraform

マネージドポリシー

AmazonEKSClusterPolicy および AmazonEKSServiceRolePolicy AmazonEKSLocalOutpostClusterPolicy および AmazonEKSLocalOutpostServiceRolePolicy

クラスター VPC およびサブネット

VPC とサブネットの Amazon EKS ネットワーキング要件を表示する」を参照してください。 AWS Outposts で Amazon EKS クラスターの VPC とサブネットを作成する」を参照してください。

クラスターエンドポイントのアクセス

公共または個人、あるいはその両方 非公開のみ

Kubernetes API サーバー認証

AWS Identity and Access Management (IAM) および OIDC

IAM および x.509 証明書

ノードタイプ

セルフマネージド型のみ セルフマネージド型のみ

ノードのコンピュートタイプ

Amazon EC2 オンデマンド

Amazon EC2 オンデマンド
ノードストレージタイプ

Amazon EBS gp2 とローカル NVMe SSD

Amazon EBS gp2 とローカル NVMe SSD

Amazon EKS 最適化 AMI

Amazon Linux、Windows、Bottlerocket Amazon Linux のみ

IP バージョン

IPv4 のみ

IPv4 のみ

アドオン

Amazon EKS アドオンまたはセルフマネージドアドオン セルフマネージド型アドオンのみ

デフォルトの Container Network Interface

Amazon VPC CNI plugin for Kubernetes

Amazon VPC CNI plugin for Kubernetes

Kubernetes コントロールプレーンのログ

Amazon CloudWatch Logs

Amazon CloudWatch Logs

負荷分散

AWS Load Balancer Controller を使用して Application Load Balancer のみをプロビジョニングします (Network Load Balancer はプロビジョニングしない) AWS Load Balancer Controller を使用して Application Load Balancer のみをプロビジョニングします (Network Load Balancer はプロビジョニングしない)
シークレットエンベロープ暗号化 既存のクラスターで AWS KMS を使用して Kubernetes シークレットを暗号化する」を参照してください。 サポートされていません
サービスアカウントの IAM ロール サービスアカウントの IAM ロール」を参照してください。 サポートされていません

トラブルシューティング

Amazon EKS クラスターとノードに関する問題をトラブルシューティングする」を参照してください。 AWS Outposts でローカル Amazon EKS クラスターをトラブルシューティングする」を参照してください。
トピック