新闻详情

新闻详情

首页 / 资讯中心 / 详情

devops-exercises 实战指南:在 AWS EC2 上创建并附加弹性网络接口(ENI)实现故障转移

发布时间:2026/9/30 2:03:12来源:尧图网络
devops-exercises 实战指南:在 AWS EC2 上创建并附加弹性网络接口(ENI)实现故障转移
文档教程DevOps运维【免费下载链接】devops-exercisesLinux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions项目地址https://gitcode.com/GitHub_Trending/de/devops-exercises点击查看免费下载导读本文基于 devops-exercises 仓库中 Elastic Network Interfaces 练习及其配套解决方案系统讲解如何在已有网络接口的 EC2 实例上创建第二个弹性网络接口Elastic Network InterfaceENI并将其附加到实例。通过本文你将掌握 ENI 的完整控制台操作流程、关键配置参数的含义以及双网卡 网卡可迁移这一经典故障转移机制的底层原理并了解仓库 AWS 总目录 中与 ENI 相关的面试问答与关联实验。前置条件与实验目标本练习对运行环境的要求非常简单只有一条一台已经运行、且已带有一个网络接口的 EC2 实例默认每个 EC2 实例都会自动拥有一个主网络接口即主 ENI。在此基础上练习提出两个明确目标目标内容核心能力A创建一个新的网络接口并把它附加到那台已经有一个网络接口的 EC2 实例上掌握 ENI 的创建与动态附加B解释为什么有人会需要两个网络接口理解 ENI 在故障转移场景中的价值如果你还没有可用的 EC2 实例可以参照仓库中的 Launch EC2 Web Instance 练习 先完成一台基础实例的创建其中包含镜像选择、实例类型、用户数据脚本与安全组配置的完整示例。ENI 是什么VPC 中的虚拟网卡在动手操作之前先建立对 ENI 的概念认知。仓库 AWS README 的 ENI 面试问答部分给出了 AWS 官方的定义Elastic Network InterfaceENI是 VPC 中的一个逻辑网络组件它代表一张虚拟网卡virtual network card。用更直白的话说ENI 把网卡从物理硬件中抽象了出来变成 VPC 里一个可以被独立创建、独立管理、随时挂到某台 EC2 实例上的逻辑对象。这正是它被称为弹性Elastic的原因——网卡与实例解耦可以在实例之间搬运。同一份问答还给出了 ENI 可以携带的核心属性这些属性在后续操作中都会用到一个公网 IPv4 地址一个 MAC 地址一个主私网 IPv4 地址来自你的 VPC 地址段。此外还有两条与本次实验强相关的约束值得先记住ENI 绑定在特定的可用区AZ上。创建时必须选择一个子网而子网属于某个 AZ因此 ENI 无法跨 AZ 使用。ENI 可以独立于 EC2 实例创建稍后再附加到实例上且可以即时on the fly附加——这正是故障转移场景成立的前提。步骤一创建网络接口控制台完整流程原文档的解决方案基于 AWS 管理控制台以下步骤完整复刻并补充了每个操作的关键参数说明。进入 EC2 服务。在 AWS 管理控制台搜索并进入 EC2 控制台首页。定位到网络接口入口。在左侧导航栏的Network Security网络与安全分组下点击Network Interfaces网络接口进入 ENI 列表页。点击 Create network interface创建网络接口进入创建表单。填写描述Description。为这个新网卡填写一段可辨识的描述例如failover-eni。描述会在后续列表中帮助你快速区分多张网卡。选择子网Subnet。这里是最关键的一步必须选择与目标 EC2 实例所在可用区AZ相同的子网。原因即上文提到的约束——ENI 绑定在特定 AZ 上而实例的网卡只能在同 AZ 的子网中附加。若不确定实例在哪个 AZ可先到 Instances 页面查看实例的Availability zone字段再回到此步选择对应子网。关于子网与 AZ 的关系可参考仓库中的 Subnets 练习其中演示了在同一 VPC 的不同 AZ 中创建多个子网的方法。可选附加安全组Security group。你可以在创建时为这张网卡绑定安全组也可以留空稍后再配置。仓库中的 Security Groups 练习 展示了安全组如何控制实例进出流量其结论同样适用于 ENI 级别默认情况下所有入站流量被阻止、所有出站流量被允许。若第二个网卡用于接收特定流量记得为其配置相应的入站规则。点击 Create network interface完成创建。此时网卡处于available可用状态尚未挂载到任何实例上。创建完成后可以顺带观察列表中的网卡详情它会显示所属 VPC、子网、私网 IP、MAC 地址等信息与上文提到的 ENI 属性一一对应。步骤二附加到 EC2 实例并验证网卡创建成功后将其附加到已有的 EC2 实例在 Network Interfaces 列表页勾选刚创建的网卡。点击Actions操作下拉菜单选择Attach附加。在弹出的对话框中选择目标实例即那台已经有一个网络接口的 EC2 实例。确认附加。AWS 会自动为这张网卡分配一个设备索引device index实例原有的主网卡通常为0新附加的为1或更高。验证结果回到 EC2 的Instances实例页面选中该实例并查看其网络相关信息你会看到这台实例现在拥有两个网络接口一个主网卡 一个附加网卡每个接口都有自己独立的私网 IP 地址。这即证明附加成功。一个常见的后续操作是为新网卡分配或关联公网 IP。这与仓库中的 Elastic IP 练习 相互呼应——该练习演示了如何将弹性 IP 关联到实例以固定公网地址而在多网卡场景下弹性 IP 同样可以关联到特定的网络接口上。为什么使用两个网络接口故障转移机制这是原文档目标 B 的核心内容也是整个练习最有实战价值的部分。原文档给出的答案是你可以把第二个网络接口在多个实例之间移动。这让我们可以在实例之间建立一种故障转移failover机制。展开来说这一机制的工作方式如下前提ENI 是独立于实例的逻辑对象可以即时附加/分离不需要重启实例这正是仓库 README 中ENI can be attached later on and on the fly (for failover purposes)所强调的能力。故障场景假设两个实例共享同一个备用 ENI——实例 A 上承载着某个服务备用 ENI 作为冗余资源挂在其上或处于空闲状态当实例 A 发生故障、需要下线维护时服务无法继续对外提供。故障转移动作将这张备用 ENI 从实例 A 分离再立即附加到健康的实例 B 上。由于私网 IP 等网络属性是跟随 ENI 的网络身份跟网卡走而非跟实例走因此外部流量可以快速切换到实例 B业务中断时间被压缩到分钟级甚至更短。这种网卡漂移式故障转移的优势在于无需修改应用配置IP 地址、MAC 地址等网络身份随 ENI 迁移实例 B 接管后沿用同一套网络身份下游依赖方无需感知后端实例发生了替换操作简单可控全程在控制台或 API 层面完成不涉及重建实例、重配网络等繁琐步骤成本低廉ENI 本身是逻辑资源可随时创建与释放按需使用。需要补充的是这种手动 ENI 漂移通常用于对架构有明确掌控诉求的场景在更现代的云原生架构中类似的身份漂移目标往往由负载均衡器如 ALB/NLB或自动伸缩组承担。但理解 ENI 这一层面的弹性能力是深入理解 AWS 网络模型的重要基础。更深一层ENI 的关键属性与约束结合仓库问答仓库 AWS README 的 ENI 问答小节为本实验提供了几组可直接引用的知识结论帮助你从会操作进阶到懂原理ENI 携带什么一个公网 IPv4 地址、一个 MAC 地址、一个来自 VPC 地址段的主私网 IPv4 地址。创建网卡时你在表单中看到的子网选择实际上就决定了这个主私网 IP 的地址段来源。ENI 绑定 AZ 吗绑定。ENI 与特定可用区强绑定所以创建时必须选对子网/AZ——这也是步骤一中子网必须与实例同 AZ的根本原因。ENI 能独立创建吗能。ENI 可以独立于实例创建之后再按需附加包括用于故障转移的即时附加。这正是本练习先建网卡、再挂实例操作顺序的理论依据。子网与 IP 数量VPC 中每个子网的 IP 并非全部可用AWS 会为每个子网保留 5 个地址网络地址、VPC 路由器、DNS、预留、广播地址。若计划大规模附加网卡规划子网 CIDR 时要把这部分开销计入。旁证Fargate 与 ENI仓库 README 中还提到Fargate 会为每个任务task创建一个 ENI。这说明 ENI 不仅是手动运维 EC2 时使用也是 AWS 托管容器服务实现网络隔离的底层机制足见其在 AWS 网络体系中的基础地位。补充视角用 CLI 与 IaC 完成同样的工作原文档的解决方案基于控制台这也是仓库 AWS 部分的主基调——不过 AWS README 开头就给出了明确建议推荐使用 IaC 技术如 Terraform、Pulumi来求解练习。因此这里补充两条可对照的自动化路径AWS CLI 方式可快速验证 API 层面的等价操作# 1. 创建网络接口子网需与目标实例同 AZ aws ec2 create-network-interface \ --subnet-id subnet-xxxxxxxx \ --description failover-eni \ --groups sg-xxxxxxxx # 2. 将网卡附加到实例device-index 1 表示第二块网卡 aws ec2 attach-network-interface \ --network-interface-id eni-xxxxxxxx \ --instance-id i-xxxxxxxx \ --device-index 1Terraform 方式仓库在多个 AWS 练习中均提供了 Terraform 参考实现例如 new_vpc 的 terraform/main.tf 展示了声明式 VPC 资源的写法launch_ec2_web_instance 解决方案 则给出了包含实例与安全组的完整main.tf示例。参照这些写法将aws_network_interface与aws_network_interface_attachment两个资源加入配置即可用声明式方式复现本实验的全部步骤。关联练习与扩展阅读本次实验在仓库 AWS 练习体系中与以下内容直接关联建议按顺序联动学习Elastic Network Interfaces 练习原文本实验的题干用于自测时对照。Elastic IP 练习理解弹性 IP 与 ENI 如何配合固定多网卡场景下的公网地址。Security Groups 练习掌握 ENI 级别安全组的入站/出站规则配置。Subnets 练习理解子网与 AZ 的绑定关系这是选择 ENI 子网的前提。Launch EC2 Web Instance 练习创建练习所需的基础实例。AWS 总目录ENI 章节包含完整的面试问答属性、AZ 绑定、独立创建等可在实验后用于自测巩固。最后提醒练习结束后若不再需要这张附加的 ENI请记得先在实例上分离Detach它再删除Delete该网络接口避免产生不必要的资源占用与费用。赞分享文档教程DevOps运维【免费下载链接】devops-exercisesLinux, Jenkins, AWS, SRE, Prometheus, Docker, Python, Ansible, Git, Kubernetes, Terraform, OpenStack, SQL, NoSQL, Azure, GCP, DNS, Elastic, Network, Virtualization. DevOps Interview Questions项目地址https://gitcode.com/GitHub_Trending/de/devops-exercises点击查看免费下载相关推荐Wasp 用户名密码认证自定义 UI 实战手写登录注册表单与 signup/login API 解析Wasp 用户名密码认证自定义 UI 实战手写登录注册表单与 signup/login API 解析 Wasp 提供了一整套开箱即用的用户名密码认证能力注册文档教程DevOps运维devops-exercises 实战在 AWS 控制台创建 IAM 角色并授权 EC2 服务附 CLI 验证与 Terraform 扩展devops exercises 实战在 AWS 控制台创建 IAM 角色并授权 EC2 服务附 CLI 验证与 Terraform 扩展 本指南以 de文档教程DevOps运维ModelScope modelscope.models.cv 视觉模型库 API 全解析12 大 CV 模型类与注册机制深度导读ModelScope modelscope.models.cv 视觉模型库 API 全解析12 大 CV 模型类与注册机制深度导读 导读 本文以 ModelS文档教程DevOps运维上一篇高性能异步处理架构设计FunASR实现300%吞吐量提升的完整方案下一篇终极指南5步快速上手Ryzen SDT调试工具彻底释放AMD处理器隐藏性能创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

