使用Terraform管理弹性网卡典型实践

私有网络 VPC

  • 产品定价
  • 功能发布记录
  • 产品描述
    • 相关概念
    • 产品特性
    • 使用限制
    • 产品优势
    • 产品介绍
    • 应用场景
  • 典型实践
    • Windows使用HAVIP配置主备多机
    • VPC自定义路由表实现流量安全互访
    • 配置自定义服务并使用服务网卡为其他VPC提供服务
    • 对等连接典型实践
    • 使用Terraform管理弹性网卡典型实践
    • 二层网关与专线接入ET组合构建IDC与云上VPC大二层网络
    • 网络层安全说明
    • 安全组配置实践(进阶篇)
    • HAVIP结合Keepalived实现主备多机高可用
    • 使用Keepalived在VPC实现高可用架构
    • 使用Terraform管理IPsec VPN网关典型实践
    • 安全组配置实践(入门篇)
  • 操作指南
    • 多用户访问控制
    • 子网
    • 网络拓扑
    • 使用IPv6
    • 标签管理
    • 路由表
    • VPC
    • 网卡
      • 高可用虚拟IP
      • 弹性网卡
      • 服务网卡
    • 网络诊断
      • 路径分析
      • 网关限速
      • 网络探测
      • 端口验通
      • 流量镜像
      • 流日志
    • 监控与运维
      • NAT网关实例诊断
    • 访问控制
      • ACL
      • 参数模版
      • 安全组
    • 网络连接
      • 二层网关
      • 专线网关
      • 对等连接
      • IPv6网关
      • VPN网关
        • SSL VPN网关
        • GRE VPN网关
        • IPsec VPN网关
      • NAT网关
        • 私网NAT网关
        • 公网NAT网关
  • 服务等级协议SLA
    • 服务网卡服务等级协议SLA
    • VPN网关服务等级协议SLA
    • IPv6网关服务等级协议SLA
    • 对等连接服务等级协议SLA
    • NAT网关服务等级协议SLA
  • API参考
    • 通用说明
    • 接口概览
    • API概述
    • 附录
    • 公共头和错误返回
    • 服务域名
    • API功能发布记录
    • ACL相关接口
      • 添加ACL规则
      • 更新ACL规则
      • 删除ACL规则
      • 查询ACL规则
      • 查询ACL
    • IPv6网关相关接口
      • IPv6网关带宽升降级
      • 创建IPv6网关
      • 更新IPv6网关限速策略
      • 删除Ipv6网关
      • 更新IPv6网关释放保护开关
      • 查询IPv6网关限速策略列表
      • 创建IPv6网关限速策略
      • 添加IPv6只出不进策略
      • 删除IPv6只出不进策略
      • 查询IPv6只出不进策略列表
      • 查询IPv6网关
      • 删除IPv6网关限速策略
    • 弹性网卡相关接口
      • 删除弹性网卡
      • 批量删除弹性网卡内网IP
      • 弹性网卡更新企业安全组
      • 创建弹性网卡
      • 弹性网卡卸载云产品实例
      • 删除弹性网卡辅助IP
      • 弹性网卡绑定EIP
      • 查询弹性网卡列表
      • 增加弹性网卡辅助IP
      • 弹性网卡更新普通安全组
      • 批量增加弹性网卡内网IP
      • 查询弹性网卡状态
      • 更新弹性网卡
      • 弹性网卡挂载云产品实例
      • 弹性网卡解绑EIP
      • 查询指定的弹性网卡
    • 参数模板相关接口
      • 创建IP地址族
      • 更新IP地址组
      • 查询指定的IP地址组
      • 更新IP地址族
      • 创建IP地址组
      • 查询IP地址族列表
      • 查询指定的IP地址族
      • IP地址组删除IP地址
      • IP地址组添加IP地址
      • 删除IP地址族
      • IP地址族移除IP地址组
      • 查询IP地址组列表
      • 删除IP地址组
      • IP地址族添加IP地址组
    • 子网相关接口
      • 更新子网
      • 创建预留网段
      • 查询预留网段列表
      • 删除预留网段
      • 查询指定子网
      • 创建子网
      • 查询子网列表
      • 删除子网
    • VPC相关接口
      • 关闭VPC中继
      • 删除VPC
      • 查询指定VPC
      • 创建VPC
      • 查询VPC列表
      • 查询VPC内产品占用IP
      • 开启VPC中继
      • 查询VPC内网IP
      • 更新VPC
    • 网关限速规则相关接口
      • 查看网关限速规则
      • 修改网关限速规则
      • 创建网关限速规则
      • 删除网关限速规则
    • 对等连接相关接口
      • 释放对等连接
      • 关闭对等连接同步DNS
      • 处理对等连接申请
      • 更新对等连接释放保护开关
      • 对等连接续费
      • 查看对等连接详情
      • 创建对等连接
      • 查询对等连接列表
      • 开启对等连接同步DNS
      • 对等连接带宽升降级
      • 更新对等连接本端接口名称和备注
    • 路由表相关接口
      • 查询路由规则
      • 删除路由规则
      • 主备切换
      • 创建路由规则
      • 更新路由规则
      • 查询路由表
    • VPN相关接口
      • VPN网关续费
      • 解绑EIP
      • 更新SSL-VPN用户
      • 删除VPN隧道
      • 查询VPN隧道
      • 删除SSL-VPN用户
      • 绑定EIP
      • 批量创建SSL-VPN用户
      • 更新VPN
      • 查询SSL-VPN用户
      • 删除SSL-VPN服务端
      • 释放VPN
      • 查询SSL-VPN服务端
      • 查询VPN列表
      • 更新SSL-VPN服务端
      • 更新VPN隧道
      • 创建VPN
      • 创建VPN隧道
      • 创建SSL-VPN服务端
      • 更新VPN释放保护开关
      • 查询VPN详情
    • 网络探测相关接口
      • 删除网络探测
      • 创建网络探测
      • 查询网络探测列表
      • 更新网络探测
      • 查询网络探测详情
    • NAT网关相关接口
      • 更新SNAT规则
      • 删除SNAT规则
      • 更新NAT网关名称
      • 查询NAT网关详情
      • 释放NAT网关
      • NAT网关解绑EIP
      • NAT网关绑定DNAT EIP
      • 创建SNAT规则
      • 创建DNAT规则
      • 更新DNAT规则
      • 更新NAT释放保护开关
      • NAT网关解绑DNAT EIP
      • 查询NAT网关列表
      • 删除DNAT规则
      • NAT网关绑定EIP
      • 查询SNAT规则
      • NAT网关绑定SNAT EIP
      • NAT网关续费
      • 批量创建DNAT规则
      • 批量创建SNAT规则
      • NAT网关变配
      • 查询DNAT规则
      • NAT网关解绑SNAT EIP
      • 创建NAT网关
    • 高可用虚拟IP相关接口
      • 高可用虚拟IP解绑EIP
      • 删除高可用虚拟IP
      • 高可用虚拟IP解绑实例
      • 高可用虚拟IP绑定EIP
      • 更新高可用虚拟IP
      • 查询指定的高可用虚拟IP
      • 创建高可用虚拟IP
      • 高可用虚拟IP绑定实例
      • 查询高可用虚拟IP列表
    • 服务网卡相关接口
      • 查询可挂载的公共服务
      • 查询服务网卡详情
      • 更新服务网卡
      • 查询服务网卡列表
      • 服务网卡更新企业安全组
      • 删除服务网卡
      • 服务网卡更新普通安全组
      • 创建服务网卡
    • 专线网关相关接口
      • 解绑物理专线
      • 创建专线网关
      • 绑定物理专线
      • 查询专线网关列表
      • 创建专线网关健康检查
      • 释放专线网关
      • 更新专线网关
      • 查询专线网关详情
    • 安全组相关接口
      • 普通安全组
        • 更新普通安全组规则
        • 删除普通安全组规则
        • 删除普通安全组
        • 授权普通安全组规则
        • 撤销普通安全组规则
        • 创建普通安全组
        • 查询普通安全组列表
        • 查看安全组详情
      • 企业安全组
        • 更新企业安全组规则
        • 创建企业安全组
        • 删除企业安全组规则
        • 授权企业安全组规则
        • 删除企业安全组
        • 查询企业安全组列表
  • 常见问题
    • 服务网卡常见问题
    • 路由表常见问题
    • VPC常见问题
    • NAT常见问题
    • 常见问题总览
    • VPN常见问题
  • VPC CLI
    • 路由表相关操作
    • VPC相关操作
    • 版本变更记录
    • 通过CLI使用VPC服务
    • 安装BCE-CLI
    • 配置BCE-CLI
    • 子网相关操作
  • SDK
    • Python-SDK
      • 企业安全组
      • VPN
      • 子网
      • ACL
      • IPv6Gateway
      • 高可用虚拟IP
      • 网络探测
      • 路由
      • 专线网关
      • 弹性网卡
      • VPC
      • 对等连接
      • 版本说明
      • NAT
      • 安装SDK工具包
      • 服务网卡
      • 安全组
      • 概述
    • Java-SDK
      • 企业安全组
      • VPN
      • 子网
      • ACL
      • 参数模版
      • 高可用虚拟IP
      • 网络探测
      • 专线网关
      • 弹性网卡
      • vpc
      • 对等连接
      • 版本说明
      • IPv6网关
      • NAT
      • 普通安全组
      • 安装SDK工具包
      • 服务网卡
      • Route
      • 概述
    • Go-SDK
      • VPN
      • 子网
      • 异常处理
      • ACL
      • IPv6Gateway
      • 高可用虚拟IP
      • 网络探测
      • 路由
      • 专线网关
      • 弹性网卡
      • VPC
      • 对等连接
      • 初始化
      • NAT
      • 安装SDK工具包
      • 服务网卡
      • 概述
      • 安全组
        • 企业安全组
        • 普通安全组
    • PHP-SDK
      • ACL
      • vpc
      • 对等连接
      • 版本说明
      • Subnet
      • NAT
      • 安装SDK工具包
      • Route
      • 安全组
      • 概述
