AWS re:Postを使用することにより、以下に同意したことになります 利用規約

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

所要時間2分
0

インターネット向けロードバランサーを使用しています。プライベートサブネットにあるバックエンドの Amazon Elastic Compute Cloud (Amazon EC2) インスタンスをアタッチする必要があります。

簡単な説明

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

注: ロードバランサーはターゲットとの接続をプライベートで確立します。インターネットからソフトウェアまたはセキュリティパッチをダウンロードするには、ターゲットインスタンスのルートテーブルで NAT ゲートウェイルールを使用してインターネットアクセスを許可します。

解決方法

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

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

1.    バックエンドインスタンスがある各アベイラビリティーゾーンにパブリックサブネットを作成します。同じアベイラビリティーゾーンに複数のプライベートサブネットがある場合は、そのアベイラビリティーゾーンにパブリックサブネットを 1 つだけ作成します。

2.    各パブリックサブネットに、ビットマスクが /27 以上 (例: 10.0.0.0/27) の CIDR ブロックがあることを確認します。

3.    各サブネットに 8 つ以上の使用できる IP アドレスがあることを確認します。

例:パブリックサブネット (Application Load Balancer サブネット) には、少なくとも /27 のビットマスクを持つ CIDR ブロックが必要です。

  • AZ A: 10.0.0.0/24 のパブリックサブネット
    AZ A: 10.1.0.0/24のプライベートサブネット

  • AZ B: 10.2.0.0/24 のパブリックサブネット
    AZ B: 10.3.0.0/24 のプライベートサブネット

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

1.    Amazon EC2 コンソールを開きます。

2.    パブリックサブネットをロードバランサーに関連付けます (「Application Load Balancer」、「Network Load Balancer」、または「Classic Load Balancer」を参照してください)

3.    バックエンドインスタンスをロードバランサーに登録します (「Application Load Balancer の開始方法」、「Network Load Balancer の開始方法」、または「Classic Load Balancer を作成する」を参照してください)

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

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

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

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

  • ロードバランサーのセキュリティグループは sg-1234567a
  • イングレスルールは HTTP TCP 80 0.0.0.0/0
  • インスタンスセキュリティグループは sg-a7654321
  • イングレスルールは HTTP TCP 80 sg-1234567a

この場合、ルールは次のようになります。

タイププロトコルポート範囲送信元
HTTPTCP80sg-1234567a

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

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

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

関連情報

Elastic Load Balancing の仕組み

Linux インスタンス用の Amazon EC2 セキュリティグループ

Windows インスタンス用の Amazon EC2 セキュリティグループ