既存のAWS Elastic Beanstalk環境を(従来の環境ではなく)Application Load Balancerに変更できるかどうか誰かが知っていますか?.
私の知る限り、AWS WAFとDDOS "シールド"で保護できるのはアプリケーションELBだけなので、既存のEBアプリはこれらの機能を利用できません。
AWSドキュメントごとにこんにちは:
Elastic Beanstalk環境管理コンソールは、クラシックロードバランサーを使用したElastic Beanstalk環境の作成と管理のみをサポートします。その他のオプションについては、 Application Load Balancer および Network Load Balancer。 を参照してください。
また
注環境の作成時にのみ、ロードバランサータイプを設定できます。 ( AWSドキュメントの参照 )
したがって、 AWS CLI を介してElastic Beanstalkにアプリケーションをデプロイすると、次のようになります。
試す
eb create test-env --elb-type network
または
eb create test-env --elb-type application
既存の環境のロードバランサータイプを変更することはできませんが、次のプロセスを使用して、(クラシックではなく)アプリケーションロードバランサーを使用してクローン環境を作成しました。
eb config get [save name]
では、.elasticbeanstalk\saved_configs
でファイルを取得します。OptionSettings: aws:elasticbeanstalk:environment: LoadBalancerType: application
(もしあれば)削除してください:
aws:elb:loadbalancer: CrossZone: true aws:elb:policies: ConnectionDrainingEnabled: true aws:elb:listener:443: [whatever]
この機会を利用して、アップグレードなどの他の変更を行うことができますPlatformArn
eb config put [new save name]
。.ebextensions
をLoadBalancerType: application
に更新し、オプションでelbv2にリスナーを追加します。後でコンソールで手動で作成することもできます。aws:elbv2:listener:443: ListenerEnabled: true SSLPolicy: ELBSecurityPolicy-TLS-1-2-2017-01 SSLCertificateArns: [your cert id] DefaultProcess: default Protocol: HTTPS Rules: ''
eb create [new env name] --cfg [new save name]
で新しい環境を作成しますこれで、古い環境と並んで異なるロードバランサータイプの新しい環境ができました。テストを実行し、さらに構成を変更してから、問題がなければ、CNAMEを交換して、以前の環境を終了できます。
既存のアプリケーションを変更してアプリケーションロードバランサーを使用する最も簡単な方法は、コンソールとCLIの両方を使用することです。
<saved-config-name>
として使用します。<app-version>
として使用します。eb create <new-environment-name> --elb-type application --cfg <saved-config-name> --version <app-version>
を実行します