AWS Elastic Beanstalk アプリケーションをデプロイする際、ロードバランサーに独自のセキュリティグループを使用するにはどうすればよいですか?

最終更新日: 2019 年 8 月 5 日

AWS Elastic Beanstalk アプリケーション用に負荷分散された Auto Scaling の環境タイプを作成して、ロードバランサーに独自のセキュリティグループを指定するにはどうすればよいですか?

簡単な説明

デフォルトでは、Elastic Beanstalk がロードバランサーのセキュリティグループを作成します。ロードバランサーにアタッチする既存のセキュリティグループ ( ManagedSecurityGroup とも呼ばれる) がある場合、このデフォルトの動作をオーバーライドできます。Elastic Beanstalk にデフォルトのセキュリティグループを作成させないようにするには、アプリケーションデプロイパッケージ内の .ebextensions ディレクトリに 1 つ以上の設定ファイルを追加する必要があります。

解決方法

.ebextensions を使用して、Elastic Load Balancing に既存のセキュリティグループをアタッチするよう、Elastic Beanstalk サービスに指示します。次に、Elastic Beanstalk が作成したデフォルトのセキュリティグループを削除します。

1.    Elastic Beanstalk に既存のセキュリティグループを使用するよう指示する前に、使用する既存のセキュリティグループがあることを確認します。または、Elastic Beanstalk 環境のロードバランサー用に新しいセキュリティグループを作成することもできます。

2.    セキュリティグループの ID をメモしておきます。(たとえば、sg-123456)。

3.    ローカルのアプリケーションコードディレクトリに .ebextensions/ ディレクトリを作成します。

注: 詳細については、「設定ファイル (.ebextensions) による高度な環境のカスタマイズ」をご参照ください。

4.    .ebextensions/ ディレクトリに elbsg.config という名前のファイルを作成します。

5.    elbsg.config ファイルを更新します。Elastic Beanstalk 環境用のロードバランサータイプに基づいて行ってください。

Classic Load Balancer タイプの場合:

option_settings:
    aws:elb:loadbalancer:
        ManagedSecurityGroup: "sg-123456"

注: 既存の環境を更新する場合は、SecurityGroups 設定を使用して、次の例に基づきデフォルトのセキュリティグループを削除します。

option_settings:
    aws:elb:loadbalancer:
    	ManagedSecurityGroup: "sg-123456"
        SecurityGroups: "sg-123456"

Application Load Balancer または Network Load Balancer の場合:

option_settings:
    aws:elbv2:loadbalancer:
        ManagedSecurityGroup: "sg-123456"

注: 既存の環境を更新する場合は、SecurityGroups 設定を使用して、次の例に基づきデフォルトのセキュリティグループを削除します。

option_settings:
    aws:elbv2:loadbalancer:
    	ManagedSecurityGroup: "sg-123456"
        SecurityGroups: "sg-123456"

注意: SecurityGroups 設定を使用して、ロードバランサーに新しくセキュリティグループを追加することができます。

6.    コードと新しい .ebextensions/ ディレクトリをともに、新しいアプリケーションバージョンとして Elastic Beanstalk 環境にデプロイします。

デプロイ後、セキュリティグループがロードバランサーに添付されます。環境およびロードバランサーが、デフォルトのロードバランサーセキュリティグループではなく、既存のセキュリティグループを正常に使用しているはずです。


このページは役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合