2017-08-16 7 views
0

Elastic Beanstalk CLIを使用してSpringブートアプリケーションをEBにデプロイします。 HTTPSを設定しない限り、すべて正常に動作します。CLIを使用してHTTPSを終了するようにElastic beanstalkクラシックロードバランサを設定する方法

userdocsによると、私がする必要がある必要があるすべては私がヘルスチェックが失敗し、その構成と私の環境を作成する場合、しかし、以下の内容

option_settings: 
    aws:elb:listener:443: 
     SSLCertificateId: <arn for cert> 
     ListenerProtocol: HTTPS 
     InstancePort: 5000 
     InstanceProtocol: HTTP 
    aws:elb:listener:80: 
     ListenerEnabled: false 

と私の.ebextensionsフォルダ内の.configファイルを作成していますELBと通信することができないためです。 AWSコンソールの環境を見ると、HTTPリスナーポートとHTTPSリスナーポートの両方が無効になっており、SSL証明書はロードバランサに関連付けられていません。

振る舞いの変化を考えれば、設定が何らかの形で間違っていても、.configファイルが選択されて適用されていると言うのは安全だと思います。

この段階でEBウェブGUIから手動でHTTPSリスナーを有効にしようとすると、次のエラーが発生します。

LoadBalancerHTTPSPort: You have specified both the @deprecated(:default.aws:elb:loadbalancer:LoadBalancerHTTPSPort) option as well as one in the new aws:elb:listener:443 namespace. The :default.aws:elb:loadbalancer:LoadBalancerHTTPSPort option will be ignored. 

私が望む場合でも手動で有効にすることはできません。

カスタムnginx confファイルのアップロードに関する質問/回答がここにあります。私はそれらが現在は時代遅れであり、適用可能ではないと信じていますが、誰かが私にEBの現在の状態を与えて働く何かを指し示すことができるなら、私はそのことに満足しています。

私は(自己署名)証明書をホストするためにACMを使用してい

下記参照のためのいくつかの情報。私の目的のために、私はこれをテストする間、自己署名証明書は大丈夫です。ドキュメントでは自己署名証明書を使って言及していますが、それがロードバランサを混乱させるかどうかはわかりません。私は後で適切な証明書に移動します。

私は環境を作成するために実行するコマンドラインは

eb create <name> -c <name> --elb-type classic 

EB CLIのバージョン情報

eb --version 
EB CLI 3.10.5 (Python 2.7.1) 

答えて

0

二つの可能である

branch-defaults: 
    default: 
    environment: <name> 
deploy: 
    artifact: target/<jar name>.jar 
global: 
    application_name: <App name> 
    branch: null 
    default_ec2_keyname: <key name> 
    default_platform: Java 8 
    default_region: eu-west-1 
    include_git_submodules: true 
    instance_profile: null 
    platform_name: null 
    platform_version: null 
    profile: eb-cli 
    repository: null 
    sc: null 
    workspace_type: Application 

次のように私の.elasticbeanstalk/config.yamlが見えますソリューション:

1.)

サーバ証明書をACMにアップロードしましたか? ACMやACMにアップロードする必要のある第三者で作成したかどうかは不明です。 http://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html

2)

Elastic Beanstalkで中のconfigsの優先順位を確認してください。

.ebextensionsの優先度が低いため、これらのオプション値は優先度の高いオプション設定によって上書きできます。

解決策は、コンソールGUIで証明書を更新することです。GUIにナビゲートhttps://aws.amazon.com/ あなたの弾力性のある豆腐のGUIに移動 - >あなたの環境をクリック - >左サイドバーの設定をクリック - > "ロードバランシング"の横にある歯車のアイコンをクリックします。

これで、ELBのオプション設定の一覧が表示されます。プルダウンメニューから[SSL証明書ID]を選択し、保存します。

+0

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html#configuration-options-precedence –

+0

これは質問に対する回答ではありません。十分な[評判](https://stackoverflow.com/help/whats-reputation)があれば、[投稿にコメントする]ことができます(https://stackoverflow.com/help/privileges/comment)。代わりに、[質問者からの明確化を必要としない回答を提供する](https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-c​​an- i-do-代わりに)。 - [レビューの投稿](/レビュー/低品質の投稿/ 17147557) –

関連する問題