华联环球的信息保护与用户隐私 2026/9/30 4:00:46

华联环球的信息保护与用户隐私

在数字时代,信息保护与隐私安全日益重要。华联环球把用户的信息保护放在重要的位置。用户在平台上留下的信息,涉及隐私与资产,需要得到妥善的保护。华联环球深知,信息保护是用户信任平台的基础之一。因此,平台在信息保…

阅读更多 →
基于Spring Boot+SSM的宠物领养救助系统设计复盘 2026/9/30 4:00:46

基于Spring Boot+SSM的宠物领养救助系统设计复盘

去年我接了个宠物救助站的数字化需求,对方负责人开门见山就跟我说:我们站里每一只猫狗从进站到被领养,中间的救助记录、疫苗情况、领养人审核、回访跟进全都写在纸质档案本上,翻起来费劲,还经常丢失。于是就有了这套基…

阅读更多 →
SpringBoot+SSM+Thymeleaf剧团管理系统实战:从数据库设计到上线部署 2026/9/30 4:00:46

SpringBoot+SSM+Thymeleaf剧团管理系统实战:从数据库设计到上线部署

前阵子有朋友把一份毕设项目压缩包丢给我,文件夹名是 springboot_ssm872曲艺黄梅戏剧团管理系统哈尔。第一次看到这个命名,我的第一反应是:SpringBoot 和 SSM 怎么会同时出现在一个项目名里?后来打开源码发现,实际用的…

阅读更多 →
云平台运维与运营服务方案:从自动化工具到可执行服务编排的落地指南 2026/9/30 4:00:46

云平台运维与运营服务方案:从自动化工具到可执行服务编排的落地指南

简介:面向互联网企业云平台运维与运营管理需求,提供一份体系化的服务方案文档。方案以ITSS信息技术服务标准为指引,围绕运维全生命周期进行设计,涵盖服务规划设计、部署实施、服务运营、持续改进与监督管理等阶段,并包…

阅读更多 →
模型优化器实战:量化、剪枝、蒸馏与图优化全链路解析 2026/9/30 4:00:46

模型优化器实战:量化、剪枝、蒸馏与图优化全链路解析

1. 从“模型优化器”这个热词说起:它到底在解决什么问题“Model-Optimizer”这个词最近在技术圈被反复提起,很多人第一次看到会以为它只是某个具体工具的名字,其实它更像是一类技术角色的统称——凡是能在模型训练、推理、部署环节里&#xf…

阅读更多 →
从零构建buzz模块:低干扰提醒与热点聚合的工程实践 2026/9/30 4:00:40

从零构建buzz模块:低干扰提醒与热点聚合的工程实践

1. 从一个词说起:为什么“buzz”值得单独拎出来聊“buzz”这个词,第一次看到的人多半会愣一下——它既不是某个具体产品的名字,也不像“某某系统”“某某工具”那样一眼能看出用途。但恰恰是这种模糊感,让它成了一个特别有意思的切…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