このページの改善にご協力ください
このユーザーガイドに貢献するには、すべてのページの右側のペインにある「GitHub でこのページを編集する」リンクを選択してください。
Amazon EKS Hybrid Nodes を使用するには、オンプレミス環境と AWS 間のプライベート接続、サポートされているオペレーティングシステムを持つベアメタルサーバーまたは仮想マシン、AWS IAM Roles Anywhere または AWS Systems Manager (SSM) ハイブリッドアクティベーションを設定する必要があります。ハイブリッドノードのライフサイクル全体を通じてこれらの前提条件を管理するのはお客様の責任となります。
-
オンプレミス環境と AWS 間のハイブリッドネットワーク接続
-
物理マシンまたは仮想マシンの形式のインフラストラクチャ
-
ハイブリッドノードと互換性のあるオペレーティングシステム
-
オンプレミスの IAM 認証情報プロバイダーが設定されました

ハイブリッドネットワーク接続
Amazon EKS コントロールプレーンとハイブリッドノード間の通信は、クラスターの作成時に渡される VPC とサブネットを介してルーティングされます。これは、コントロールプレーンからノードへのネットワーク形成のために Amazon EKS の既存のメカニズム
最適なエクスペリエンスを実現するために、AWS では、AWS リージョンへのハイブリッドノード接続に、少なくとも 100 Mbps で、最大 200 ミリ秒のラウンドトリップレイテンシーの信頼性の高いネットワーク接続を推奨しています。帯域幅とレイテンシーの要件は、アプリケーションのイメージサイズ、アプリケーションの伸縮性、モニタリングとログ記録の設定、他の AWS サービスに保存されているデータへのアクセスに関するアプリケーションの依存関係など、ハイブリッドノードの数とワークロードの特性によって異なります。本番環境にデプロイする前に、独自のアプリケーションと環境でテストして、ネットワーク設定がワークロードの要件を満たしているか確認することをお勧めします。
オンプレミスのネットワーク設定
Amazon EKS コントロールプレーンからオンプレミス環境へのインバウンドネットワークアクセスを有効にして、Amazon EKS コントロールプレーンが、ハイブリッドノードで実行されている kubelet
と通信できるようにし、オプションでハイブリッドノードで実行されているウェブフックと通信できるようにする必要があります。さらに、Amazon EKS コントロールプレーンと通信するには、ハイブリッドノードとハイブリッドノードで実行されているコンポーネントのアウトバウンドネットワークアクセスを有効にする必要があります。この通信は、AWS Direct Connect、AWS Site-to-Site VPN、または独自の VPN 接続に対して完全にプライベートなままになるように設定できます。ファイアウォールおよびオンプレミス環境で有効にする必要があるポートとプロトコルの完全なリストについては、「ハイブリッドノード用のネットワークを準備する」を参照してください。
オンプレミスノードおよびポッドネットワークに使用する Classless Inter-Domain Routing (CIDR) 範囲は、IPv4 RFC1918 アドレスの範囲を使用する必要があります。ハイブリッドノード対応の Amazon EKS クラスターを作成するときは、オンプレミスノードとオプションでポッド CIDR を渡して、Amazon EKS コントロールプレーンからハイブリッドノードへの通信、およびハイブリッドノードで実行されているリソースへの通信を有効にします。オンプレミスルーターは、オンプレミスノードとオプションでポッドへのルートで設定する必要があります。ボーダーゲートウェイプロトコル (BGP) または静的設定を使用して、ポッド IP を自分のルーターにアドバタイズできます。
EKS クラスター設定
レイテンシーを最小限に抑えるには、オンプレミス環境またはエッジ環境に最も近い AWS リージョンに Amazon EKS クラスターを作成することをお勧めします。Amazon EKS クラスターの作成時に、2 つの API フィールド、RemoteNodeNetwork
および RemotePodNetwork
を介してオンプレミスのノードとポッドの CIDR を渡します。オンプレミスのノードとポッドの CIDR を特定するために、オンプレミスのネットワークチームに相談する必要がある場合があります。ノード CIDR はオンプレミスネットワークから割り当てられ、ポッド CIDR は、CNI のオーバーレイネットワークを使用している場合に使用する Container Network Interface (CNI) から割り当てられます。
オンプレミスノードとポッド CIDR は、VPC 経由でハイブリッドノードで実行されている kubelet
およびポッドにトラフィックをルーティングするように Amazon EKS コントロールプレーンを設定するために使用されます。クラスター作成時に渡す VPC CIDR、または Amazon EKS クラスターのサービス IPv4 構成と互いに重複することはできません。ポッド CIDR はオプションです。CNI がネットワークアドレス変換 (NAT) を使用しない場合、またはポッドトラフィックがオンプレミスホストから出るときにポッド IP アドレスをマスカレードする場合は、ポッド CIDR を設定する必要があります。さらに、ハイブリッドノードで Kubernetes ウェブフックを実行している場合は、ポッド CIDR を設定する必要があります。例えば、AWS Distro for Open Telemetry (ADOT) はウェブフックを使用します。
Amazon EKS Kubernetes API サーバーエンドポイントには、パブリックまたはプライベートのエンドポイントアクセスを使用することをお勧めします。「Public and Private (パブリックとプライベート)」を選択した場合、Amazon EKS Kubernetes API サーバーエンドポイントは、常に VPC の外部で稼働しているハイブリッドノードのパブリック IP に解決されるため、ハイブリッドノードがクラスターに参加できなくなる可能性があります。Amazon EKS Kubernetes API サーバーエンドポイントには、パブリックまたはプライベートのエンドポイントアクセスを使用できます。「Public and Private (パブリックとプライベート)」を選択することはできません。パブリックエンドポイントアクセスを使用すると、Kubernetes API サーバーエンドポイントはパブリック IP に解決され、ハイブリッドノードから Amazon EKS コントロールプレーンへの通信はインターネット経由でルーティングされます。プライベートエンドポイントアクセスを選択すると、Kubernetes API サーバーエンドポイントはプライベート IP に解決され、ハイブリッドノードから Amazon EKS コントロールプレーンへの通信は、プライベート接続リンク (ほとんどの場合 AWS Direct Connect または AWS Site-to-Site VPN) を介してルーティングされます。
VPC の構成
Amazon EKS クラスター作成時に渡す VPC のルーティングテーブルに、オンプレミスノード用のルートを設定し、オプションで仮想プライベートゲートウェイ (VGW) またはトランジットゲートウェイ (TGW) をターゲットとするポッドネットワークを設定する必要があります。次に例を示します。REMOTE_NODE_CIDR
と REMOTE_POD_CIDR
をオンプレミスのネットワークの値に置き換えます。
デスティネーション | ターゲット | 説明 |
---|---|---|
10.226.0.0/16 |
ローカル |
VPC 内の VPC ルートへのローカルトラフィック |
REMOTE_NODE_CIDR |
tgw-abcdef123456 |
オンプレミスノード CIDR、トラフィックを TGW にルーティングする |
REMODE_POD_CIDR |
tgw-abcdef123456 |
オンプレミスポッド CIDR、トラフィックを TGW にルーティングする |
セキュリティグループの構成
クラスターを作成すると、Amazon EKS により eks-cluster-sg-<cluster-name>-<uniqueID>
という名前のセキュリティグループが作成されます。このクラスターセキュリティグループのインバウンドルールは変更できませんが、アウトバウンドルールは制限できます。クラスターに追加のセキュリティグループを追加して、kubelet と、オプションでハイブリッドノードで実行されているウェブフックが Amazon EKS コントロールプレーンに接続できるようにする必要があります。この追加のセキュリティグループに必要なインバウンドルールを以下に示します。REMOTE_NODE_CIDR
と REMOTE_POD_CIDR
をオンプレミスのネットワークの値に置き換えます。
名前 | セキュリティグループのルール ID | IP バージョン | タイプ | プロトコル | ポート範囲 | 送信元 |
---|---|---|---|---|---|---|
オンプレミスノードのインバウンド |
sgr-abcdef123456 |
IPv4 |
HTTPS |
TCP |
443 |
REMOTE_NODE_CIDR |
オンプレミスポッドのインバウンド |
sgr-abcdef654321 |
IPv4 |
HTTPS |
TCP |
443 |
REMOTE_POD_CIDR |
インフラストラクチャ
ハイブリッドノードとして使用するには、ベアメタルサーバーまたは仮想マシンが必要です。ハイブリッドノードは基盤となるインフラストラクチャに依存せず、x86 および ARM アーキテクチャに対応しています。Amazon EKS Hybrid Nodes は「独自のインフラストラクチャを導入する」アプローチに従います。ここでは、ハイブリッドノードに使用するベアメタルサーバーまたは仮想マシンのプロビジョニングと管理はお客様の責任となります。厳密な最小リソース要件はありませんが、ハイブリッドノードには少なくとも 1 つの vCPU と 1GiB RAM を持つホストを使用することをお勧めします。
オペレーティングシステム
Amazon Linux 2023 (AL2023)、Ubuntu、および RHEL は、ハイブリッドノードのノードオペレーティングシステムとして継続的に検証されます。AWS は、これらのオペレーティングシステムとのハイブリッドノード統合をサポートしていますが、オペレーティングシステム自体にはサポートは提供していません。AL2023 は、Amazon EC2 の外部で実行される場合、AWS サポートプランの対象外です。AL2023 はオンプレミスの仮想化環境でのみ使用できます。詳細については、「Amazon Linux 2023 ユーザーガイド」を参照してください。
オペレーティングシステムのプロビジョニングと管理はお客様の責任となります。ハイブリッドノードを初めてテストする場合、プロビジョニング済みのホストで Amazon EKS Hybrid Nodes CLI (nodeadm
) を実行するのが最も簡単です。本稼働デプロイでは、ホストのスタートアップ時にホストを Amazon EKS クラスターに自動的に結合する systemd サービスとして実行するように設定された nodeadm
をゴールデンオペレーティングシステムイメージに含めることをお勧めします。
オンプレミスの IAM 認証情報プロバイダー
Amazon EKS Hybrid Nodes は、AWS SSM ハイブリッドアクティベーションまたは AWS IAM Roles Anywhere によってプロビジョニングされた一時的な IAM 認証情報を使用して、Amazon EKS クラスターで認証します。Amazon EKS Hybrid Nodes CLI (nodeadm
) を用いて、AWS SSM ハイブリッドアクティベーションまたは AWS IAM Roles Anywhere を使用する必要があります。認証局 (CA) とオンプレミス環境の証明書を持つ既存の公開鍵基盤 (PKI) がない場合は、AWS SSM ハイブリッドアクティベーションを使用することをお勧めします。既存の PKI と証明書がオンプレミスにある場合は、AWS IAM Roles Anywhere を使用します。
Amazon EC2 で実行されているノードの Amazon EKS ノードの IAM ロール と同様に、ハイブリッドノードを Amazon EKS クラスターに結合するために必要なアクセス許可を持つハイブリッドノード IAM ロールを作成します。AWS IAM Roles Anywhere を使用している場合は、AWS IAM Roles Anywhere が Hybrid Nodes IAM Role を引き受けることを許可する信頼ポリシーを設定し、ハイブリッドノード IAM ロールを引き受け可能なロールとして AWS IAM Roles Anywhere プロファイルを設定します。AWS SSM を使用している場合は、AWS SSM がハイブリッドノード IAM ロールを引き受け、ハイブリッドノード IAM ロールを使用してハイブリッドアクティベーションを作成できるようにする信頼ポリシーを設定します。必要なアクセス許可を持つハイブリッドノード IAM ロールを作成する方法については、「ハイブリッドノードの認証情報を準備する」を参照してください。