所有文档
menu
没有找到结果,请重新输入

私有网络 VPC

  • 产品定价
  • 功能发布记录
  • 产品描述
    • 相关概念
    • 产品特性
    • 使用限制
    • 产品优势
    • 产品介绍
    • 应用场景
  • 典型实践
    • Windows使用HAVIP配置主备多机
    • VPC自定义路由表实现流量安全互访
    • 配置自定义服务并使用服务网卡为其他VPC提供服务
    • 对等连接典型实践
    • 使用Terraform管理弹性网卡典型实践
    • 二层网关与专线接入ET组合构建IDC与云上VPC大二层网络
    • 网络层安全说明
    • 安全组配置实践(进阶篇)
    • HAVIP结合Keepalived实现主备多机高可用
    • 使用Keepalived在VPC实现高可用架构
    • 使用Terraform管理IPsec VPN网关典型实践
    • 安全组配置实践(入门篇)
  • 操作指南
    • 多用户访问控制
    • 子网
    • 网络拓扑
    • 使用IPv6
    • 标签管理
    • 路由表
    • VPC
    • 网卡
      • 高可用虚拟IP
      • 弹性网卡
      • 服务网卡
    • 网络诊断
      • 路径分析
      • 网关限速
      • 网络探测
      • 端口验通
      • 流量镜像
      • 流日志
    • 监控与运维
      • NAT网关实例诊断
    • 访问控制
      • ACL
      • 参数模版
      • 安全组
    • 网络连接
      • 二层网关
      • 专线网关
      • 对等连接
      • IPv6网关
      • VPN网关
        • SSL VPN网关
        • GRE VPN网关
        • IPsec VPN网关
      • NAT网关
        • 私网NAT网关
        • 公网NAT网关
  • 服务等级协议SLA
    • 服务网卡服务等级协议SLA
    • VPN网关服务等级协议SLA
    • IPv6网关服务等级协议SLA
    • 对等连接服务等级协议SLA
    • NAT网关服务等级协议SLA
  • API参考
    • 通用说明
    • 接口概览
    • API概述
    • 附录
    • 公共头和错误返回
    • 服务域名
    • API功能发布记录
    • ACL相关接口
      • 添加ACL规则
      • 更新ACL规则
      • 删除ACL规则
      • 查询ACL规则
      • 查询ACL
    • IPv6网关相关接口
      • IPv6网关带宽升降级
      • 创建IPv6网关
      • 更新IPv6网关限速策略
      • 删除Ipv6网关
      • 更新IPv6网关释放保护开关
      • 查询IPv6网关限速策略列表
      • 创建IPv6网关限速策略
      • 添加IPv6只出不进策略
      • 删除IPv6只出不进策略
      • 查询IPv6只出不进策略列表
      • 查询IPv6网关
      • 删除IPv6网关限速策略
    • 弹性网卡相关接口
      • 删除弹性网卡
      • 批量删除弹性网卡内网IP
      • 弹性网卡更新企业安全组
      • 创建弹性网卡
      • 弹性网卡卸载云产品实例
      • 删除弹性网卡辅助IP
      • 弹性网卡绑定EIP
      • 查询弹性网卡列表
      • 增加弹性网卡辅助IP
      • 弹性网卡更新普通安全组
      • 批量增加弹性网卡内网IP
      • 查询弹性网卡状态
      • 更新弹性网卡
      • 弹性网卡挂载云产品实例
      • 弹性网卡解绑EIP
      • 查询指定的弹性网卡
    • 参数模板相关接口
      • 创建IP地址族
      • 更新IP地址组
      • 查询指定的IP地址组
      • 更新IP地址族
      • 创建IP地址组
      • 查询IP地址族列表
      • 查询指定的IP地址族
      • IP地址组删除IP地址
      • IP地址组添加IP地址
      • 删除IP地址族
      • IP地址族移除IP地址组
      • 查询IP地址组列表
      • 删除IP地址组
      • IP地址族添加IP地址组
    • 子网相关接口
      • 更新子网
      • 创建预留网段
      • 查询预留网段列表
      • 删除预留网段
      • 查询指定子网
      • 创建子网
      • 查询子网列表
      • 删除子网
    • VPC相关接口
      • 关闭VPC中继
      • 删除VPC
      • 查询指定VPC
      • 创建VPC
      • 查询VPC列表
      • 查询VPC内产品占用IP
      • 开启VPC中继
      • 查询VPC内网IP
      • 更新VPC
    • 网关限速规则相关接口
      • 查看网关限速规则
      • 修改网关限速规则
      • 创建网关限速规则
      • 删除网关限速规则
    • 对等连接相关接口
      • 释放对等连接
      • 关闭对等连接同步DNS
      • 处理对等连接申请
      • 更新对等连接释放保护开关
      • 对等连接续费
      • 查看对等连接详情
      • 创建对等连接
      • 查询对等连接列表
      • 开启对等连接同步DNS
      • 对等连接带宽升降级
      • 更新对等连接本端接口名称和备注
    • 路由表相关接口
      • 查询路由规则
      • 删除路由规则
      • 主备切换
      • 创建路由规则
      • 更新路由规则
      • 查询路由表
    • VPN相关接口
      • VPN网关续费
      • 解绑EIP
      • 更新SSL-VPN用户
      • 删除VPN隧道
      • 查询VPN隧道
      • 删除SSL-VPN用户
      • 绑定EIP
      • 批量创建SSL-VPN用户
      • 更新VPN
      • 查询SSL-VPN用户
      • 删除SSL-VPN服务端
      • 释放VPN
      • 查询SSL-VPN服务端
      • 查询VPN列表
      • 更新SSL-VPN服务端
      • 更新VPN隧道
      • 创建VPN
      • 创建VPN隧道
      • 创建SSL-VPN服务端
      • 更新VPN释放保护开关
      • 查询VPN详情
    • 网络探测相关接口
      • 删除网络探测
      • 创建网络探测
      • 查询网络探测列表
      • 更新网络探测
      • 查询网络探测详情
    • NAT网关相关接口
      • 更新SNAT规则
      • 删除SNAT规则
      • 更新NAT网关名称
      • 查询NAT网关详情
      • 释放NAT网关
      • NAT网关解绑EIP
      • NAT网关绑定DNAT EIP
      • 创建SNAT规则
      • 创建DNAT规则
      • 更新DNAT规则
      • 更新NAT释放保护开关
      • NAT网关解绑DNAT EIP
      • 查询NAT网关列表
      • 删除DNAT规则
      • NAT网关绑定EIP
      • 查询SNAT规则
      • NAT网关绑定SNAT EIP
      • NAT网关续费
      • 批量创建DNAT规则
      • 批量创建SNAT规则
      • NAT网关变配
      • 查询DNAT规则
      • NAT网关解绑SNAT EIP
      • 创建NAT网关
    • 高可用虚拟IP相关接口
      • 高可用虚拟IP解绑EIP
      • 删除高可用虚拟IP
      • 高可用虚拟IP解绑实例
      • 高可用虚拟IP绑定EIP
      • 更新高可用虚拟IP
      • 查询指定的高可用虚拟IP
      • 创建高可用虚拟IP
      • 高可用虚拟IP绑定实例
      • 查询高可用虚拟IP列表
    • 服务网卡相关接口
      • 查询可挂载的公共服务
      • 查询服务网卡详情
      • 更新服务网卡
      • 查询服务网卡列表
      • 服务网卡更新企业安全组
      • 删除服务网卡
      • 服务网卡更新普通安全组
      • 创建服务网卡
    • 专线网关相关接口
      • 解绑物理专线
      • 创建专线网关
      • 绑定物理专线
      • 查询专线网关列表
      • 创建专线网关健康检查
      • 释放专线网关
      • 更新专线网关
      • 查询专线网关详情
    • 安全组相关接口
      • 普通安全组
        • 更新普通安全组规则
        • 删除普通安全组规则
        • 删除普通安全组
        • 授权普通安全组规则
        • 撤销普通安全组规则
        • 创建普通安全组
        • 查询普通安全组列表
        • 查看安全组详情
      • 企业安全组
        • 更新企业安全组规则
        • 创建企业安全组
        • 删除企业安全组规则
        • 授权企业安全组规则
        • 删除企业安全组
        • 查询企业安全组列表
  • 常见问题
    • 服务网卡常见问题
    • 路由表常见问题
    • VPC常见问题
    • NAT常见问题
    • 常见问题总览
    • VPN常见问题
  • VPC CLI
    • 路由表相关操作
    • VPC相关操作
    • 版本变更记录
    • 通过CLI使用VPC服务
    • 安装BCE-CLI
    • 配置BCE-CLI
    • 子网相关操作
  • SDK
    • Python-SDK
      • 企业安全组
      • VPN
      • 子网
      • ACL
      • IPv6Gateway
      • 高可用虚拟IP
      • 网络探测
      • 路由
      • 专线网关
      • 弹性网卡
      • VPC
      • 对等连接
      • 版本说明
      • NAT
      • 安装SDK工具包
      • 服务网卡
      • 安全组
      • 概述
    • Java-SDK
      • 企业安全组
      • VPN
      • 子网
      • ACL
      • 参数模版
      • 高可用虚拟IP
      • 网络探测
      • 专线网关
      • 弹性网卡
      • vpc
      • 对等连接
      • 版本说明
      • IPv6网关
      • NAT
      • 普通安全组
      • 安装SDK工具包
      • 服务网卡
      • Route
      • 概述
    • Go-SDK
      • VPN
      • 子网
      • 异常处理
      • ACL
      • IPv6Gateway
      • 高可用虚拟IP
      • 网络探测
      • 路由
      • 专线网关
      • 弹性网卡
      • VPC
      • 对等连接
      • 初始化
      • NAT
      • 安装SDK工具包
      • 服务网卡
      • 概述
      • 安全组
        • 企业安全组
        • 普通安全组
    • PHP-SDK
      • ACL
      • vpc
      • 对等连接
      • 版本说明
      • Subnet
      • NAT
      • 安装SDK工具包
      • Route
      • 安全组
      • 概述
  • 文档中心
  • arrow
  • 私有网络VPC
  • arrow
  • 典型实践
  • arrow
  • 使用Terraform管理弹性网卡典型实践
