在关于云乐队的系列文章的续篇中,Flexiant想要谈谈如何在该乐队下管理虚拟机和容器的网络组织。Flexiant标识客户端可以在其虚拟机中访问的四种网络类型。PVIP是一个将单个/ 32地址分配给客户端的网络。到此IP地址的路由是在公共IP 虚拟机所在的主机上执行的,该主机是客户端在其中接收单独的VLAN和/ 29子网的网络。这是我们使用的主要网络。它的路由在由Flexiant Cloud Orchestrator管理的特殊路由器节点上执行。专用IP-网络,组织与上一个类似,不同之处在于它不在路由器节点上外部显示。客户端可以使用它在其虚拟机之间创建内部网络。 IP地址既可以从接口也可以在机器本身上分配。互通VLAN –再次与专用IP非常相似,不同之处在于,如果没有提供者的参与,则不能直接供客户端使用。当客户需要将现有的L2基础架构连接到Flexiant Cloud Orchestrator基础架构时,我们会将其提供给客户端。除第一个网络外,所有网络都在单独的隔离VLAN中运行;因此,客户端可以使用所有第二层协议:arp,dhcp,lldp等。 PVIP网络在L3上运行,我们将其用于希望从DDoS获得保护的客户端。如果他们想保护IP地址,则需要使用它。每个网络都分配给一个虚拟机适配器。因此,在一台虚拟机中,可以同时存在多种类型的网络。客户端可以任意选择专用IP和互通VLAN的IP地址。从控制面板的列表中选择公用IP和PVIP的IP地址。
适配器接收到网络以及可选的IP地址后,有关该信息的信息就会进入管弦乐队的数据库,并在路由节点(对于公共IP网络),计算节点(对于PVIP)以及位于DHCP服务器中的相应设置中输入相应的设置如果已设置IP地址,则在管理节点上。卡的虚拟mac地址与所选IP地址之间的对应表将输入到PgSQL数据库中,DHCP服务器将从该数据库中获取该对应表。在每个节点上,无论是路由器节点还是计算节点,都将安装Flexiant代理,该代理从管弦乐队接收命令。在节点本身内部,在单独的网络名称空间中引发了虚拟路由器。因此,节点上的Linux网络堆栈和虚拟路由器网络堆栈彼此独立。在鲤鱼的实现中,使用VRRP协议确保公共IP正常工作的路由器节点相互复制。如果其中一个节点发生故障,流量将通过另一个节点,这是一个在路由节点上进行路由的示例:Router0# ip a l
…
766: VLAN367: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 00:1e:67:d3:67:5c brd ff:ff:ff:ff:ff:ff
inet6 fe80::e0fe:25ff:fef9:7304/64 scope link
valid_lft forever preferred_lft forever
…
Router0# brctl show VLAN367
bridge name bridge id STP enabled interfaces
VLAN367 8000.001e67d3675c no bond0.367
evrl-000190
# , shell screen,
Router0# evrs
Router0# ip a l evrr-000190
768: evrr-000190: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether e6:52:0f:21:83:b0 brd ff:ff:ff:ff:ff:ff
inet 217.23.xxx.xxx/29 scope global evrr-000190
valid_lft forever preferred_lft forever
inet6 fe80::e452:fff:fe21:83b0/64 scope link
valid_lft forever preferred_lft forever
Router0# ip r l 217.23.xxx.xxx
217.23.xxx.xxx/29 dev evrr-000190 proto kernel scope link src 217.23.xxx.xxx
Router#0 ip r l ip r l 0.0.0.0/0
default via 10.158.192.3 dev evrr-000000 proto bird
一对evrr / evrl接口是Linux上的常规版本,它们将两个网络名称空间互连。因此,可以看到进入虚拟路由器的传入流量如何在那里路由到特定接口。防火墙管理也发生在虚拟路由器中。创建了单独的表和链,这些表和链允许或不允许到特定网络接口的流量。Router0# iptables -nvL evrr-000190-4i
Chain evrr-000190-4i (1 references)
pkts bytes target prot opt in out source destination
435M 124G RETURN all -- * * 217.23.xxx.xxx 0.0.0.0/0
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Router0# iptables -nvL evrr-000190-4o
Chain evrr-000190-4o (1 references)
pkts bytes target prot opt in out source destination
587M 782G ACCEPT all -- * * 0.0.0.0/0 217.23.xxx.xxx
6038K 350M DROP all -- * * 0.0.0.0/0 0.0.0.0/0
我们使用OSPF作为路由协议,将配置与计算和路由器节点连接到网络的核心,再从那里到达核心路由器。作为节点上的软件,使用了由Flexiant控制的bird。我们还对配置模板进行了更改,因为Flexiant允许我们执行此操作。Flexiant还允许您将statics和bgp用作路由协议。在付款方面,所有网络都是免费的。仅针对PVIP和公共IP网络的IP地址付款。但是,PVIP的IP地址更昂贵,因为它们受到了DDoS攻击的保护。