gpt4 book ai didi

amazon-web-services - 使用 AWS Cloud Formation 模板通过 Java 示例应用程序创建包含新应用程序的 Elastic Beanstalk 环境

转载 作者:行者123 更新时间:2023-12-03 07:22:30 25 4
gpt4 key购买 nike

我对这个有点困惑。我设法使用自己的 Cloud Formation 模板创建弹性 beanstalk 环境,但我只能为现有应用程序启动它。如何使用相同的资源 (AWS::ElasticBeanstalk::Environment) 来创建新应用程序,以及如何使用相同的模板将标准 AWS Java 示例应用程序部署到这个新环境。

如果我使用这个:

Resources:
MyEB:
Type: AWS::ElasticBeanstalk::Environment
Properties:
ApplicationName: customerApp

将会出现错误,提示 customerApp 不存在。

根据 Marcin 的要求,我的完整模板删除了值,以使其更短(如果有意义的话):

Resources:
MyEB:
Type: AWS::ElasticBeanstalk::Environment
Properties:
ApplicationName: customerApp
Description: Test
PlatformArn: arn:aws:elasticbeanstalk:eu-west-1::platform/Tomcat 8.5 with Corretto 8 running on 64bit Amazon Linux 2/4.2.17
EnvironmentName: iw-test3
OptionSettings:
- Namespace: aws:autoscaling:launchconfiguration
OptionName: ImageId

- Namespace: aws:autoscaling:launchconfiguration
OptionName: DisableIMDSv1

- Namespace: aws:elasticbeanstalk:application:environment
OptionName: username

- Namespace: aws:elasticbeanstalk:application:environment
OptionName: password

- Namespace: aws:elasticbeanstalk:application:environment
OptionName: rest_client_id

- Namespace: aws:elasticbeanstalk:application:environment
OptionName: rest_client_secret

- Namespace: aws:ec2:vpc
OptionName: VPCId

- Namespace: aws:ec2:vpc
OptionName: Subnets

- Namespace: aws:ec2:vpc
OptionName: ELBSubnets

- Namespace: aws:elbv2:loadbalancer
OptionName: SharedLoadBalancer

- Namespace: aws:elbv2:listener:443
OptionName: Rules

- Namespace: aws:elasticbeanstalk:environment:process:default
OptionName: HealthCheckPath
Value: /health

- Namespace: aws:elasticbeanstalk:managedactions
OptionName: ManagedActionsEnabled
Value: true

- Namespace: aws:elasticbeanstalk:managedactions
OptionName: PreferredStartTime

- Namespace: aws:elasticbeanstalk:managedactions:platformupdate
OptionName: UpdateLevel

- Namespace: aws:ec2:instances
OptionName: InstanceTypes

- Namespace: aws:ec2:instances
OptionName: SupportedArchitectures

- Namespace: aws:autoscaling:asg
OptionName: MaxSize

- Namespace: aws:elasticbeanstalk:environment:proxy
OptionName: ProxyServer

- Namespace: aws:elasticbeanstalk:environment
OptionName: ServiceRole

- Namespace: aws:elasticbeanstalk:environment
OptionName: LoadBalancerIsShared

- Namespace: aws:elasticbeanstalk:environment
OptionName: LoadBalancerType

- Namespace: aws:ec2:vpc
OptionName: AssociatePublicIpAddress

- Namespace: aws:autoscaling:launchconfiguration
OptionName: IamInstanceProfile

- Namespace: aws:elbv2:listenerrule:dnsRule
OptionName: PathPatterns

- Namespace: aws:elbv2:listenerrule:dnsRule
OptionName: Priority

- Namespace: aws:elbv2:listenerrule:dnsRule
OptionName: Process

- Namespace: aws:elbv2:listenerrule:dnsRule
OptionName: HostHeaders

更新

我添加了以下资源:

MyApplication:
Type: AWS::ElasticBeanstalk::Application
Properties:
Description: Test Application
MyApplicationVarsion:
Type: AWS::ElasticBeanstalk::ApplicationVersion
Properties:
ApplicationName: customerApp_IW
Description: Test Application Version
SourceBundle:
S3Bucket: !Sub "elasticbeanstalk-samples-${AWS::Region}"
S3Key: corretto.zip

现在遇到的错误是这样的:

Unable to download from S3 location (Bucket: elasticbeanstalk-samples-eu-west-1 Key: corretto.zip). Reason: Forbidden: S3Bucket=elasticbeanstalk-samples-eu-west-1, S3Key=corretto.zip (Service: AWSElasticBeanstalk; Status Code: 400; Error Code: InvalidParameterCombination; Request ID: 8abc30ac-fd88-4828-95bd-67e3ed69aebe; Proxy: null)

最佳答案

您必须定义自己的AWS::ElasticBeanstalk::ApplicationVersion 。然后定义 VersionLabel部署您的特定 zip。

关于amazon-web-services - 使用 AWS Cloud Formation 模板通过 Java 示例应用程序创建包含新应用程序的 Elastic Beanstalk 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73387648/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com