每一个 OpenStack 组件可能包含若干子服务,其中一定有一个 API 服务负责接收客户请求。 以 Nova 为例,nova-api 做为 Nova 组件对外的惟一窗口,向客户暴露 Nova 可以提供的功能。 当客户须要执行虚机相关的操做,能且只能向 nova-api 发送 REST 请求。这里的客户包括终端用户、命令行和 OpenStack 其余组件。
设计 API 前端服务的好处在于:
对外提供统一接口,隐藏实现细节
API 提供 REST 标准调用服务,便于与第三方系统集成
能够经过运行多个 API 服务实例轻松实现 API 的高可用???,好比运行多个 nova-api 进程