Amazon EKS クラスター用の VPC の作成 - Amazon EKS

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

Amazon EKS クラスター用の VPC の作成

Amazon Virtual Private Cloud (Amazon VPC) を使用すると、定義した仮想ネットワーク内で AWS リソースを起動できます。仮想ネットワークは、お客様自身のデータセンターで運用されていた従来のネットワークによく似ていますが、 のスケーラブルなインフラストラクチャを使用できるというメリットがあります。AWS. 詳細についてはAmazon VPC ユーザーガイド、「」および「ノードのAmazon EKSクラスターネットワーキングの De-mystifying」を参照してください。

既存の VPC を使用する場合は、 で使用するための特定の要件を満たしている必要があります。Amazon EKS. 詳細については、「 」を参照してください。クラスター VPC に関する考慮事項. このトピックでは、次のいずれかの設定を使用して、クラスターの VPC を作成する手順について説明します。

  • パブリックサブネットとプライベートサブネット – この VPC には、2 つのパブリックサブネットと 2 つのプライベート サブネット.があります。1 つのパブリックサブネットと 1 つのプライベートサブネットが同じ にデプロイされますアベイラビリティーゾーン。他のパブリックサブネットとプライベートサブネットは、同じリージョン内の 2 番目の アベイラビリティーゾーン にデプロイされます。このオプションは、すべての実稼働デプロイに推奨されます。このオプションを使用すると、ノードをプライベートサブネットにデプロイし、Kubernetes がパブリックサブネットにロードバランサーをデプロイして、プライベートサブネットのノードで実行されているポッドにトラフィックの負荷を分散できます。

    パブリック IP アドレスは、パブリックサブネットの 1 つにデプロイされたリソースに自動的に割り当てられますが、プライベートサブネットにデプロイされたリソースにはパブリック IP アドレスが割り当てられません。プライベートサブネットのノードは、クラスターや他のAWSサービスと通信でき、ポッドは各 にデプロイされた NAT ゲートウェイを介してインターネットにアウトバウンド通信できますアベイラビリティーゾーン。すべてのインバウンドトラフィックを拒否し、すべてのアウトバウンドトラフィックを許可するセキュリティグループがデプロイされます。サブネットには、Kubernetes がロードバランサーをデプロイできるようにタグが付けられています。サブネットのタグ付けの詳細については、「」を参照してください。サブネットのタグ付け. このタイプの VPC の詳細については、「パブリックサブネットとプライベートサブネット (NAT) を持つ VPC.」を参照してください。

  • パブリックサブネットのみ – この VPC には、リージョン内の異なる アベイラビリティーゾーン にデプロイされる 3 つのパブリックサブネットがあります。すべてのノードには自動的にパブリック IP アドレスが割り当てられ、インターネットゲートウェイを介してインターネットトラフィックを送受信できます。すべてのインバウンドトラフィックを拒否し、すべてのアウトバウンドトラフィックを許可するセキュリティグループがデプロイされます。サブネットには、Kubernetes がロードバランサーをデプロイできるようにタグが付けられています。サブネットのタグ付けの詳細については、「」を参照してください。サブネットのタグ付け. このタイプの VPC の詳細については、「単一パブリックサブネットを持つ VPC.」を参照してください。

  • プライベートサブネットのみ – この VPC には、リージョン内の異なる アベイラビリティーゾーン にデプロイされる 3 つのプライベートサブネットがあります。すべてのノードは、オプションで NAT インスタンスまたは NAT ゲートウェイを介してインターネットトラフィックを送受信できます。すべてのインバウンドトラフィックを拒否し、すべてのアウトバウンドトラフィックを許可するセキュリティグループがデプロイされます。サブネットには、Kubernetes が内部ロードバランサーをデプロイできるようにタグが付けられています。サブネットのタグ付けの詳細については、「」を参照してください。サブネットのタグ付け. このタイプの VPC の詳細については、「プライベートサブネットのみを含む VPC と AWS Site-to-Site VPN アクセス.」を参照してください。

    重要

    VPC に NAT インスタンス、NAT ゲートウェイ、VPN、Direct Connect などを介するアウトバウンドインターネットアクセスがない場合は、追加の要件を満たす必要があります。クラスター認証機関とクラスター API エンドポイントをノードに提供することで、EKS クラスターの詳細分析をバイパスする必要があります。場合によって、「」に一覧表示されている VPC エンドポイントを設定する必要もあります。クラスターエンドポイントのアクセスの変更.

重要

