You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Jenkins部署Spring Boot到AWS Elastic Beanstalk遇标签报错

解决Elastic Beanstalk部署时Tag key 'Name'被保留无法修改的问题

我尝试使用Jenkins将Spring Boot应用部署至AWS Elastic Beanstalk时遇到如下错误,此前部署无异常,近期才出现该问题。

botocore.exceptions.ClientError: An error occurred (InvalidParameterValue) when calling the CreateEnvironment operation: Tag key 'Name' is reserved and can't be modified.

以下是用于搭建CloudFormation栈的配置:

[
    {
      "OptionName": "ELBSubnets",
      "Namespace": "aws:ec2:vpc",
      "ExportName": "apis-nonprod-vpc-apis-sit-vpc::PublicSubnets"
    },
    {
      "OptionName": "Subnets",
      "ResourceName": "AWSEBAutoScalingGroup",
      "Namespace": "aws:ec2:vpc",
      "ExportName": "apis-nonprod-vpc-apis-sit-vpc::PrivateSubnets"
    },
    {
      "OptionName": "VPCId",
      "ResourceName": "AWSEBLoadBalancerSecurityGroup",
      "Namespace": "aws:ec2:vpc",
      "ExportName": "apis-nonprod-vpc-apis-sit-vpc::VpcId"
    },
    {
      "OptionName": "EC2KeyName",
      "Namespace": "aws:autoscaling:launchconfiguration",
      "Value": "develop-apis-sit"
    },
    {
      "Namespace": "aws:elasticbeanstalk:customoption",
      "OptionName": "SecretBucket",
      "Value": "apis-sit-secrets"
    },
    {
      "OptionName": "spring.profiles.active",
      "Namespace": "aws:elasticbeanstalk:application:environment",
      "Value": "sit"
    },
    {
      "OptionName": "IamInstanceProfile",
      "Namespace": "aws:autoscaling:launchconfiguration",
      "ExportName": "app-dev::EbsInstanceIamInstanceProfileName"
    },
    {
      "OptionName": "SSMParameterNamespace",
      "Namespace": "aws:elasticbeanstalk:customoption",
      "Value": "app-dev"
    },
    {
      "OptionName": "BatchSize",
      "Namespace": "aws:elasticbeanstalk:command",
      "Value": "1"
    },
    {
      "OptionName": "AppDynamicsAgentBucket",
      "Namespace": "aws:elasticbeanstalk:customoption",
      "Value": "appdynamics-agents-nonprod"
    }
]

解决方案

  • 检查Jenkins部署脚本或Elastic Beanstalk插件,确认是否主动添加了Name标签。AWS会自动为Elastic Beanstalk环境资源生成Name标签,手动修改或添加该标签会触发错误。
  • 查看CloudFormation栈的标签配置,若在栈级别或资源级别定义了Name标签,直接移除该配置,交由AWS自动管理。
  • 检查Elastic Beanstalk应用的环境配置,确认是否通过控制台、CLI或API设置了自定义Name标签,这类操作会被AWS拦截,需删除相关设置。
  • 若使用了第三方部署工具(如Terraform、CodeDeploy),检查工具配置中是否包含Name标签的修改逻辑,移除对应配置即可。

补充说明

AWS将Name标签作为保留键,用于自动标识Elastic Beanstalk环境的关联资源(如EC2实例、负载均衡器等),用户无法手动修改或覆盖该标签。近期出现问题大概率是部署流程中新增了标签配置逻辑,或是AWS更新了标签验证规则,导致之前的隐性操作现在触发了错误。

内容的提问来源于stack exchange,提问作者JsbDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 23:00:03