本页目录
  • 概览
  • 需求场景
  • 配置前您需要了解:
  • 配置步骤
  • 1、环境准备
  • 2、初始化Terraform
  • 3、创建弹性网卡
  • 4、弹性网卡配置更新
  • 5、弹性网卡绑定实例
  • 6、应用配置
  • 测试验证
  • 资源删除
  • 相关产品

使用Terraform管理弹性网卡典型实践

更新时间:2025-08-22

概览

百度智能云弹性网卡能够在多个云主机间自由迁移。通过在云主机上绑定多个弹性网卡,实现高可用网络方案;也可以在弹性网卡上绑定多个内网 IP,每个内网IP都可以绑定一个EIP,用户在配置好IP地址后通过配置应用策略即可实现不同业务流量以不同源IP从网卡流出,实现单主机多IP部署。

通过Terraform这种基础设施架构自动化编排工具,能够大大降低企业在基础设施构建过程中成本问题,同时也可以提高云基础设施开发人员在 IAC(基础设施即代码) 方面的技能。使用Terraform允许您使用代码的方式进行弹性网卡的快速创建、部署和管理。

需求场景

  • 部署高可用集群:弹性网卡是系统架构中的关键组件,满足系统高可用架构对于单实例多网卡的需求。
  • 快速故障迁移:通过将弹性网卡从云主机实例卸载后再挂载到另外一台云主机实例,将故障实例上的业务流量快速迁移到备用实例,实现服务的容灾部署。
  • 精细化网络管理:实例可以挂载多个弹性网卡,弹性网卡可分别位于不同的子网,可独立配置安全组、ACL安全访问规则,从而对每个弹性网卡的流量进行安全访问控制,同时可实现不同业务间数据隔离。

