理解 Neutron Server 分层模型 - 天天5分钟玩转 OpenStack(69)

本节开始讨论 Neutron 的各个服务组件,首先学习 Neutron Server 。数据库

上图是 Neutron Server 的分层结构,至上而下依次为:ide

Core API
对外提供管理 network, subnet 和 port 的 RESTful API。学习

Extension API
对外提供管理 router, load balance, firewall 等资源 的 RESTful API。router

Commnon Service
认证和校验 API 请求。server

Neutron Core
Neutron server 的核心处理程序,经过调用相应的 Plugin 处理请求。资源

Core Plugin API
定义了 Core Plugin 的抽象功能集合,Neutron Core 经过该 API 调用相应的 Core Plgin。it

Extension Plugin API
定义了 Service Plugin 的抽象功能集合,Neutron Core 经过该 API 调用相应的 Service Plugin。io

Core Plugin
实现了 Core Plugin API,在数据库中维护 network, subnet 和 port 的状态,并负责调用相应的 agent 在 network provider 上执行相关操做,好比建立 network。route

Service Plugin
实现了 Extension Plugin API,在数据库中维护 router, load balance, security group 等资源的状态,并负责调用相应的 agent 在 network provider 上执行相关操做,好比建立 router。network

概括起来,Neutron Server 包括两部分: 1. 提供 API 服务。 2. 运行 Plugin。

Neutron Server = API + Plugins


明白了 Neutron Server 的分层模型,咱们就更容易理解 Neutron 是如何支持各类 network provider。
这一点咱们放到下节详细讨论。

相关文章
相关标签/搜索