VPC をデプロイするために、eksctl を使用するか、Amazon EKS AWS CloudFormation VPC テンプレートのいずれかを使用した場合:

  • On or after March 26, 2020 – パブリックサブネットによって、パブリックサブネットにデプロイされた新しいノードに、パブリックIPv4アドレスが自動的に割り当てられます。

  • より前 March 26, 2020 – パブリックIPv4サブネットは、パブリックサブネットによって、パブリックサブネットにデプロイされた新しいノードに自動的に割り当てられません。

この変更は、パブリックサブネットにデプロイした新しいノードグループに、次のような影響を与えます。

  • マネージド型ノードグループ – April 22, 2020 以降にノードグループをパブリックサブネットにデプロイした場合は、パブリックサブネットでパブリック IP アドレスの自動割り当てを有効にする必要があります。詳細については、「サブネットのパブリックIPv4アドレス属性の変更」を参照してください。

  • Linux、Windows、または Arm のセルフマネージド型ノードグループ ノードグループが 以降にパブリックサブネットにデプロイ–されている場合March 26, 2020、パブリックサブネットでパブリック IP アドレスの自動割り当てが有効になっているか、パブリック IP アドレスを使用してノードを起動する必要があります。詳細については、「サブネットのパブリックIPv4アドレス属性を変更する」または「インスタンスの起動時にパブリックIPv4アドレスを割り当てる」を参照してください。

Amazon EKS クラスター用の VPC の作成

パブリックサブネットとプライベートサブネット、パブリックサブネットのみ、またはプライベートサブネットのみを持つ VPC を作成できます。作成する VPC のタイプの説明が付いているタブを選択します。

Public and private subnets

パブリックサブネットとプライベートサブネットを持つクラスター VPC を作成するには

  1. AWS CloudFormation コンソール (https://console.aws.amazon.com/cloudformation) を開きます。

  2. ナビゲーションバーで、 をサポートするリージョンを選択します。Amazon EKS.

  3. スタックの作成] を選択し、[With new resources (standard) (新しいリソースの使用 (標準)).] を選択します。

  4. Choose a template (テンプレートの選択)] で、[Specify an Amazon S3 template URL (S3 テンプレート URL の指定).] を選択します。

  5. 以下の URL をテキストエリアに貼り付けて、[次へ:] を選択します。

    https://s3.us-west-2.amazonaws.com/amazon-eks/cloudformation/2020-10-29/amazon-eks-vpc-private-subnets.yaml
  6. 詳細の指定] ページで、必要に応じてパラメータを指定し、[次へ.] を選択します。

    • Stack name: AWS CloudFormation スタックのスタック名を選択します。たとえば、[eks-vpc.] に呼び出します。

    • VpcBlock: VPC の CIDR 範囲を選択します。 デプロイする各ワーカーノード、ポッド、ロードバランサーには、このブロックから IP アドレスが割り当てられます。デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。詳細については、Amazon VPC ユーザーガイドの「VPC とサブネットのサイズ設定」を参照してください。VPC が作成されたら、さらなる CIDR ブロックを VPC に追加することもできます。

    • PublicSubnet01Block: パブリックサブネット 1 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • PublicSubnet02Block: パブリックサブネット 2 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • PrivateSubnet01Block: プライベートサブネット 1 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • PrivateSubnet02Block: プライベートサブネット 2 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

  7. (オプション) [オプション] ページで、スタックリソースにタグを付けます。Next.] を選択します。

  8. Review] ページで、[Create .] を選択します。

  9. スタックが作成されたら、コンソールで選択し、[出力.] を選択します。

  10. 作成されたセキュリティグループのSecurityGroups値を記録します。クラスターにノードを追加する場合は、セキュリティグループの ID を指定する必要があります。セキュリティグループは、コントロールプレーンがノードと通信できるように、サブネットAmazon EKS内の によって作成された Elastic Network Interface に適用されます。これらのネットワークインターフェイスの説明は Amazon EKS <cluster name> にあります。

  11. 作成された VPC VpcId の を記録します。これは、ノードグループテンプレートを起動するときに必要になります。

  12. 作成されたサブネットSubnetIdsの と、それらをパブリックサブネットとして作成したかプライベートサブネットとして作成したかを記録します。クラスターにノードを追加する場合は、ノードを起動するサブネットIDsの を指定する必要があります。

Only public subnets

