ceilometer主要组件分析

一、Agent

  主要有compute agent 和central agent,还有一些其他的agent这里暂时不分析。

  agent初始化时会动态加载给定namespace的pollster插件,并通过PollingTask管理pollster的调用,为每个pollster配置pipeline。pollster可以通过调用inspector采集虚拟机中的信息,inspector主要采用底层虚拟化手段获得虚拟机信息,例如通过libvirt;pollster也可以通过openstack服务的API采集数据。最后,pollster通过pipeline对采集到的数据进行处理和分发,pipeline包括transformer和publisher,前者负责数据转换,后者负责数据分发。

二、Collector

  负责订阅并汇总数据,主要提供RPC监听和UDP监听,接受agent发送过来的数据。它会将数据存到数据库中,底层一般使用mongodb。如下图所示:

三、API

  主要对外提供数据的访问接口。

四、Alarm

  暂时不分析!

参考文献:

http://docs.openstack.org/developer/ceilometer/architecture.html

http://yansu.org/2013/06/11/hacking-in-openstack-ceilometer-compute-agent.html

http://blog.csdn.net/gaoxingnengjisuan/article/details/41631547

时间: 2024-12-14 18:13:53

ceilometer主要组件分析的相关文章

MVC组件分析(转)

2System.Web.Mvc V 4.0.0.0 组件分析 2.1 Routing组件(路由选择) Routing的作用就是负责分析Url Action的要求? 必须是一个公有方法? 必须返回ActionResult类型? 必须是实例方法? 不能是范型方法? 没有标注NonActionAttribute? 不能被重载(overload) 2.2 Controller(控制器) 2.3控制器可用的ActionResult ActionResult是控制器方法执行后返回的结果类型,控制器方法可以返

Android平台PreferenceActivity组件分析

1.PreferenceActivity 介绍 PreferenceActivity 继承ListActivity 它是以一个列表的形式在展现内容,它最主要的特点是添加Preference可以让控件的状态持久化储存,举个例子 比如用户选中checkbox后 退出应用然后在进入应用,这时用户希望看到的是checkbox被选中,所以软件须要记录用户每次操作的过程并且持久储存,在进入应用的时候须要判断这些久储存的数据然后将系统控件的状态呈现在UI中. 尤其是软件开发肯定会有一堆设置选项选项,每次进入A

MVC组件分析

2System.Web.Mvc V 4.0.0.0 组件分析 2.1 Routing组件(路由选择) Routing的作用就是负责分析Url Action的要求? 必须是一个公有方法? 必须返回ActionResult类型? 必须是实例方法? 不能是范型方法? 没有标注NonActionAttribute? 不能被重载(overload) 2.2 Controller(控制器) 2.3控制器可用的ActionResult ActionResult是控制器方法执行后返回的结果类型,控制器方法可以返

android4.4组件分析--service组件

6       Service 6.1            service介绍 6.1.1.            基本介绍 Service是Android四大组件之一(其余的是activity.BroadcastReceiver.Content Provider). Service(服务)是一个没有用户界面的在后台运行执行耗时操作的应用组件.其他应用组件能够启动Service,并且当用户切换到另外的应用场景,Service将持续在后台运行.另外,一个组件能够绑定到一个service并与之交互

【Android 应用开发】 自定义组件 宽高适配方法, 手势监听器操作组件, 回调接口维护策略, 绘制方法分析 -- 基于 WheelView 组件分析自定义组件

博客地址 : http://blog.csdn.net/shulianghan/article/details/41520569 代码下载 : -- GitHub : https://github.com/han1202012/WheelViewDemo.git -- CSDN : http://download.csdn.net/detail/han1202012/8208997 ; 博客总结 : 博文内容 : 本文完整地分析了 WheelView 所有的源码, 包括其适配器类型, 两种回调接

极简容器化交付 | 部署组件分析

之前给大家讲了构建镜像的原理,那么有了镜像之后,我们怎么样能将它快速的部署到kuberentes集群上呢? 早期,大家都习惯于使用kubernetes接口,或者cli命令行来完成这些操作,但是yaml文件语法的复杂性.大量容器和kuernetes的概念,让人难以理解,无疑成为容器化交付路上的又不障碍. 为了解决这些问题,华为云容器服务推出了向导式镜像部署,通过一步步引导.对复杂概念的屏蔽或抽象,在一定程度上降低了用户首次部署镜像的难度,但是灵活度相对较差,对于经常变更版本的场景,还是需要使用原生

在laravel中使用Symfony的Crawler组件分析HTML

Crawler是英语中爬行动物的意思,读做"哭了" ...-_-! 最近在用laravel写一个抓取网页系统,之前使用的是simple_html_dom来对html进行解析,既然使用了laravel自然要用composer工具包来实现功能才显得高大上... 题外话,simple_html_dom好像也可以用composer来安装,不过因为代码比较早不支持PSR编码规范,尤其是autoload,也就是Vendor代码结构,github上有个支持PSR规范改进版sunra/php-simp

android4.4组件分析--service组件-bindService源代码分析

6.1.1.    bindService 由于有前面分析startService的代码实现过程,则对于bindService的代码分析就不用那么具体介绍,在介绍流程的同一时候更关注一些细节上的部分. 首先,bindService也是通过 ContextWrapper.bindService,再到ContextImpl的bindService,然后是bindServiceCommon,须要注意的是,传入的ServiceConnection被转换成IServiceConnection类型, pri

android4.4组件分析--service组件-bindService源码分析

6.1.1.    bindService 因为有前面分析startService的代码实现过程,则对于bindService的代码分析就不用那么详细介绍,在介绍流程的同时更关注一些细节上的部分. 首先,bindService也是通过 ContextWrapper.bindService,再到ContextImpl的bindService,然后是bindServiceCommon,需要注意的是,传入的ServiceConnection被转换成IServiceConnection类型, priva