キャパシティに関する考慮事項に基づいて、AWS Outposts で Amazon EKS クラスターのインスタンスタイプとプレイスメントグループを選択する - Amazon EKS

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

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

キャパシティに関する考慮事項に基づいて、AWS Outposts で Amazon EKS クラスターのインスタンスタイプとプレイスメントグループを選択する

このトピックでは、Kubernetes コントロールプレーンインスタンスタイプを選択し、(オプションで) プレースメントグループを使用して Outpost のローカル Amazon EKS クラスターの高可用性要件を満たすためのガイダンスを提供します。

Outposts でローカルクラスターの Kubernetes コントロールプレーンに使用するインスタンスタイプ (m5c5r5 など) を選択する前に、Outpost 設定で使用可能なインスタンスタイプを確認する必要があります。使用可能なインスタンスタイプを特定したら、ワークロードに必要なノード数に基づいてインスタンスサイズ (largexlarge2xlarge など) を選択します。次のテーブルは、インスタンスサイズを選択する際のレコメンデーションを示しています。

注記

インスタンスサイズは Outposts にスロットされている必要があります。ローカルクラスターの存続期間中、Outposts で使用可能なサイズの 3 つのインスタンス用に十分な容量を確保してください。使用可能な Amazon EC2 インスタンスタイプのリストについては、「AWS Outposts ラックの特徴」の「コンピューティングとストレージ」セクションを参照してください。

ノードの数。 Kubernetes コントロールプレーンのインスタンスサイズ
1~20

large

21~100

xlarge

101~250

2xlarge

251~500

4xlarge

Kubernetes コントロールプレーンのストレージには、etcd の要求される IOPS を満たすために、ローカルクラスターごとに 246 GB の Amazon EBS ストレージが必要です。ローカルクラスターの作成時に、Amazon EBS ボリュームは自動的にプロビジョニングされます。

コントロールプレーンの配置

OutpostConfig.ControlPlanePlacement.GroupName プロパティでプレイスメントグループを指定しない場合、Kubernetes コントロールプレーン用にプロビジョニングされた Amazon EC2 インスタンスは、Outpost で利用可能な基盤となる容量全体にわたって、特定のハードウェア配置の強制を受けません。

プレイスメントグループを使用すると、Outpost のローカル Amazon EKS クラスターの高可用性要件を満たすことができます。クラスターの作成中にプレイスメントグループを指定することで、Kubernetes コントロールプレーンインスタンスの配置に影響を与えます。インスタンスは基盤となる独立したハードウェア (ラックまたはホスト) に分散されるため、ハードウェア障害発生時のインスタンス間の影響が最小限に抑えられます。

要件

設定できるスプレッドのタイプは、デプロイの Outpost ラックの数によって異なります。

  • 単一の論理的な Outpost に 1 つまたは 2 つの物理ラックを使用するデプロイ - Kubernetes コントロールプレーンインスタンス用に選択したインスタンスタイプで構成されたホストが少なくとも 3 つ必要です。ホストレベルのスプレッドを使用するスプレッドプレイスメントグループにより、すべての Kubernetes コントロールプレーンインスタンスが、Outpost デプロイで使用可能な基盤となるラック内の個別のホストで実行されるようになります。

  • 単一の論理的な Outpost に 3 つ以上の物理ラックを使用するデプロイ - Kubernetes コントロールプレーンインスタンス用に選択したインスタンスタイプで構成されたホストが少なくとも 3 つ必要です。ラックレベルスプレッドを使用するスプレッドプレイスメントグループにより、すべての Kubernetes コントロールプレーンインスタンスが、Outpost デプロイ内の個別のラックで実行されるようになります。または、前のオプションで説明したように、ホストレベルのスプレッドプレイスメントグループを使用することもできます。

希望するプレイスメントグループの作成はお客様の責任となります。CreateCluster API を呼び出すときにプレイスメントグループを指定します。プレイスメントグループとその作成方法の詳細については、「Amazon EC2 ユーザーガイド」の「プレイスメントグループ」を参照してください。

考慮事項
  • プレイスメントグループを指定する場合、ローカルの Amazon EKS クラスターを正常に作成するには、Outpost に使用可能なスロット容量が必要です。容量は、ホストタイプとラックスプレッドタイプのどちらを使用するかによって異なります。十分な容量がない場合、クラスターは Creating 状態のままになります。DescribeCluster API レスポンスのヘルスフィールドで Insufficient Capacity Error を確認できます。作成プロセスを進めるには、容量を解放する必要があります。

  • Amazon EKS ローカルクラスタープラットフォームとバージョンの更新中に、クラスターの Kubernetes コントロールプレーンインスタンスはローリング更新戦略を使用して新しいインスタンスに置き換えられます。この交換プロセス中に、各コントロールプレーンインスタンスは終了し、それぞれのスロットが解放されます。代わりに新しい更新済みインスタンスがプロビジョニングされます。更新されたインスタンスは、リリースされたスロットに配置される可能性があります。スロットが別の無関係なインスタンスによって消費され、必要なスプレッドトポロジー要件を満たす容量が残っていない場合、クラスターは Updating 状態のままになります。DescribeCluster API レスポンスのヘルスフィールドでそれぞれの Insufficient Capacity Error を確認できます。更新プロセスを進めて以前の高可用性レベルを再設定できるように、容量を解放する必要があります。

  • AWS リージョン ごとにアカウントあたり、最大 500 個のプレイスメントグループを作成できます。詳細については、「Amazon EC2 ユーザーガイド」の「一般的なルールと制限」を参照してください。