Openstack-Cell
Posted chenlaomo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Openstack-Cell相关的知识,希望对你有一定的参考价值。
openstack-Cell
1、 原理
在不影响现有的openstack云环境的前提下,解决openstack的扩展性和规模瓶颈。主要是把计算节点分为更多个更小的单元,每一个单元都有自己的数据库和消息队列。
2、 功能
(1)Messages的路由,即父cell通过nova-cell将Messages路由到子cell的AMQP(消息队列)模块。
(2)分级调度功能,即调度某个instances的时候先要进行cell的选择,目前只支持随机调度,后续会增加基于filter和weighing策略的调度。
(3)资源统计,子cell定时的将自己的资源信息上报给父cell,用来给分级调度策略提供决策数据和基于cell的资源监控。
(4)cell之间的通信(通过rpc远程调用完成)。
3、模块基础架构
Cell结构中主要分为 API Cell(Parent Cell )以及 Child Cell 两种形式,其中,API Cell 主要包含的服务如下: AMQP、Broker、Database、nova-cells、nova-api、Keystone;Child Cell主要包含的服务有:AMQP、Broker、Database、nova-cells、nova-scheduler、nova-network、nova-compute、Keystone。
每一个Cell 包含独立的 Message Broker 以及 Database,其中 API Cell 主要包含 nova-api 服务,用于接收用户请求,并将用户请求通过 message 的形式发送至指定的 Cell。Cells 之间的通信主要通过传递 message 实现的,API Cell 会将用户的请求合成一个含有指定 Child Cell 的 message,含有请求的 message 会在 Children Cells 中间进行路由,直至指定的 Cell 节点进行处理。Child Cell 包含除 nova-api 之外的所有 nova-*服务,实现具体的 Nova Compute 节点服务;API Cell 与 Child Cell 共享 Glance 服务,且各 Cells 之间的通信均通过 nova cells 服务进行。
Cell 调度独立于与 host 调度,在创建新的实例时,首先由 nova-cells 选择一个 Cell。当 Cell 确定后,实例创建请求会被送达目标 Cell 的 nova-cells 服务,随后该请求会被交给本 Cell 的主机调度机制处理,此时主机调度机制会像未配置 Cell 的环境一样处理该请求。
3、相关命令
nova-manage cell list -------可用来查看当前环境中有没有cell节点存在
以上是关于Openstack-Cell的主要内容,如果未能解决你的问题,请参考以下文章