ElasticBeanstalk:インスタンスタイプとセキュリティグループを設定ファイルから設定する


10

.ebextensions/*.configアプリケーションバンドルのルートにあるファイルを介してインスタンスタイプとセキュリティグループを定義するのに問題があります。

簡単に言うと、次のような2つの構成ファイルがあります。

.ebextensions/01-options.config

option_settings:
  [...]
  - namespace: 'aws:elasticbeanstalk:application:environment'
    option_name: CONFIG_FILE_ONE
    value: '01-options.config'
  [...]

.ebextensions/02-app-test-env.config

option_settings:
  - namespace: 'aws:elasticbeanstalk:application:environment'
    option_name: NODE_ENV
    value: 'Test'

  - namespace: 'aws:elasticbeanstalk:application:environment'
    option_name: CONFIG_FILE_TWO
    value: '02-app-test-env'

  - namespace: aws:autoscaling:launchconfiguration
    option_name: InstanceType
    value: t2.micro

  - namespace: aws:autoscaling:launchconfiguration
    option_name: SecurityGroups
    value: sg-ys75dfs2

今、環境変数が設定されているので、両方の構成ファイルを読み取っていますが、セキュリティグループとインスタンスタイプが設定されていません-環境を再構築しても、インスタンスはt1.microデフォルトのセキュリティグループと同じように作成されます-私の設定適用されていません。

ここで何が欠けていますか?.configファイルを使用してインスタンスタイプを定義するにはどうすればよいですか?


アプリの稼働後にログを確認しましたか?多分それはあなたの選択肢の1つに不満を言ったのですか?これを読んだ後、この文が原因で、その表にリストされている名前空間のみがサポートされているという印象を受けました[...] The following table displays the namespaces that are supported for each container type. [...]。しかし、それが事実であるかどうかは奇妙に思えます。
Bazze

回答:


11

その構成ファイルにあるものをlaunchconfiguration名前空間に使用できるはずですが、機能している最初の2つと同じように、名前空間と値を一重引用符で囲む必要があります。

- namespace: 'aws:autoscaling:launchconfiguration'
  option_name: InstanceType
  value: 't2.micro'

- namespace: 'aws:autoscaling:launchconfiguration'
  option_name: SecurityGroups
  value: 'sg-ys75dfs2'

また、eb cli 3.xを使用している場合は、必ずebログでエラーを監視してください。お役に立てば幸いです。


私はこれを試してみましたが、元のバージョンと引用付きのバージョンの両方です。どちらもうまくいきませんでした。MinSizeやMaxSizeなど、.configの他の設定が機能しています。代わりにeb create -i 't2.medium'を使用する必要がありましたか?!
Charles

@Charles、ええ、私はInstanceTypeも機能しなくなりました。問題があるかどうかはわかりません。先ほど述べたように、他のインスタンス関連のオプションが機能するためです。
タイラー

確認してくださってありがとうございます。AWSフォーラムに質問を投稿します...答えを見つけたらレポートを返します。
Charles

AWSフォーラムの質問:forums.aws.amazon.com/thread.jspa?threadID
Charles

1
だから私は問題がここにあるのかもしれないと思う、特定の項目がAPIレベルで設定されているように見え、環境の作成後にそれらを更新する必要があります。 If you use the Elastic Beanstalk console or EB CLI to create environments, and you want to set these options using configuration files or saved configurations, you can remove the options settings with the AWS CLI or EB CLI after the environment is created.docs.aws.amazon.com/elasticbeanstalk/latest/dg/...
タイラー

2

コメントで述べたように、彼らはまた、環境レベル、(との設定で設定されている場合は、設定ファイル内の設定は無視さInstanceType、自動的に作成された環境レベルで)。

設定を構成ファイルに保存したい場合は、環境から設定を削除する必要があります。これを行うにInstanceTypeは、次のコマンドを使用します。

aws elasticbeanstalk update-environment --environment-name my-env --options-to-remove Namespace=aws:autoscaling:launchconfiguration,OptionName=InstanceType

環境レベル設定を変更する他の方法については、AWSドキュメントも参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.