zoukankan      html  css  js  c++  java
  • 在 ML2 中 enable local network

    前面完成了一系列准备工作,本节开始将创建各种 Neutorn 网络,我们首先讨论 local network。

    local network 的特点是不会与宿主机的任何物理网卡相连,也不关联任何的 VLAN ID。

    对于每个 local netwrok,ML2 linux-bridge 会创建一个 bridge,instance 的 tap 设备会连接到 bridge。位于同一个 local network 的 instance 会连接到相同的 bridge,这样 instance 之间就可以通信了。

    因为 bridge 没有与物理网卡连接,所以 instance 无法与宿主机之外的网络通信。 同时因为每个 local network 有自己的 bridge,bridge 之间是没有连通的,所以两个 local network 之间也不能通信,即使它们位于同一宿主机上。

    下图是 local network 的示例:

    image525.png

    • 创建了两个 local network,分别对应两个网桥 brqXXXX 和 brqYYYY。

    • VM0 和 VM1 通过 tap0 和 tap1 连接到 brqXXXX。

    • VM2 通过 tap2 连接到 brqYYYY。

    • VM0 与 VM1 在同一个 local network中,它们之间可以通信。

    • VM2 位于另一个 local network,由于 brqXXXX 和 brqYYYY 没有联通,所以 VM2 无法与 VM0 和 VM1 通信。

    下面我们将一步一步实现 local network。

    在 ML2 配置中 enable local network

    创建 local 网络之前请先确保 ML2 已经加载了 local type driver。 ML2 的配置文件位于 /etc/neutron/plugins/ml2/ml2_conf.ini。

    type_drivers 告诉 ML2 加载所有 5 种网络的 type driver。

    type_drivers = local,flat,vlan,gre,vxlan

    这样所有类型的网络我们都可以创建(虽然在本节只创建 local 网络)。

    普通用户和 admin 都可以通过 CLI 或者 Web GUI 创建网络,但只有 amdin 才能指定网络的 type,所以需要用 tenant_network_types 告诉 ML2 当普通用户在自己的 Tenant(Project)中创建网络时,默认创建哪种 type 的网络,这里 type 是 local。

    tenant_network_types = local

    tenant_network_types 可以指定多种 type,比如:

    tenant_network_types = vlan, local

    其作用是先创建 vlan 网络,当没有 vlan 可创建时(比如 vlan id 用完),便创建 local 网络。

    当配置文件发生了变化,需要重启 Neutron 相关服务使之生效。

    有了上面的这些准备,我们可以开始深入学习 linux bridge 如何实现每种 network type 了。

     

    下一节将创建第一个 local network。

     

    blob.png

  • 相关阅读:
    基于shell脚本比较数字加减乘除 要bc计算器
    基于shell脚本比较数字大小
    备份WordPress
    在CentOS 7 安装没有mysql
    SQL中判断字符串中包含字符的方法
    ASP.NET生成的HTML代码
    win7禁用休眠,献给c盘空间不足的朋友.
    SQLServer2005和2008的分页技术比较[转]
    浏览器兼容性系列--浅谈window.attachEvent
    在ASP.NET 的服务器端控件中有三种关于 ID 的属性
  • 原文地址:https://www.cnblogs.com/CloudMan6/p/5813792.html
Copyright © 2011-2022 走看看