パブリックサブネットのみを持つクラスター VPC を作成するには

  1. AWS CloudFormation コンソール (https://console.aws.amazon.com/cloudformation) を開きます。

  2. ナビゲーションバーで、 をサポートするリージョンを選択します。Amazon EKS.

  3. スタックの作成] を選択し、[With new resources (standard) (新しいリソースの使用 (標準)).] を選択します。

  4. Choose a template (テンプレートの選択)] で、[Specify an Amazon S3 template URL (S3 テンプレート URL の指定).] を選択します。

  5. 以下の URL をテキストエリアに貼り付けて、[次へ:] を選択します。

    https://s3.us-west-2.amazonaws.com/amazon-eks/cloudformation/2020-10-29/amazon-eks-vpc-sample.yaml
  6. 詳細の指定] ページで、必要に応じてパラメータを指定し、[次へ.] を選択します。

    • Stack name: AWS CloudFormation スタックのスタック名を選択します。たとえば、[eks-vpc.] に呼び出します。

    • VpcBlock: VPC の CIDR ブロックを選択します。 デプロイする各ワーカーノード、ポッド、ロードバランサーには、このブロックから IP アドレスが割り当てられます。デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。詳細については、Amazon VPC ユーザーガイドの「VPC とサブネットのサイズ設定」を参照してください。VPC が作成されたら、さらなる CIDR ブロックを VPC に追加することもできます。

    • Subnet01Block: サブネット 1 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • Subnet02Block: サブネット 2 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • Subnet03Block: サブネット 3 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

  7. (オプション) [オプション] ページで、スタックリソースにタグを付けます。Next.] を選択します。

  8. Review] ページで、[Create .] を選択します。

  9. スタックが作成されたら、コンソールで選択し、[出力.] を選択します。

  10. 作成されたセキュリティグループのSecurityGroups値を記録します。クラスターにノードを追加する場合は、セキュリティグループの ID を指定する必要があります。セキュリティグループは、コントロールプレーンがノードと通信できるように、サブネットAmazon EKS内の によって作成された Elastic Network Interface に適用されます。これらのネットワークインターフェイスの説明は Amazon EKS <cluster name> にあります。

  11. 作成された VPC VpcId の を記録します。これは、ノードグループテンプレートを起動するときに必要になります。

  12. 作成されたサブネットSubnetIdsの を記録します。クラスターにノードを追加するときは、ノードを起動するサブネットIDsの を指定する必要があります。

Only private subnets

パブリックサブネットのみを含むクラスター VPC を作成するには

  1. AWS CloudFormation コンソール (https://console.aws.amazon.com/cloudformation) を開きます。

  2. ナビゲーションバーで、 をサポートするリージョンを選択します。Amazon EKS.

  3. スタックの作成] を選択し、[With new resources (standard) (新しいリソースの使用 (標準)).] を選択します。

  4. Choose a template (テンプレートの選択)] で、[Specify an Amazon S3 template URL (S3 テンプレート URL の指定).] を選択します。

  5. 以下の URL をテキストエリアに貼り付けて、[次へ:] を選択します。

    https://s3.us-west-2.amazonaws.com/amazon-eks/cloudformation/2020-10-29/amazon-eks-fully-private-vpc.yaml
  6. 詳細の指定] ページで、必要に応じてパラメータを指定し、[次へ.] を選択します。

    • Stack name: AWS CloudFormation スタックのスタック名を選択します。たとえば、[eks-vpc.] に呼び出します。

    • VpcBlock: VPC の CIDR ブロックを選択します。 デプロイする各ワーカーノード、ポッド、ロードバランサーには、このブロックから IP アドレスが割り当てられます。デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。詳細については、Amazon VPC ユーザーガイドの「VPC とサブネットのサイズ設定」を参照してください。VPC が作成されたら、さらなる CIDR ブロックを VPC に追加することもできます。

    • PrivateSubnet01Block: サブネット 1 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • PrivateSubnet02Block: サブネット 2 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

    • PrivateSubnet03Block: サブネット 3 の CIDR ブロックを指定します。 デフォルト値のままで、ほとんどの実装に十分な IP アドレスが提供されますが、提供されない場合は、その値を変更できます。

  7. (オプション) [オプション] ページで、スタックリソースにタグを付けます。Next.] を選択します。

  8. Review] ページで、[Create .] を選択します。

  9. スタックが作成されたら、コンソールで選択し、[出力.] を選択します。

  10. 作成されたセキュリティグループのSecurityGroups値を記録します。クラスターにノードを追加する場合は、セキュリティグループの ID を指定する必要があります。セキュリティグループは、コントロールプレーンがノードと通信できるように、 がサブネットにAmazon EKS作成する Elastic Network Interface に適用されます。これらのネットワークインターフェイスの説明は Amazon EKS <cluster name> にあります。

  11. 作成された VPC VpcId の を記録します。これは、ノードグループテンプレートを起動するときに必要になります。

  12. 作成されたサブネットSubnetIdsの を記録します。ノードをクラスターに追加するときは、ノードを起動するサブネットIDsの を指定する必要があります。

次のステップ

VPC を作成したら の使用を開始するAmazon EKS、このウォークスルーを試すことができます。