探索OpenStack:计量模块 Ceilometer 中的数据收集机制

作者:Sammy Liu 刘世民

本文将阐述 Ceilometer 中的数据收集机制。Ceilometer 使用三种机制来收集数据:

  • Notifications:Ceilometer 接收 OpenStack 其它服务发出的 notification message
  • Polling:直接从 Hypervisor 或者 使用 SNMP 从host machine,或者使用 OpenStack 其它服务的 API 来获取数据。
  • RESTful API:别的 application 使用 Ceilometer 的 REST API 创建 samples。

1. Notifications

1.1 被 Ceilometer 处理的 notifications

所有的 OpenStack 服务都会在执行了某种操作或者状态变化时发出 notification。一些…

详细内容

探索OpenStack:计量模块 Ceilometer 介绍及优化

本文作者:SammyLiu 刘世民

 

0. 背景

0.1 为什么要有 Ceilometer?

通常云,特别是公有云在计费方面有三个层次:

  • 计量 (Metering): 收集资源的使用数据,其数据信息主要包括:使用对象(what), 使用者(who), 使用时间(when)和 用量(how much)。
  • 计费 (Rating):将资源使用数据按照商务规则转化为可计费项目并计算费用
  • 结算 (Billing):收钱开票

Ceilometer 的目标是 计量 Metering 方面,为上层的计费、结算或者监控应用提供统一的资源使用数据收集功能。

“To provide an infrastructure to collect any information needed within all OpenSta…

详细内容

OpenStack计费项目CloudKitty的强化及运用

本文作者: “Li Xiangjun”

 

在OpenStack开发社区向“Big Tent”模式全面转型之际,一个新的项目—CloudKitty进入了人们的视野。该项目基于OpenStack对外提供Rating-as-a-Service的服务,旨在解决IaaS层计费方面的需求。

 

Why we need it