配置前您需要了解:

  • 每个VPC可支持500个弹性网卡。
  • BCC实例与弹性网卡必须在同一可用区、同一VPC,可以在不同子网,挂载不同的安全组。
  • BCC的带宽能力由实例规格决定,在一台实例上挂载多个弹性网卡不能提高实例带宽性能。
  • BCC主网卡不属于弹性网卡,不在弹性网卡列表中,主网卡在BCC详情页面中配置。
  • 单网卡上IP数量最少1个,最多40个。
  • 云主机可挂载弹性网卡数量=min(主机核数,8)。
  • 云主机绑定的网卡上可配置IP数量:
内存 IP数量
1G 2
(1-8]G 8
(8-32]G 16
(32-64]G 30
大于64G 40

配置步骤

1、环境准备

  • Terraform:是一种安全有效地构建、更改和版本控制基础设施的工具。它以配置文件为驱动,您在文件中定义各种组件,Terraform会基于该文件完成所有组件的创建、变更和管理。目前百度智能云已与 Terraform集成,您可通过Terraform来创建、管理ENI、VPC、BCC等多种百度智能云资源,具体请参考Terraform BaiduCloud Provider。

2、初始化Terraform

  1. 登录Terraform官网下载适用于您的操作系统的程序包。
  2. 配置terraform baidu provider信息,配置文件可参考如下的代码,在当前文件夹内保存为version.tf。
