Neutron的Segments 扩展extension

Neutron的一个扩展,允许在/segments资源的API调用上执行CRUD操作,对应于DB 层中的NetworkSegment实体。这个扩展作为服务插件实现。

: segments服务插件默认不会配置. 要配置它,在neutron.conf文件中,,将segments添加为service_plugins的参数。

核心插件可以通过注册SEGMENT资源关联事件的回调函数与segments服务插件配合。目前,segments插件可通知订阅用户以下的事件:

  • PRECOMMIT_CREATE
  • AFTER_CREATE
  • BEFORE_DELETE
  • PRECOMMIT_DELETE
  • AFTER_DELETE

在撰写本文时,ML2OVN注册回调从segments服务插件接收事件。ML2插件定义了回调_handle_segment_change处理所有相关的segments事件。

Segments扩展相关模块

  • neutron/extensions/segment.py 定义此扩展
  • neutron/db/models/segment.py 定义segments和segments主机映射的DB模型,在路由网路中使用。
  • neutron/db/segments_db.py 定义从DB中添加、获取、和删除segments的函数。
  • neutron/services/segments/db.py 定义一个混合的类及为segments插件执行API CRUD操作的方法。还有创建和维护segments到主机映射的函数,这是路由网路所需要的。
  • neutron/services/segments/plugin.py 定义segments服务插件.
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页