Arj*_*jan 5 amazon-web-services amazon-elastic-beanstalk aws-cdk
要创建 Elastic Beanstalk 应用程序和环境,我有以下代码:
// this: the class instance extending Construct
const application = new CfnApplication(this, 'Application', {
applicationName: 'some-name'
});
const environment = new CfnEnvironment(this, 'Environment', {
environmentName: 'production',
applicationName: application.applicationName,
platformArn: 'arn::of::plaform',
solutionStackName: 'a-valid-stack-name'
});
Run Code Online (Sandbox Code Playgroud)
在 Route53 中创建别名记录需要一个目标实现IAliasRecordTarget
const record = new AliasRecord(this, 'ARecord', {
recordName: 'a-record',
target: ?
zone: zone
});
Run Code Online (Sandbox Code Playgroud)
如何使用环境作为目标?在 aws-cdk 存储库中寻找实现 IAliasRecordTarget 的类,除了 Cloudfront 分发和基本负载均衡器之外,不会产生很多候选对象
该prop 需要一个带有返回,和target的函数的对象(请参阅AWS::Route53::RecordSet AliasTarget和的实现)。bind()dnsNameevaluateTargetHealthhostedZoneIdAliasRecord
您可以执行以下操作:
const record = new AliasRecord(this, 'ARecord', {
recordName: 'a-record',
target: {
bind: (): AliasRecordTargetProps => ({
dnsName: environment.attrEndpointUrl,
hostedZoneId: 'Z14LCN19Q5QHIC' // for us-east-2
})
},
zone: zone
});
Run Code Online (Sandbox Code Playgroud)
如果使用其他区域,请参阅AWS Elastic Beanstalk 终端节点和配额以获取托管区域 ID 的列表,或者在环境负载均衡时使用Elastic Load Balancing 终端节点和配额。
更新 2018-05-28:asAliasRecordTarget现在版本bind为aws-cdk0.32.0
| 归档时间: |
|
| 查看次数: |
2347 次 |
| 最近记录: |