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

如何修改AWS CloudFormation模板让EC2仅挂载gp3 EBS卷

解决CloudFormation部署EC2时仅挂载gp3 EBS卷的问题

你的模板只定义了附加卷/dev/sdf为gp3类型,但EC2实例的根卷会默认继承所用AMI的卷类型(通常是gp2),因此会同时存在gp2和gp3两种卷。要让实例仅挂载gp3卷,需要在BlockDeviceMappings中同时覆盖根设备的配置,将其也指定为gp3类型。

修改后的模板片段

"MyServer":{
   "Type":"AWS::EC2::Instance",
   "DependsOn":[
      "ExecuteCheckCompliance"
   ],
   "Properties":{
      "ImageId":{
         "Fn::FindInMap":[
            "Ami",
            {
               "Ref":"AWS::Region"
            },
            "ImageId"
         ]
      },
      "KeyName":{
         "Ref":"keyPairName"
      },
      "SecurityGroupIds":[
         {
            "Ref":"InstanceSecurityGroup"
         }
      ],
      "IamInstanceProfile":{
         "Ref":"RootInstanceProfile"
      },
      "InstanceType":{
         "Fn::FindInMap":[
            "Model2InstanceType",
            {
               "Ref":"Model"
            },
            "InstanceType"
         ]
      },
      "SubnetId":{
         "Ref":"Subnet"
      },
      "DisableApiTermination":"True",
      "BlockDeviceMappings":[
         // 覆盖根设备,指定为gp3
         {
            "DeviceName": "/dev/sda1", // 替换为你的AMI根设备名称,可在AWS控制台AMI详情中查看
            "Ebs":{
               "DeleteOnTermination":"True",
               "VolumeType":"gp3",
               "VolumeSize": 30 // 根据需求调整根卷大小
            }
         },
         // 原有gp3附加卷
         {
            "DeviceName":"/dev/sdf",
            "Ebs":{
               "DeleteOnTermination":"True",
               "VolumeType":"gp3",
               "VolumeSize": 500
            }
         }
      ]
   }
}

关键说明

  • 根设备名称:不同AMI的根设备名称可能不同(如/dev/xvda或/dev/sda1),可在AWS控制台进入目标AMI的详情页面,查看“根设备名称”字段获取准确值。
  • 卷大小:根卷大小可根据业务需求调整,若想保留AMI默认的根卷大小,也可以去掉VolumeSize参数,CloudFormation会自动继承AMI的配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 16:23:28