zoukankan      html  css  js  c++  java
  • odl v2 driver

    networking-odl项目的目的/用途就是sync odl和neutron的资源数据库和状态

    v1中对于每个neutron的资源操作都相应的调用odl restfu api来同步odl,但问题有以下:

    2个操作不能顺序进行导致状态不一致:

    V2用来解决资源竞争,可扩展行和支持HA。

    基本原理是每个neutron操作都记录到odl 数据库中,

    每个odl driver在sync线程中去同步到odl,解决了issue 3。

    先把操作记录到DB中解决了操作到odl顺序不一致的问题 (issue 6),

    sync线程需要获取DB锁来解决并发锁的问题(issue 2),

    同时多个neutron  server可以同时写入记录DB解决了并发的问题(issue 1)。

    issue 5从odl到neutron的通知功能在开发计划中。

    JournalEntry就是一个neutron的操作记录,在ML2的odl driver中的precommit时设置状态为PENDING,

    然后由后台同步线程或者postcommit来触发处理PROCESSING 操作。

    v2如何支持HA的:

    neutron server的操作记录到DB中,同步线程需要获得DB锁来做同步处理。

    重新完全同步被用来ODL重启或者初始化时,从neutron DB(注意不是jounalentry DB)同步ODL

     需要Lightweight 测试框架来测试HA,tempest测试too heavy, 有一种想法是把tempest 过程录制下来再Lightweight 测试框架回放。

    目前社区https://review.openstack.org/#/c/314447/ 打算采用一种更为灵巧的做法,通过message bus上的RPC来模拟neutron 失败来测试HA。

  • 相关阅读:
    js变量类型
    js词法分析
    ORACLE 查找字段在哪些表里存在
    主外键约束的关闭和启用
    pl/sql developer 编码格式设置(转)
    WIN7 Net Configuration Assistant打不开
    Kettle 连接失败 Oracle 数据库报 ora-12505 的解决方法(转)
    正则表达式30分钟入门教程(转)
    设置程序的多个入口,进行动态的显示
    应用多入口配置
  • 原文地址:https://www.cnblogs.com/allcloud/p/5600491.html
Copyright © 2011-2022 走看看