Quantum虚拟网络

一、Quantum是什么?

Quantm是Openstack的网络服务,它的底层是调用第三方软件来创建部署虚拟网络环境。
一般我们用的第三方软件都是基于Open vSwitch

二、Open vSwitch是什么?

  1. Open vSwitch是一个开放的虚拟交换标准,一个Apache2许可下的开源项目。
  2. 它的目的是为了通过编程扩展等手段,在保持对标准管理接口和网络协议支持的同时,实现大型网络自动化管理。
  3. Open vSwitch可以用于所有基于Linux的虚拟化平台,如KVM、Xen等。
  4. Open vSwitch可以实现VLAN、GRE隧道等多种网络类型。
    (1)GRE隧道模式:指的是通过网桥中添加GRE端口,实现不同物理机上的虚拟机之间的通信。
    (2)VLAN模式:指的是将实际的物理网卡加到虚拟网桥中,网桥中的物理网卡承担主机间的报文转发任务。
  5. Open vSwitch可以通过物理网卡创建出多个虚拟网络。
  6. Open vSwitch是采用Open Flow来实现报文转发的,一个数据路径可以包含多个vport虚拟端口。通过一个流规则表保存数据流规则,Open vSwitch依据此来处理传来的报文。
  7. Open vSwitch主要由ovs-vswithch、ovsdb-server、ovs-vsctl、ovs-appctl、ovs-controller、ovs-ofctl组成
    (1)ovs-vswitch:实现虚拟交换功能的守护进程
    (2)ovsdb-server:保存Open vSwitch配置信息的轻量级数据库
    (3)ovs-vsctl:查询、更新ovs-vswitch信息的工具
    (4)ovs-appctl:想ovs-vswitchd进程发送命令的工具
    (5)ovs-controller:简单的open flow控制器
    (6)ovs-ofctl:查询控制open flow控制器的工具

三、GRE隧道模式

  1. 在物理机上创建两台虚拟机HOST1和HOST2,这两个虚拟机只需要1块网卡。虚拟机桥接在物理机的BR100上,以保证HOST1和HOST2之间能够通信。
    (1)需要注意对HOST1和HOST2的虚拟机XML定义文件进行修改,使得虚拟机的CPU满足VMX属性
  2. 分别在HOST1和HOST2上创建一个OVS网桥BR-GRE,BR-GRE网桥中无需添加物理网卡
  3. 分别在HOST1和HOST2的BR-GRE中田间一个GRE类型的OVS端口。其中HOST1的GRE端口的REMOTE_IP指向HOST2,HOST2的remote_ip指向HOST1.
  4. 在HOST1和HOST2创建虚拟机时,虚拟网络采用openvswitch方式,设置它挂接的网桥为BR-GRE
  5. HOST1和HOST2上虚拟机的IP须手动设定。

四、VLAN模式

  1. 在物理机上创建两台虚拟机HOST1和HOST2,这两天虚拟机各需要两块网卡。其中第一块网卡桥接在物理机的BR100上,第2块网卡桥接在物理机的VIRBR0上。同样要注意对HOST1和HOST2的虚拟机XML定义文件进行修改,使得虚拟机的CPU满足VMX属性。
  2. 分别在HOST1和HOST2上创建一个OVS网桥BR-ETH1,需将网卡ETH1添加到BR-ETH1中。注意开启eth1,但不要给eth1分配IP。
  3. 分别HOST1和HOST2上创建一个fake网桥VLAN2,VLAN2的tag设置为2.
  4. 分别在HOST1和HOST2的BR-GRE中添加一个GRE类型的OVS端口。其中HOST1和GRE端口和remote_ip指向HOST2,HOST2的GRE端口的REMOTE_IP指向host1.
  5. 在HOST1和HOST2创建虚拟机时,虚拟网络采用openvswitch方式,设置它挂接的fake网桥为vlan2
  6. HOST1和HOST2上虚拟机的IP需要手动设置。

五、总结

  1. Quantum看起来就是一个代理,核心工作还是由第三方软件Open vSwitch完成
  2. Open vSwitch支持两种虚拟网络模式一个是GRE隧道模式,一个是VLAN模式
  3. VLAN模式应用很广
  4. 不过Open vSwitch核心工作就是将物理网卡虚拟成多个虚拟网卡,通过软件的方式进行报文的转发

你可能感兴趣的:(Quantum虚拟网络)