查看原文
其他

OpenStack“森林Senlin”项目详解

2016-10-09 九州云 云技术实践

本文经过九州云授权,转载自九州云订阅号“九州云99Cloud”



简介
OpenStack Senlin项目名字来自中文“森林”的汉语拼音,该项目由滕启明博士创立并担任PTL,Senlin是专为管理其他OpenStack服务中同类对象而设计的集群服务。
它的特点在于拥有一个开放的框架,开发者能够为指定类型的对象提供插件以实现托管,以及在特定集群运行时想执行的策略。
简而言之,它们能够为编程/管理OpenStack云提供一个阵列数据类型。
架构

整个Senlin架构简单清晰,外部通信使用REST API,内部使用RPC,senlin-engine是Senlin中最核心的部分,负责按照对应的policy和profile完成集群的成员管理、状态恢复、负载均衡等事情。
Senlin-api对外提供了RESTful接口,senlinclient或者其他服务可以调用API来对集群进行管理和维护。Senlin-dashboard是horizon的一个插件,用户可以通过界面创建profile,policy,集群等资源。
Senlin代码地址:

Senlin:
Senlinclient:
Senlin-dashboard:
Senlin术语
1.Cluster
集群是同类对象(比如Node)的集合,集群中包含0个或多个Node,这些Node会和Policy相关联。
2.Node
Node通常代表OpenStack中一个资源,比如一台虚拟机,一个云硬盘,Node可以是集群中的一个对象,也可以是单独的Node不属于任何一个集群(orphaned node),集群中的Node必须关联相同类型的Profile。
3. Profile
创建Node的时候我们需要选择Profile,Profile定义了资源的一些属性。我们创建Node的时候会调用OpenStack相关服务来创建OpenStack资源。
4. Policy
在Senlin中,用户可以给集群绑定policy,根据这些策略可以实现集群的自动扩展,负载均衡,高可用等功能。

Senlin User Cases
1.自动扩容
Senlin有针对性的实现了跨可用Zone的部署、跨Region的部署、指定节点删除、手动扩容等功能。
2.负载均衡
根据负载均衡policy,可以实现lb member的自动增加或者减少。
3.虚拟机HA
虚拟机HA是一个企业级的功能,senlin会检测Node(虚拟机)的状态,当这个节点宕机时,会启用相关的recovery策略。
4.在Magnum中用来管理容器
Senlin增加对Container的支持后在Magnum中就有了用武之地。东京峰会上腾对此有专题演讲:《Exploring Magnum and Senlin Integration for AutoScaling containers》
5.Sahara中管理Handoop集群
基于Ironic实现物理机的部署与管理。





KVM云技术社区微信群加入,联系北极熊:


KVM云技术社区QQ群,99.99%纯技术交流气氛

QQ 1群:434720759(已满

QQ 2群:131961942,加入密码大写KVM

1000人VMWare技术交流群494084329,加入密码小写vm

OpenNebula QQ群:495571573 加入密码Nebula

2000人OpenStack开发纯技术群: 334605713 加入密码nova

Cloudstack纯技术交流群:515249455密码cs

2000人桌面云行业讨论: 484979056 加入密码大写VDI

2000超融合行业讨论群:65779632 加入密码大写HC

2000人云技术招聘求职群: 279875515 加入密码hr



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存