Plain Text
1    terraform {
2      required_providers {
3        baiducloud = {
4          source = "baidubce/baiducloud"
5          version = "1.16.2" #版本号 从1.16.2版本开始支持弹性网卡
6        }
7      }
8    }
  1. 执行命令terraform init,Terraform会根据当前文件夹内的version.tf文件初始化工作空间。
  2. 编辑Terraform配置文件。新建文件main.tf,在文件中指定VPC、弹性网卡、安全组等元信息。参考配置和步骤如下:

    更多弹性网卡参数信息可参考baidu provider官方文档

3、创建弹性网卡

在main.tf文件中加入如下代码,在之后执行terraform apply的时候即可创建弹性网卡

Plain Text
1resource "baiducloud_eni" "eni" {
2  # 弹性网卡名称
3  name      = "terraform-eni"
4  # 弹性网卡所属子网的ID
5  subnet_id = baiducloud_subnet.subnet.id
6  # 弹性网卡描述
7  description        = "terraform test"
8  # 弹性网卡的安全组
9  security_group_ids = [
10    baiducloud_security_group.sg.id
11  ]
12  # 弹性网卡的私有IP配置
13  private_ip {
14    # 是否为主IP
15    primary            = true
16    # 内网IP
17    private_ip_address = "172.16.0.10"
18    # 公网IP(选配)
19    public_ip_address  = baiducloud_eip.eip2.eip
20  }
21  private_ip {
22    primary            = false
23    private_ip_address = "172.16.0.11"
24    public_ip_address  = baiducloud_eip.eip1.eip
25  }
26  private_ip {
27    primary            = false
28    private_ip_address = "172.16.0.13"
29  }
30}

