![](/img/trans.png)
[英]Is it possible to configure an Application Load Balancer with Elastic Beanstalk ebextensions?
[英]How to add Application Load Balancer Fixed Response to AWS Elastic Beanstalk with .ebextensions
为了将我的在AWS ElasticBeanstalk上提供的API端点列入白名单,请执行以下操作:
当我收到意外请求时,我想从我的Elastic Beanstalk环境中的应用程序负载平衡器(ALB)返回固定的响应 。
我需要以可复制和自动化的方式执行此操作。 目前,我使用CloudFormation模板和.ebextensions配置我的Elastic Beanstalk应用程序。
我知道如何通过添加侦听器规则在控制台中手动配置固定响应:
我无法在.ebextensions中找到支持此功能的选项设置的组合。
另外,除非我缺少任何内容,否则CloudFormation似乎通过此处环境中的OptionSettings公开了与.ebextensions相同的选项。
是否可以在.ebextensions或CloudFormation中配置固定响应?
如果不是,是否有另一种自动化的友好方法来完成此任务? 也许通过AWS API?
ElasticBeanstalk使您可以通过.ebextensions配置文件中的Resources标签使用CloudFormation。
EB使用CloudFormation部署您的应用程序。 Resources标签使您可以添加到此CloudFormation模板。 它还允许您引用EB模板的输出资源。
要配置应用程序负载平衡器以发送404错误网址请求而不接触应用程序服务器,请将应用程序负载平衡器侦听器规则添加到:
这是YAML。
将其保存在.ebextensions / X.config中,然后运行“ eb deploy”。 AWS机制负责使用新的侦听器更新环境。
Resources:
validAPIRequestListenerRule:
Type: AWS::ElasticLoadBalancingV2::ListenerRule
Properties:
Actions:
- Type: forward
TargetGroupArn: { "Ref" : "AWSEBV2LoadBalancerTargetGroup" }
Conditions:
- Field: path-pattern
PathPatternConfig:
Values:
- "/api/*"
ListenerArn: { "Ref" : "AWSEBV2LoadBalancerListener443" }
Priority: 10001
defaultListenerRejectingInvalidUrls:
Type: AWS::ElasticLoadBalancingV2::ListenerRule
Properties:
Actions:
- Type: fixed-response
FixedResponseConfig:
StatusCode: 404
ContentType: "application/json"
MessageBody: "Fixed"
Conditions:
- Field: path-pattern
PathPatternConfig:
Values:
- "*"
ListenerArn: { "Ref" : "AWSEBV2LoadBalancerListener443" }
Priority: 40000
笔记
服务:AmazonCloudFormation,消息:模板格式错误:模板的资源块中的未解决资源依赖项[AWSEBV2LoadBalancerListener]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.