openstack虚拟网络的管理
学完之后,回答这些问题
1)了解虚拟网络,子网,端口的功能
2)了解网桥的功能
3)理解网络,子网,端口的管理命令
4)理解网桥的命令
基础的概念:
网桥:可以比喻成一个交换机,用于连接不同的网络设备,可以分为内部网桥和外部网桥,用于实现内部的通信,外部的通信,需要网桥这个设备,用于连接虚拟机与云主机,从而进行通信
网络:可以理解成为一个虚拟的局域网,不同网络之间是隔离的,也就是说,不同的网络中的Ip是可以相同的
子网:就是从网络中划分的一个地址段
端口:就是从子网中划分的一个具体的Ip,云主机(虚拟网卡)连接在这个端口,就会自动的拥有这个ip地址和mac地址
一个交换机上面有很多的接口(端口)
一:虚拟网络的管理
1:网络管理
理解为一个路由器,就是相当于一个很大的网络
语法格式:
openstack network 操作 选项 网络名
常用的操作:
create | 创建网络 |
delete | 删除网路 |
list | 查看网络 |
show | 查看网络的详细 |
set | 设置网络参数 |
unset | 取消网络参数设置 |
常用的选项:
--h | 显示帮助的信息 |
--enable | 启用网络 |
--disable | 禁用网络 |
--enable-port-security | 启动端口安全 |
--disable-port-security | 禁用端口安全 |
--share | 设置网络为共享网络 |
--no-share | 设置网络为非共享网络 |
--external | 设置网络为外部网络 |
--intrenal | 设置网络为内部网络 |
--provider-network-type | 网络的类型 |
--provider-physical-network | 实现虚拟网络的物理网络的名称 |
简单的运维的操作:
1:创建一个网络出来,就是必须要指定网络的类型,实现虚拟网络的物理网络的名称
就是要指定网络的类型和网卡(物理网卡)
[root@controller /]# openstack network create --share --external --provider-physical-network provider --provider-network-type flat vm-network
--provider-physical-network详细的介绍
在OpenStack网络命令中,--provider-physical-network参数用于指定创建的网络所映射到的底层物理网络。换句话说,它定义了OpenStack网络与实际物理网络之间的对应关系。 参数--provider-physical-network provider中的provider是该底层物理网络的名称。这个名称可以是任何描述性的字符串,通常根据实际的物理网络架构或命名约定来设置。例如,如果你有一个名为"provider"的物理网络,你可以使用这个名字来在OpenStack中创建与之对应的虚拟网络。 这个参数通常与--provider-network-type参数一起使用,后者用于定义底层物理网络的类型(例如Flat、VLAN、GRE、VXLAN等)。在你的命令中,--provider-network-type flat表示底层物理网络是一个Flat网络,即所有虚拟机都直接连接到同一个二层网络中,没有任何隔离。 总的来说,--provider-physical-network provider参数允许你指定OpenStack网络与实际物理网络之间的映射关系,这对于确保虚拟机和物理网络之间的正确连接非常重要。
2:修改网络名称
[root@controller /]# openstack network set --name vmnetwork vm-network [root@controller /]# openstack network list +--------------------------------------+-----------+---------+ | ID | Name | Subnets | +--------------------------------------+-----------+---------+ | 8783123e-9548-4d01-94fd-2e6920692b53 | vmnetwork | | +--------------------------------------+-----------+---------+ [root@controller /]#
2:子网的管理
子网的就是网络中的ip地址段,理解为一个交换机;当在网络中创建端口时,会分配一个地址给端口
网络与子网的关系:一对多
语法格式:
openstack subnet 操作 选项 子网名字
常见的操作:
create | 创建子网 |
delete | 删除子网 |
list | 列出子网 |
show | 查看子网的详细信息 |
set | 设置子网的参数 |
unset | 取消子网参数的设置 |
常见的选项:
--h | 显示帮助信息 |
--project | 当前项目,输入项目名或项目id |
--subnet-range | 子网ip地址段 |
--dhcp | 启用dhcp为云主机分配ip地址 |
--no-dhcp | 不适用dhcp |
--allocation-pool start= ,end= | dhcp分配的Ip地址池 |
--gateway | 设置网关 |
--dns-nameserver | 设置dns服务器地址 |
--network | 子网属于的网络, |
简单的运维操作:
就是创建子网的前提就是必须要有网络才行,它是网络中的地址段
1:创建一个子网,必须要指定它是在哪个网络中的所创建,还有就是指定dhcp分配的ip地址之间的范围,还有就是dns这个服务器,就是与外界通信的服务器
[root@controller ~]# openstack subnet create --network vmnetwork --allocation-pool start=192.168.100.100,end=192.168.100.200 --dns-nameserver 114.114.114.114 --subnet-range 192.168.100.0/24 vm-subnet [root@controller ~]# openstack subnet list +--------------------------------------+-----------+--------------------------------------+------------------+ | ID | Name | Network | Subnet | +--------------------------------------+-----------+--------------------------------------+------------------+ | 6fa96250-c82a-4ea3-b943-cd864afa6388 | vm-subnet | 8783123e-9548-4d01-94fd-2e6920692b53 | 192.168.100.0/24 | +--------------------------------------+-----------+--------------------------------------+------------------+ [root@controller ~]#
子网就相当于是一个一个ip地址段
2:修改子网的名字
[root@controller ~]# openstack subnet set --name vmsubnet vm-subnet [root@controller ~]# openstack subnet list +--------------------------------------+----------+--------------------------------------+------------------+ | ID | Name | Network | Subnet | +--------------------------------------+----------+--------------------------------------+------------------+ | 6fa96250-c82a-4ea3-b943-cd864afa6388 | vmsubnet | 8783123e-9548-4d01-94fd-2e6920692b53 | 192.168.100.0/24 | +--------------------------------------+----------+--------------------------------------+------------------+ [root@controller ~]#
3:端口的管理
理解为交换机上面的很多的接口,里面有ip地址和mac地址,这个就是端口
挂在在子网中的用于连接云主机虚拟网卡的接口(虚拟网卡会自动的连接),当云主机的虚拟网卡连接到这个连接到某个端口时,就会分配给云主机地址
这个就是具体的ip地址
子网与端口的关系:就是一对多
格式:
openstack port 操作 选项
常见的操作:
create | 创建端口 |
delete | 删除端口 |
list | 展示端口 |
show | 显示端口的详细信息 |
set | 设置端口的参数 |
unset | 取消端口的参数 |
常见的选项:
--h | 显示帮助信息 |
--network | 端口属于的网络 |
--fixed-ip subnet=,ip-address= | 为端口绑定ip地址 |
--enable | 启用端口 |
--disable | 禁用端口 |
--enable-port-security | 启用端口安全设置 |
--disable-port-security | 禁用端口安全设置 |
简单的运维:
1:创建一个端口
就是要指定是在哪个网络中,哪个子网中创建的端口,这个需要指定
[root@controller /]# openstack port create --network vmnetwork --fixed-ip subnet=vmsubnet,ip-address=192.168.100.101 myport
2:修改端口的名字
[root@controller /]# openstack port set --name my-port myport [root@controller /]# openstack port list +--------------------------------------+---------+-------------------+--------------------------------------------------------------------------------+--------+ | ID | Name | MAC Address | Fixed IP Addresses | Status | +--------------------------------------+---------+-------------------+--------------------------------------------------------------------------------+--------+ | ba46e41b-120e-44e1-982f-6a68ead38e8f | my-port | fa:16:3e:8b:26:3c | ip_address='192.168.100.101', subnet_id='6fa96250-c82a-4ea3-b943-cd864afa6388' | DOWN | | f745e97e-caae-4b1c-8ba3-f2ad6cef2b0f | | fa:16:3e:17:86:c2 | ip_address='192.168.100.100', subnet_id='6fa96250-c82a-4ea3-b943-cd864afa6388' | ACTIVE | +--------------------------------------+---------+-------------------+--------------------------------------------------------------------------------+--------+ [root@controller /]#
3:删除端口
openstack port delete portid
二:虚拟网桥的管理
作用:类似于一个交换机,负责连接它上面的云主机进行通信
需要用到的网桥管理包bridge-utils这个包,需要使用brctl命令来管理虚拟网络
1:brctl命令
常见的选项:
addbr | 增加网桥 |
delbr | 删除网桥 |
addif | 将网卡接入网桥 |
delif | 将网卡从网桥中删除 |
show | 显示网桥的信息 |
2:案例
总结:
就是创建好网络和子网后,会自动有一个云主机的网络端口(就是云主机虚拟化出来的接口,类似于云主机的网卡),自动的创建一个网桥来连接云主机的网络端口和虚拟机的网卡
这样云主机的网络就创建好了(flat网络模式下的),