プライベート IP アドレスを持つバックエンドインスタンスを ELB のインターネット向けロードバランサーにアタッチするにはどうすればよいですか?

最終更新日: 2021 年 3 月 1 日

インターネット向けロードバランサーに、プライベートサブネットにあるバックエンドの Amazon Elastic Compute Cloud (Amazon EC2) インスタンスをアタッチする必要があります。Elastic Load Balancing を使用してこれを行うにはどうすればよいですか?

簡単な説明

プライベートサブネットにある Amazon EC2 インスタンスをアタッチするには、バックエンドインスタンスで使用されるプライベートサブネットと同じアベイラビリティーゾーンにパブリックサブネットを作成します。次に、パブリックサブネットをロードバランサーに関連付けます。

解決方法

開始する前に、ロードバランサーにアタッチする Amazon EC2 Linux または Amazon EC2 Windows の各インスタンスのアベイラビリティーゾーンを書き留めます。

バックエンドインスタンスのパブリックサブネットを作成する

  1. バックエンドインスタンスがある各アベイラビリティーゾーンにパブリックサブネットを作成します 。同じアベイラビリティーゾーンに複数のプライベートサブネットがある場合は、そのアベイラビリティーゾーンにパブリックサブネットを 1 つだけ作成します。
  2. 各パブリックサブネットに、ビットマスクが /27 以上 (例: 10.0.0.0/27) の CIDR ブロックがあることを確認します。
  3. 各サブネットに 8 つ以上の使用できる IP アドレスがあることを確認します。

ロードバランサーを設定する

  1. Amazon EC2 コンソールを開きます。
  2. パブリックサブネットをロードバランサーに関連付けます(Application Load BalancerNetwork Load Balancer、またはClassic Load Balancerを参照してください)。
  3. バックエンドインスタンスをロードバランサーに登録します(「Application Load Balancer の開始方法」、「Network Load Balancer の開始方法」、または「Classic Load Balancer を作成する」を参照してください)。

ロードバランサーのセキュリティグループとネットワークアクセスコントロールリスト (ACL) の設定を構成する

推奨されているApplication Load Balancerまたは Classic Load Balancer のセキュリティグループ設定を確認します。次のことを確認してください。

  • ロードバランサーには、ポートへのアクセスを許可するオープンリスナーポートとセキュリティグループがあります。
  • インスタンスのセキュリティグループでは、ロードバランサーからのインスタンスリスナーポートおよびヘルスチェックポートのトラフィックが許可されます。
  • ロードバランサーのセキュリティグループでは、クライアントからのインバウンドトラフィックが許可されます。
  • ロードバランサーのセキュリティグループでは、インスタンスおよびヘルスチェックポートへのアウトバウンドトラフィックが許可されます。

インスタンスのセキュリティグループに、ロードバランサーに割り当てられたセキュリティグループからのトラフィックを許可するルールを追加します。例:

タイプ プロトコル ポート範囲 送信元
HTTP TCP 80 sg-1234567a

次に、ロードバランサーの推奨ネットワーク ACL ルールを確認します。これらの推奨事項は、Application Load Balancer と Classic Load Balancer の両方に適用されます。

Network Load Balancer を使用している場合、設定の詳細については、「Network Load Balancer のトラブルシューティング」および「ターゲットセキュリティグループ」を参照してください。バックエンドインスタンスのセキュリティグループが、次のいずれかからターゲットグループのポートへのトラフィックを許可することを確認します。

  • クライアントIPアドレス(ターゲットがインスタンス ID で指定されている場合)
  • ロードバランサーノード(ターゲットが IP アドレスで指定されている場合)