云计算的一个最大特征就是“按需使用,按量付费”,那么基于OpenStack的云平台如何来实现计费方面的需求呢?很遗憾,社区在很长一段时间内都没有给出一个切实可行的解决方案(有这方面的尝试,像BP: https://wiki.openstack.org/wiki/Ceilometer/blueprints/Add_Billing_in_Ceilometer就是计划在Ceilometer框架内添加计费的功能,但最后都没有了下文),很多…

详细内容

Ceilometer的数据采集机制

作者:niusmallnan(@牛小腩)  东网科技工程师
原文链接:http://niusmallnan.github.io/_build/html/_templates/openstack/ceilometer_collect.html

ceilometer主要负责监控数据的采集,采集的项目包括虚拟机的性能数据,neutron-l3-router使用的网络带宽,glance&cinder&swift等租户使用信息,甚至是通过snmp采集物理机的信息,以及采集支持opendaylight的网络设备信息。

基本概念

ceilometer 主要有下面几个概念:

  • meter 是ceilometer定义的监控项,诸如内存占用,网络IO,磁盘IO等等
  • sample 是每个采集时间点上meter对应的值
  • statistics 一般是统计学上某个周期内,me…

详细内容

《OpenStack部署实践》作者访谈:对于OpenStack的多角度思考

作者:杨赛

编者按:日前,InfoQ对《OpenStack部署实践》一书作者进行了采访,主要内容包括如何学习OpenStack的相关资源及建议,采访主要针对本书的受众,Ceph在OpenStack中的应用,OpenStack在企业级领域的相关思考等方面着重介绍了从入门到实践OpenStack的过程。推荐给大家。

 

OpenStack中国技术群管理员之一成都-子凡近日完成了《OpenStack部署实践》一书的撰写,目前已在预售。本书侧重于介绍OpenStack的不同安装模式,以及作者在各种部署实验中积累的经验。本书大部分内容基于当前较稳定的OpenStack Grizzly版本撰写。

作者介绍

张子凡,1989年毕业于吉林大学计算机系,从modem、3+网络以及Basic、DBase、Foxbase开始一直混迹IT行业。1999年加入朗讯科技公司。至2011…

详细内容

OpenStack Ceilometer API说明

1.概述

Ceilometer是OpenStack中的一个子项目,它像一个漏斗一样,能把OpenStack内部发生的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑。Ceilometer的核心架构图如下:

 

 

Ceilometer架构1

 图1 Ceilometer的核心架构图

 Ceilometer架构2模型

图2 Ceilometer架构模型

2.安装

2.1安装服务

apt-get install ceilometer-api
ceilometer-collector ceilometer-agent-central python-ceilometerclient

2.2配置

/etc/ceilometer/ceilometer.conf

 

[DEFAULT]

#rabbitMQ

rabbit_host = client…

详细内容

OpenStack与监控系统

数据监控和展示是云平台中重要的部分,随着节点数目和所需监控对象的数量的增加,一个强大、健全、可扩展的监控系统才能满足各类用户的需求。它是一个云平台非常重要的特性,也是评估一个IAAS的可运维程度的参考。

首先我们需要看看目前众多云平台的监控现状。

第一类监控服务: 基本数据监控服务

阿里云在这方面的工作跟盛大云、Google Cloud Engine类似,主要覆盖了三个基本指标分别是VM的CPU,存储带宽和网络流量。但是目前而言,历史功能都不是太丰富,这些都是基本不可能让SA依赖这些功能去运维的。

j1

 

j2

第二类监控服务: 多维度数据监控服务

AWS一直是将服务可运维作为一个重要目的,如果AWS在EC2,EBS的努力一样,数据监控和报警在AWS的CloudWatch上体现。

AWS的CloudWatch API设计是作者比较推崇的,它将任意维…

详细内容

一些开源的监控工具

什么东西可以监控OpenStack呢?OpenStack对监控的需求起码有以下这些:

 

  • 不仅要能监控物理机,也能监控虚机
  • 监控信息也必须是tenant隔离的
  • 监控项的收集应该是自动地
  • 监控工具应该一般化以监控任何设备
  • 监控工具必须提供API

下面是监控工具的一般架构:

 

zhjk

 

网上搜索了一下,现在主流的监控工具有:Nagios, cacti, Zabbix, Muni, Zenoss。我不是做运维的对这些工具都不熟,以前不熟,现在也不熟。下面是一些理解,不一定准。

Nagios,最老牌了,比较通用的监控工具。特大的特点是报警。图形化功能一般般。一般要安装Agent,配置起来看网上的说法是比较复杂的,没用过,没实际发言权。

cacti,图形化功能不错,所以Nagios一般结合它来使用。…

详细内容

OpenStack下虚拟机的监控

整个方案的基本思想是由host负责运行程序,采集数据,额外一台服务器作为server收集每台host的数据进行分析。本文涉及的程序代码均可以从Github上下载,虚拟化使用kvm,使用libvirt作为C API。

AD:

本文涉及的程序代码均可以从作者的github上下载, 并且持续更新代码

虚拟化使用kvm,使用libvirt作为C API

基本思想:host负责运行程序,采集数据,额外一台服务器作为server收集每台host的数据进行分析

程序介绍:

首先我们需要打开一个和hypervisor的连接,需要一个virConnectPtr的指针

virConnectOpenReadOnly(char *) 返回的就是这麽一个指针。初始化程序例如:

void conn_init(char *ip, virConnectPtr *co...

详细内容

OpenStack Ceilometer简介

Ceilometer项目创建时最初的目的是实现一个能为计费系统采集数据的框架。在G版的开发中,社区已经更新了他们的目标,新目标是希望Ceilometer成为OpenStack里数据采集(监控数据、计费数据)的唯一基础设施,采集到的数据提供给监控、计费、面板等项目使用。

Project Goal

For Grizzly, the new objective is The project aims to become the infrastructure to collect measurements within OpenStack so that no two agents would need to be written to collect the same data. It’s primary targets are monitoring and metering, but…

详细内容