您的位置:首页 > 运维架构 > Apache

Apache Stratos探究:4.0.0 Cloud Controller Architecture

2016-02-01 13:57 691 查看
     Cloud Controller负责与IaaS通信,并且启动和关闭 VM和Docker容器,处于Apache Stratos框架的最底层。
     下图是 Cloud Controller的框架示意图。 
     


    由图可知,它由Cloud controller service、Cloud controller deployer、Axiom Xpath parser、Topology publisher、
IaaS implementation layer、jclouds几部分组成,下面分别进行介绍
Cloud controller service
     从Cloud Controller中获得服务的上层主要与它进行通信。从代码角度来看,这里定义了一个叫做CloudControllerService的
接口,并且有一个实现类CloudControllerServiceImpl。
Cloud controller deployer
     是一个Axis2的部署者,负责部署和更新cloud-controller.xml文件。(Axis2是一个Web Services/SOAP/WSDL引擎,
什么是Web Services/SOAP/WSDL,可以看这篇转载的文章,原作者写的不错http://blog.csdn.net/zhouhuakang/article/details/50614510
Axiom Xpath parser
     负责解析Cloud Controller中的全部的 *.xml格式的配置文件。
Topology publisher
     Apache Stratos采用比较中心的位置,比如Cloud Controller来保存topology configuration。topology configuration在Apache Stratos指的是,在云环境下,在各个服务集群的信息。
     将此信息仅仅保存在Cloud Controller中是不够高效的,因为在其他地方也要用到topology configuration,比如说Elastic Load Balancer(ELB),Artifact Distribution Coordinator(ADC)。因此,Cloud Controller会负责与其他组件同步该信息。下图解释了同步过程是如何发生的。 



Topology synchronization
1.Cloud Controller保持不断构建topology configuration,然后定期的将其发布到一个topic中。(topic由Message Broker创建,而Message Broker是嵌入到Cloud Controller中的)
2.任何订阅者(subscriber)需要topology configuration的,可以订阅相关的topic,之后将获得保持同步的topology configuration。
3.理想情况下,订阅者英国可以分辨出configuration之间的不同的不同之处,并且及时根据不同之处作出反应。
Building a topology 



    通过移除一个已经添加进去的topology或者更新一个现有的topology(更新topology的时候,不用重启服务器),可以动态改变topology configuration。
    采用生产者-消费者模式,当一个topology动态改变时,topic可获取到一个最新版版的该topology。由上图可知,作为生产者,Cloud Controller的Service Deployer会实时跟踪变化,并将新的topology configuration放入到一个共享的阻塞式的队列中,之后,作为消费者的Topology Builder会从队列中抓取到变化,并且添加或者更新topology
configuration  :<APACHE-STRATOS-CC>/repository/conf/service-topology.conf
IaaS implementation layer
     故名思意,该层是IaaS的实现层。这里关键是有一个叫做Iaas的抽象类,任何IaaS想让Cloud Controller支持,则必须需要实现Iaas这个抽象类。
jcloud
     指的是jcloud的api。jclouds 是一个开源的Java类库,用来帮你开始云计算应用开发。
     关于Apache jcloud,可以看下面这篇转载的文章
     http://blog.csdn.net/zhouhuakang/article/details/50615678

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: