将 instance 连接到 first_local_net - 每天5分钟玩转 OpenStack(82)

本文详细介绍了如何在OpenStack环境中创建实例并将其连接到已准备好的本地网络first_local_net的过程。包括实例部署后的IP地址分配情况,底层网络的变化,如Neutron如何创建端口并分配IP和MAC地址,以及宿主机上的网络配置变化等关键技术细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一节 first_local_net 已经就绪,下面创建 instance 并将其连接到该网络。

将 instance 连接到 first_local_net

launch 一个 instance,在“Networking”标签页面选择 first_local_net 网络。

instance 部署成功,分配的 IP 地址为 172.16.1.3

底层网络发生了什么变化?

对于 instance “cirros-vm1”,Neutron 会在 subnet 中创建一个 port,分配 IP 和 MAC 地址,并将 port 分配给 cirros-vm1。

如上图所示,port 列表中增加了一个 port “(fa7e090e-a29c)”,IP 为 172.16.1.3。
点击 port 名称查看 MAC 信息:

当 cirros-vm1 启动时:
1. 宿主机上的 neutron-linuxbridge-agent 会根据 port 信息创建 tap 设备,并连接到 local 网络所在的 bridge
2. 同时该 tap 会映射成 cirros-vm1 的虚拟网卡,即 virtual interface (VIF)。

下面我们验证一下以上信息:

cirros-vm1 部署到了控制节点,通过 brctl show 查看 bridge 的配置。

可以看到 bridge brqbb9b6d21-c6 上连接了一个新的 tap 设备 tapfa7e090e-a2
从命名上可知 tapfa7e090e-a2 对应着 port “(fa7e090e-a29c)”。

virsh list 中显示的虚拟机 instance-00000001 即为 “cirros-vm1”,命名方式有所不同,需注意。
通过 virsh edit 命令查看 cirros-vm1 的配置,确认 VIF 就是 tapfa7e090e-a2

另外,VIF 的 MAC 地址为 fa:16:3e:c1:66:a5,这个数据就是从 port “(fa7e090e-a29c)” 取过来的。

在 cirros-vm1 中执行 ifconfig,通过 MAC 地址可以确认 eth0 与 tapfa7e090e-a2 对应。

下图展示了创建 cirros-vm1 后宿主机当前的网络结构。

下一节我们将部署第二个 instance 到 first_local_net 并验证两个 instance 之间的连通性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值