本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
環境資訊清單 (env.yaml
)
您可於應用程式原始碼套件的根目錄內,納入 YAML 格式的環境資訊清單,藉此設定建立環境時可用的環境名稱、解決方案堆疊和環境連結。
此檔案格式可支援環境群組。欲使用群組,請於資訊清單內,將環境名稱的尾端指定為 + 符號。建立或更新環境時,請透過 --group-name
(AWS CLI) 或 --env-group-suffix
(EB CLI) 來指定群組名稱。如需群組的詳細資訊,請參閱建立和更新 Elastic Beanstalk 環境的群組。
下列範例資訊清單定義 Web 伺服器環境,其中包含其相依的工作者環境元件的連結。資訊清單會使用群組,以允許使用相同原始碼套件來建立多個環境:
~/myapp/frontend/env.yaml
AWSConfigurationTemplateVersion: 1.1.0.0
SolutionStack: 64bit Amazon Linux 2015.09 v2.0.6 running Multi-container Docker 1.7.1 (Generic)
OptionSettings:
aws:elasticbeanstalk:command:
BatchSize: '30'
BatchSizeType: Percentage
aws:elasticbeanstalk:sns:topics:
Notification Endpoint: me@example.com
aws:elb:policies:
ConnectionDrainingEnabled: true
ConnectionDrainingTimeout: '20'
aws:elb:loadbalancer:
CrossZone: true
aws:elasticbeanstalk:environment:
ServiceRole: aws-elasticbeanstalk-service-role
aws:elasticbeanstalk:application:
Application Healthcheck URL: /
aws:elasticbeanstalk:healthreporting:system:
SystemType: enhanced
aws:autoscaling:launchconfiguration:
IamInstanceProfile: aws-elasticbeanstalk-ec2-role
InstanceType: t2.micro
EC2KeyName: workstation-uswest2
aws:autoscaling:updatepolicy:rollingupdate:
RollingUpdateType: Health
RollingUpdateEnabled: true
Tags:
Cost Center: WebApp Dev
CName: front-A08G28LG+
EnvironmentName: front+
EnvironmentLinks:
"WORKERQUEUE" : "worker+"
支援下列按鍵。
-
AWSConfigurationTemplateVersion (必要) – 組態範本版本 (1.1.0.0)。
AWSConfigurationTemplateVersion: 1.1.0.0
-
平台 – 環境平台版本的 Amazon Resource Name (ARN)。您可依照 ARN 或解決方案堆疊名稱指定平台。
Platform: PlatformArn:
arn:aws:elasticbeanstalk:us-east-2::platform/Java 8 running on 64bit Amazon Linux/2.5.0
-
SolutionStack – 用於建立環境的解決方案堆疊全名。
SolutionStack:
64bit Amazon Linux 2017.03 v2.5.0 running Java 8
-
OptionSettings – 欲套用至環境的組態選項設定。例如,下列項目將執行個體類型設定為 t2.micro。
OptionSettings: aws:autoscaling:launchconfiguration: InstanceType: t2.micro
-
標籤 – 最多 47 個標籤可套用至環境內建立的資源。
Tags: Cost Center: WebApp Dev
-
EnvironmentTier – 欲建立的環境類型。以 Web 伺服器環境而言,此區段可以排除 (Web 伺服器為預設值)。以工作者環境而言,請使用下列。
EnvironmentTier: Name: Worker Type: SQS/HTTP
-
CName – 環境的 CNAME,名稱結尾包含 + 字元以啟用群組。
CName:
front-A08G28LG
+ -
EnvironmentName – 欲建立的環境名稱。名稱結尾包含 + 字元以啟用群組。
EnvironmentName:
front
+如需啟用群組,務必於建立環境時指定群組名稱。Elastic Beanstalk 會將群組名稱以連字號附加於環境名稱。以環境名稱
front+
和群組名稱dev
為例,Elastic Beanstalk 將建立的環境名稱為front-dev
。 -
EnvironmentLinks – 相依的變數名稱和環境名稱的對應。下列範例使得
worker+
環境成為依存項目,並指示 Elastic Beanstalk 將連結資訊儲存至名為WORKERQUEUE
的變數。EnvironmentLinks: "
WORKERQUEUE
" : "worker
+"連結變數的值取決於連結環境的類型。以 Web 伺服器環境而言,該連結是環境的 CNAME。以工作者環境而言,該連結是環境 Amazon Simple Queue Service (Amazon SQS) 佇列的名稱。
CName、EnvironmentName 和 EnvironmentLinks 鍵都可用於建立環境群組及其他環境的連結。EB CLI、AWS CLI 或軟體開發套件現均支援這些功能。