Ceilometer 数据库比较

Ceilometer和其他OpenStack项目相比,部署中比较不同的是Ceilometer可以选用多种不同的后台数据库来保存测量值和警告器。

目前Ceilometer支持的后台数据库及及其相应的配置如表9-5所示:

表9-5  Ceilometer支持的后台数据库

数据库

配置项示例

说明

MongoDB

[database]

connection = mongodb://user:pass@host:27017/ceilometer

需要MongDB2.4及以后的版本

SqlAlchemy所支持的关系型数据库

[database]

connection= mysql://user:pass@host/ceilometer?charset=utf8

需要运行ceilometer-dbsync来创建数据库

HBase

[database]

connection = hbase://hbase-thrift-host:9090

Ceilometer使用HappyBase库通过HBase Thrift接口和后台Hbase数据库进行通讯

DB2

[database]

connection = db2://user:pass@host:27017/ceilometer

 

Juno版本中,支持采用不同的数据库后台分别保存测量值和警告器,管理员可以使用如下的配置项示例:

# 以下是/etc/ceilometer/ceilometer.conf中的部分配置

[database]

# 使用MongoDB保存测量值

metering_connection = mongodb://user:pass@localhost:27017/ceilometer

# 使用PostgreSQL保存警告器

alarm_connection = postgresql://user:pass@localhost/ceilometer

Ceilometer中不同的数据库后台所支持的功能也有所不同,如表9-6所示:

表9-6  Ceilometer支持的后台数据库功能对比

功能

MongoDB

SqlAlchemy所支持的关系型数据库

HBase

DB2

测量值

基本查询

ü

ü

ü

ü

基于metadata的查询

ü

ü

ü

ü

测量取样

基本查询

ü

ü

ü

ü

基于metadata的查询

ü

ü

ü

ü

用户自定义复杂查询

ü

ü

û

ü

集合统计

基本查询

ü

ü

ü

ü

基于metadata的查询

ü

ü

ü

ü

支持groupby操作

ü

ü

û

ü

支持基本统计操作:

max/min/avg/count/sum

ü

ü

ü

ü

支持标准方差统计

ü

ü

û

û

支持基数(cardinality)操作

ü

ü

û

û

支持警告器(Alarm)

ü

ü

ü

û

9.2.2  安装

my_mongodb_0:PRIMARY> use ceilometer
my_mongodb_0:PRIMARY> db.addUser ( { user: "ceilometer", pwd: "ceilometerpassword" , roles: [ "readWrite", "dbAdmin" ] } )

Restart ceilometer services:

$ sudo service ceilometer-agent-central restart
$ sudo service ceilometer-api restart
$ sudo service ceilometer-collector restart
http://www.severalnines.com/blog/openstack-metering-how-install-ceilometer-mongodb
原文地址:https://www.cnblogs.com/allcloud/p/4938392.html