本文主要是介绍openstack通过Network Namespace和iptables实现租户私有网络互访和L3路由功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
安装架构介绍
本文旨在通过自己搭建类似neutron (openvswitch + gre) 实现SDN 的环境,学习了解其工作原理,模拟核心原理,比如:同一租户自定义网络 instance 互通,手动为instance 分配 floating ip 等相关内容。
虚拟网络
需要新建3个虚拟网络Net0、Net1和Net2,其在virtual box 中对应配置如下。
Net0:Network name: VirtualBox host-only Ethernet Adapter#2Purpose: administrator / management networkIP block: 10.20.0.0/24DHCP: disableLinux device: eth0Net1:Network name: VirtualBox host-only Ethernet Adapter#3Purpose: public networkDHCP: disableIP block: 172.16.0.0/24Linux device: eth1Net2:Network name: VirtualBox host-only Ethernet Adapter#4Purpose: Storage/private networkDHCP: disableIP block: 192.168.4.0/24Linux device: eth2
虚拟机
需要新建2个虚拟机VM1和VM2,其对应配置如下。
VM1:Name : network1vCPU:1Memory :1GDisk:30GNetwork:net1,net2,net3VM2:Name: compute1vCPU:1Memory :1GDisk:30GNetworks:net1,net2,net3
Linux interface设置
network1eth0:10.20.0.201 (management network)eht1:172.16.0.201 (public/external network)eht2:192.168.4.201 (private network,gre tunning)compute1eth0:10.20.0.202 (management network)eht1:(disabled)eht2:192.168.4.202 (private network,gre tunning)
模拟安装网络节点(Network1)
模拟Network 节点相关实现,比如L3、dhcp-agent实现,为了模拟多节点网络情况,这里Network同时也模拟一个计算节点,模拟M2 openvswitch 实现,上面运行instance1。
网络接口配置
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=10.20.0.201
NETMASK=255.255.255.0vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=172.16.0.201
NETMASK=255.255.255.0vi /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE=eth2
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.4.201
NETMASK=255.255.255.0
重启网络服务
这篇关于openstack通过Network Namespace和iptables实现租户私有网络互访和L3路由功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!