プライベート 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 を使用している場合は、設定の詳細について「ネットワークロードバランサーターゲットセキュリティグループのトラブルシューティング」を参照してください。バックエンドインスタンスのセキュリティグループで、次のいずれかからのターゲットグループのポートへのトラフィックが許可されていることを確認します。

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

関連情報

Elastic Load Balancing の仕組み

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

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

コメントはありません