Terraform管理AWS EC2时,哪些配置变更需重建实例?
AWS EC2实例Terraform管理中需重建的配置变更列表
以下是使用Terraform管理AWS EC2实例时,必须销毁重建实例才能生效的配置变更项,同时附带可原地更新的常见配置对比,帮你规划基础设施更新:
一、核心实例属性类
- AMI ID(
ami):根卷镜像在实例创建时绑定,无法在运行中替换根镜像,修改后必须重建 - 实例类型(
instance_type):硬件规格(CPU、内存、网络带宽等)属于实例生命周期绑定属性,不支持热修改,必须重建 - CPU选项(
cpu_options):修改核心数、线程模式(threads_per_core)时,若实例类型不支持动态CPU调整,需重建实例 - 虚拟化类型(
virtualization_type):切换hvm/paravirtual虚拟化模式,需重建实例 - 密钥对名称(
key_name):密钥对在实例创建时注入系统,无法在运行中更换,修改后必须重建 - 平台类型(
platform):切换Linux/Windows等平台,需重建实例
二、根卷相关配置类
- 根卷快照ID(
root_block_device.snapshot_id):修改根卷的基础快照会改变根卷初始内容,无法原地更新,必须重建 - 根卷加密状态(
root_block_device.encrypted):实例创建后无法修改根卷的加密属性,修改需重建
三、网络核心属性类
- 主网卡静态私有IP(
private_ip):实例创建时指定的静态私有IP,运行中无法修改,变更需重建 - 主网卡设备索引(
network_interface.device_index):调整主网卡的设备索引或替换主网卡,需重建实例 - 静态IPv6地址(
ipv6_addresses):创建时指定的固定IPv6地址,修改需重建(动态分配的ipv6_address_count可原地调整)
可原地更新无需重建的常见配置(对比参考)
- 安全组(
vpc_security_group_ids):Terraform会直接调用AWS API更新实例关联的安全组 - 附加EBS卷(
ebs_block_device):新增/修改附加卷的大小、类型等,可原地执行 - 附加非主网络接口:新增或修改附加网卡,无需重建实例
- IAM实例配置文件(
iam_instance_profile):可直接替换实例关联的IAM角色 - 实例标签(
tags):直接更新标签,无需重建 - 终止保护状态(
disable_api_termination):可原地修改
内容的提问来源于stack exchange,提问作者Zaha1337
相关产品推荐
相关产品推荐