说明:用户可使用Terraform创建弹性网卡所需要的EIP、VPC、子网等资源,然后通过引用的方式填入弹性网卡创建时需要的字段中,也可直接填入弹性网卡依赖的资源的ID。

本示例中弹性网卡依赖的EIP、VPC、子网、安全组配置信息如下

Plain Text
1# 新建VPC
2resource "baiducloud_vpc" "vpc" {
3  name = "terraform_vpc"
4  cidr = "172.16.0.0/20"
5}
6# 新建子网
7resource "baiducloud_subnet" "subnet" {
8  name        = "terraform_subnet"
9  zone_name   = "cn-bj-d"
10  cidr        = "172.16.0.0/24"
11  vpc_id      = baiducloud_vpc.vpc.id
12  description = "terraform test subnet"
13}
14# 新建安全组
15resource "baiducloud_security_group" "sg" {
16  name        = "terraform-sg"
17  description = "security group created by terraform"
18  vpc_id      = baiducloud_vpc.vpc.id
19}
20# 创建两个EIP
21resource "baiducloud_eip" "eip1" {
22  bandwidth_in_mbps = 1
23  billing_method    = "ByBandwidth"
24  payment_timing    = "Postpaid"
25}
26resource "baiducloud_eip" "eip2" {
27  bandwidth_in_mbps = 1
28  billing_method    = "ByBandwidth"
29  payment_timing    = "Postpaid"
30}

