IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Neutron社区每周记(5.9~5.15) | L2 Gateway正式发布实现二层互联

    hu, xueqing发表于 2016-05-18 03:27:42
    love 0

    1111111111111
    盘点上一周的社区新动态,每周网络组同事都会按时交作业,我们也会整理好分享给大家,那么上一周Neutron社区有哪些变化呢?PS:如果大家对OpenStack其他模块有求知欲望,那么大家可以留言,小编会协调其他部门的工程师来写一些关于OpenStack的其他内容。

    Mailing List

    1、L2 Gateway正式release

    软件包在 https://pypi.python.org/pypi/networking-l2gw,可以通过『pip install networking-l2gw』安装它。
    L2 Gateway的详细说明:https://wiki.openstack.org/wiki/Neutron/L2-GW。什么是L2 Gateway?L2 Gatway可以当做Neutron的一种Service Plugin,用来打通虚拟网络和物理网络,从而提供二层互联。它的工作原理如图:

    22222222222

    通过在网络节点和计算节点运行L2 gateway agent,通过VXLan隧道的形式来打通虚拟网络和物理路由器。目前支持可以打通的路由器有Arista Hardware和HP Hardware。

    2、Router interface attach在高并发下的死锁

    在通过Rally对Kilo版Neutron Server的控制平面进行压力测试时,遇到了死锁问题,使用到的模板文件在:https://github.com/openstack/rally/blob/master/samples/tasks/scenarios/neutron/create_and_delete_routers.json
    Neutron Server的Error trace日志:http://paste.openstack.org/show/496626/。 Neutron Core Kevin反馈说可能是由于Mysql driver的问题,目前已经在最新的代码中移除了Mysql driver,并且确保Neutron Server中使用的DB connection是以『mysql+pymysql://』开头的。

    3、Neutron中的DNS

    首先来说,目前Neutron中支持Internal DNS和External DNS。Internal DNS提供虚拟机和虚拟机之间通过DNS进行通信,而External DNS是配合DNS driver(比如designate)提供外部集群对于虚拟机的DNS访问。有关M版中关于DNS的使用可以参考:http://docs.openstack.org/mitaka/networking-guide/adv-config-dns.html

    4、Routed Networks将要支持CURD

    在Merge了这个patch(https://review.openstack.org/#/c/296603/)后,Routed Networks将要支持CRUD。
    什么是Routed Networks?我们知道,在很多数据中心网络中,我们通过Segments来区分二层网络,每个二层网络中包含若干服务器,同一个Segment内流量可以相互路由,不同的Segment之间相互隔离。Neutron也要支持这种特性。具体的Spec在http://specs.openstack.org/openstack/neutron-specs/specs/newton/routed-networks.html

    5、Neutron QA Call to action

    在Muller将Neutron核心资源的单元测试从Neutron目录中移除了之后,仍然有一些工作要做:(关于Neutron的单元测试会有单独的Neutron Tempest plugin)
    移除目前Tempest中的Neutron测试,需要移除的测试记录在:https://etherpad.openstack.org/p/neutron-tempest-defork
    将移除的Neutron测试添加到Tempest中。

    Merged Patches

    1、OVS: Add mac spoofing filtering to flows

    我们知道,关于Port的allowed_address_pairs已经在IPtables中做过限制了,即:虚拟机只允许Neutron给它分配的IP地址和MAC地址对外发包。这一特性也在OVS上实现了,并且已经merge到了Mitaka版中。
    Patch Link:https://review.openstack.org/#/c/299024/

    2、Add API to retrieve default quotas

    增加了通过API(GET /v2.0/quotas//default )获取租户默认的quota的功能。
    Patch Link:https://review.openstack.org/#/c/306200/

    3、Fix update target tenant RBAC external path

    Fix了当update RBAC时的bug:(https://bugs.launchpad.net/neutron/+bug/1577100)
    Patch Link:https://review.openstack.org/#/c/311897/

    4、Added PecanResourceExtension

    Patch Link:https://review.openstack.org/#/c/303767/

    彩蛋

    你以为这篇周报就到这里了?哈哈,那你就错了!这一期给大家分享的是目前Neutron中很热门的spec—VLAN aware VMs(https://specs.openstack.org/openstack/neutron-specs/specs/liberty/vlan-aware-vms.html)啥是VLAN aware VMs?说白了,就是让VMs内部感知到自己每个虚拟网卡的VLAN是多少。知道VLAN了有什么好处呢?

    • 一些老的应用依赖VLAN。VLAN aware VMs后,应用可以更好的适配OpenStack
    • 在现有的OpenStack架构下,虚拟机需要加入多个Neutron Network来使得虚拟机中的应用对外提供若干服务
    • VLAN aware VMs后,虚拟机只需加入一个network,就可完成上述工作
    • 在Service VMs场景中,可以通过admin用户来向其他的租户提供足够的permission
    • 介于目前Neutron尚未支持QinQ,当VLAN aware VMs后,可提供QinQ的功能
    • 为虚拟机中运行容器做好支持,如何实现呢?社区提供的思路是:33333333333

    即:一个Trunk的port会拥有若干个Subport
    好了,彩蛋就分享到这里啦。

    关于作者:

    苌智:SDN 工程师,2015年1月加入 UnitedStack有云,专注于虚拟网络和 SDN 方向,OpenStack Neutron 社区活跃贡献者。



沪ICP备19023445号-2号
友情链接