Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

AWS Load Balancer Controller で Helm をインストールする

フォーカスモード
AWS Load Balancer Controller で Helm をインストールする - アマゾン EKS

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

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

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

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

ヒント

Amazon EKS Auto Mode では、ネットワーク形成のアドオンをインストールまたはアップグレードする必要はありません。Auto Mode には、ポッドのネットワーク形成とロードバランシング機能が含まれています。

詳細については、「EKS Auto Mode を使用してクラスターインフラストラクチャを自動化する」を参照してください。

このトピックでは、Kubernetes のパッケージマネージャーである Helm と eksctl を使用して AWS Load Balancer Controller をインストールする方法について説明します。コントローラーはデフォルトのオプションでインストールされます。注釈を使用した設定など、コントローラーの詳細については、GitHub の「AWS Load Balancer Controller ドキュメント」を参照してください。

以下のステップでは、サンプル値を独自の値に置き換えます。

前提条件

このチュートリアルを開始する前に、Amazon EKS クラスターの作成と管理に必要な次のツールとリソースを、インストールおよび設定しておく必要があります。

ステップ 1: eksctl を使用して IAM ロールを作成する

注記

AWS Load Balancer Controller の IAM ロールを AWS アカウント アカウントごとに 1 回作成するだけで済みます。AmazonEKSLoadBalancerControllerRoleIAM コンソール に存在するかどうかを確認します。このロールが存在する場合は、「ステップ 2: AWS Load Balancer Controller のインストール」に進みます。

注記

以下の例は、 AWS Load Balancer Controller v2.11.0 リリースバージョンを参照しています。すべてのリリースの詳細については、GitHub の「AWS Load Balancer Controller リリースページ」を参照してください。

  1. ユーザーに代わって AWS API を呼び出すことを許可する、 AWS Load Balancer Controller 用の IAM ポリシーをダウンロードします。

    AWS
    curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.11.0/docs/install/iam_policy.json
    AWS GovCloud (US)
    curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.11.0/docs/install/iam_policy_us-gov.json
    mv iam_policy_us-gov.json iam_policy.json
    curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.11.0/docs/install/iam_policy.json
  2. 前のステップでダウンロードしたポリシー を使用して、IAM ポリシーを作成します。

    aws iam create-policy \ --policy-name AWSLoadBalancerControllerIAMPolicy \ --policy-document file://iam_policy.json
    注記

    AWS Management Console でポリシーを確認すると、コンソールには [ELB] サービスに関する警告が表示されますが、[ELB v2] サービスに関する警告は表示されません。これは、ポリシー内のアクションの一部が [ELB v2] には存在するが、[ELB] には存在しないために起こります。[ELB] に関する警告は無視できます。

  3. my-cluster はご自分のクラスター名に、111122223333 はご自分のアカウント ID に置き換えた上で、コマンドを実行します。

    eksctl create iamserviceaccount \ --cluster=my-cluster \ --namespace=kube-system \ --name=aws-load-balancer-controller \ --role-name AmazonEKSLoadBalancerControllerRole \ --attach-policy-arn=arn:aws:iam::111122223333:policy/AWSLoadBalancerControllerIAMPolicy \ --approve

ステップ 2: AWS Load Balancer Controller をインストールする

  1. eks-charts Helm チャートリポジトリを追加します。AWS はこのリポジトリを GitHub で管理しています。

    helm repo add eks https://aws.github.io/eks-charts
  2. ローカルリポジトリを更新して、最新のグラフがあることを確認します。

    helm repo update eks
  3. AWS Load Balancer Controller をインストールします。

    Amazon EC2 インスタンスメタデータサービス (IMDS) に対するアクセスが制限されている Amazon EC2 ノードにコントローラーをデプロイする場合、または Fargate もしくは Amazon EKS Hybrid Nodes にデプロイする場合には、次の helm コマンドに次のフラグを追加します。

    • --set region=region-code

    • --set vpcId=vpc-xxxxxxxx

      my-cluster の部分は、自分のクラスター名に置き換えます。次のコマンドでは、aws-load-balancer-controller は前のステップで作成した Kubernetes サービスアカウントです。

      Helm チャートの設定の詳細については、GitHub の「values.yaml」を参照してください。

      helm install aws-load-balancer-controller eks/aws-load-balancer-controller \ -n kube-system \ --set clusterName=my-cluster \ --set serviceAccount.create=false \ --set serviceAccount.name=aws-load-balancer-controller
重要

デプロイされたグラフは、セキュリティに関する更新を自動的に受信しません。この更新が利用可能になったら、手動で新しいグラフにアップグレードする必要があります。アップグレードする場合は、前のコマンドで installupgrade に変更します。

helm install コマンドでは、コントローラーのカスタムリソース定義 (CRDs) が自動的にインストールされます。一方、helm upgrade コマンドでは自動的にインストールされません。helm upgrade, コマンドを使用する場合は、CRDs を手動でインストールする必要があります。次のコマンドを実行して、CRDs をインストールします。

wget https://raw.githubusercontent.com/aws/eks-charts/master/stable/aws-load-balancer-controller/crds/crds.yaml kubectl apply -f crds.yaml

ステップ 3: コントローラーがインストールされていることを確認する

  1. コントローラがインストールされていることを確認します。

    kubectl get deployment -n kube-system aws-load-balancer-controller

    出力例は次のとおりです。

    NAME READY UP-TO-DATE AVAILABLE AGE aws-load-balancer-controller 2/2 2 2 84s

    Helm を使用してデプロイした場合は、前の出力を受け取ります。Kubernetes マニフェストを使用してデプロイした場合、レプリカは 1 つのみとなります。

  2. コントローラーを使用して AWS リソースをプロビジョニングする場合には、クラスターは特定の要件を満たしている必要があります。詳細については、Application Load Balancers でアプリケーションと HTTP トラフィックをルーティングするおよびNetwork Load Balancers で TCP および UDP トラフィックをルーティングするを参照してください。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.