4、弹性网卡配置更新

支持更新的字段如下,只需对字段值进行修改,然后应用变更计划即可完成更新

  • name
  • description
  • security_group_ids

    注意:

    • 请确保至少有一个安全组ID
  • private_ip

    注意:

    • 一个private_ip为一个代码块,在弹性网卡的配置里声明即完成了内网IP的创建
    • 主IP不能删除
    • 仅可删除辅助IP
    • 新增的内网IP都是辅助IP
    • 如果删除内网IP,只需要在弹性网卡的配置中,删除想要删除的内网IP代码块
    • 如果想绑定EIP,只需要在内网IP的代码块中进行配置即可

5、弹性网卡绑定实例

  • 注意事项:
  1. 一个云主机可以绑定多个弹性网卡,但只能绑定一个主网卡。
  2. 一个弹性网卡只能同时绑定一个云主机。
  3. 只有运行中或者已关机状态的云主机才能绑定弹性网卡。
  4. 弹性网卡和绑定的云主机必须是在同一私有网络内,且两者所在子网的可用区相同。
  • 示例代码如下:

    注意:如果实例没有完全启动,此时绑定弹性网卡可能会造成失败

Plain Text
1# 创建一个1c4g的实例
2resource "baiducloud_instance" "server1" {
3  availability_zone = "cn-bj-d"
4  instance_spec     = "bcc.gr1.c1m4"
5  image_id          = data.baiducloud_images.images.images.0.id
6  billing           = {
7    payment_timing = "Postpaid"
8  }
9  admin_pass      = "Eni12345"
10  subnet_id       = baiducloud_subnet.subnet.id
11  security_groups = [
12    baiducloud_security_group.sg.id
13  ]
14  #  action = "stop"
15}
16# 等待60s 实例完全启动
17resource "time_sleep" "wait_60_seconds" {
18  depends_on      = [baiducloud_instance.server1, baiducloud_eni.eni]
19  create_duration = "60s"
20}
21# 实例绑定弹性网卡
22resource "baiducloud_eni_attachment" "default" {
23  depends_on  = [time_sleep.wait_30_seconds]
24  eni_id      = baiducloud_eni.eni.id
25  instance_id = baiducloud_instance.server1.id
26}

说明:

  • 挂载云主机后,还需要手动配置辅助IP,参见BCC文档-配置弹性网卡。
  • 弹性网卡主IP无法释放,辅助IP可以释放。

6、应用配置

  • 执行如下代码,可查看资源变更计划
Shell
1$ terraform plan
  • 执行如下代码,可应用资源变更计划,完成资源的创建或更新,如图所示
Shell
1$ terraform apply

image.png

  • 在全部变更计划完成之后,会显示出结果

image.png

测试验证

  • 1、在百度智能云控制台的产品界面查看对应的资源是否都创建成功。
  • 2、在完成了上述步骤的配置之后,可测试是否能够通过两个不同的公网IP连接到实例。

    注意:示例中的代码没有配置安全组规则,如果需要测试某个端口的连通性,请按需创建安全组规则

如果能够通过不同的公网IP连接到实例,说明弹性网卡配置和绑定成功。

资源删除

  • 若实例需要解绑弹性网卡,只需要删除baiducloud_eni_attachment这一资源即可,可通过如下代码
Shell
1 # 通过-target指定资源进行删除
2 terraform destroy -target baiducloud_eni_attachment.default
  • 可通过如下命令释放当前main.tf中的所有资源
Shell
1 terraform destroy

相关产品

弹性网卡ENI、私有网络VPC、云服务器BCC、弹性公网IP

上一篇
对等连接典型实践
下一篇
二层网关与专线接入ET组合构建IDC与云上VPC大二层网络