Openstack-Mitaka Ceilometer 部署心得


Openstack-Mitaka Ceilometer 部署心得

標簽 : Openstack


Ceilometer 是 Openstack 的監控管理計費模塊,我所用的版本為 Mitaka 版本。Ceilometer 模塊依賴 Keystone 認證模塊,需要先部署好 Keystone 。

系統環境為 Centos 6.7。
把節點的 hostname 設置為 controller。
編輯 /etc/hosts文件如下:

# controller
127.0.0.1       controller

ceilometer-client

安裝 python-ceilometerclient,通過 CLI 命令進行交互。

1. ceilometer
    可管理和查看 ceilometer 模塊收集到的資源信息。

這些 client 不依賴於配置文件,但與環境變量、命令行參數有關。


ceilometer 模塊

首先,從 github 上把 ceilometer 模塊克隆下來。

$ cd /opt/stack
$ git clone https://git.openstack.org/openstack/ceilometer.git -b stable/mitaka

安裝 ceilometer web 服務:

$ cd ceilometer
$ sudo python setup.py install

該 ceilometer 模塊依賴於配置文件,例如,/etc/ceilometer/ceilometer.conf,但與環境變量無關。


配置文件

復制樣例配置文件到特定地方:

$ mkdir -p /etc/ceilometer
$ cp etc/ceilometer/*.json /etc/ceilometer
$ cp etc/ceilometer/*.yaml /etc/ceilometer
$ cp etc/ceilometer/ceilometer.conf.sample /etc/ceilometer/ceilometer.

編輯 /etc/ceilometer/ceilometer.conf, 並完成以下改動:

  • 在 [database] 部分中,配置數據庫連接:
[database]
connection = mongodb://username:password@host:27017/ceilometer
  • 在 [keystone_authtoken] 部分中,配置如下:
[keystone_authtoken]
auth_url = http://controller:35357
project_name = admin
username = admin
password = admin
auth_type = password

以上為可通過驗證的賬號。

需要注意的是,使用 oslo-config-generator 生成的 ceilometer.conf 跟官網是有一定差別的,例如,在 [keystone_authtoken] 部分少了些字段,需要自己加上去,不然 ceilometer-api 運行失敗。


建立服務信任

  • 建立 ceilometer 的賬號。
openstack user create --domain default --password-prompt ceilometer
  • 把 admin 角色加入到 ceilometer 的賬號中。
openstack role add --project service --user ceilometer admin
  • 創建 ceilometer 的服務實體。
openstack service create --name ceilometer \
  --description "Telemetry" metering
  • 建立監控服務 API 終端。
openstack endpoint create --region RegionOne \
  metering public http://controller:8777
openstack endpoint create --region RegionOne \
  metering internal http://controller:8777
openstack endpoint create --region RegionOne \
  metering admin http://controller:8777
  • 在 [service_credentials] 部分中,配置如下 ( 未確定 ) :
[service_credentials]
interface = internalURL
# Authentication type to load (string value)
# Deprecated group/name - [service_credentials]/auth_plugin
auth_type = password
# Authentication URL (string value)
auth_url = http://controller:5000/v3
# Project name to scope to (string value)
# Deprecated group/name - [service_credentials]/tenant-name
project_name = service
# Domain name containing project (string value)
project_domain_name = Default
# Username (string value)
# Deprecated group/name - [service_credentials]/user-name
username = ceilometer
# User's domain name (string value)
user_domain_name = Default
# User's password (string value)
password = ceilometer

這部分配置跟 ceilometer-polling 有關。


運行

需要先運行 keystone 模塊,ceilometer 模塊有多個,運行命令有:

ceilometer                     ceilometer-api                 ceilometer-db-legacy-clean     ceilometer-expirer             ceilometer-rootwrap            
ceilometer-agent-notification  ceilometer-collector           ceilometer-dbsync              ceilometer-polling             ceilometer-send-sample         

環境變量

$ export OS_AUTH_URL=http://controller:5000/v3
$ export OS_PROJECT_ID=0bd816d507f34276ab4bc253705d9818
$ export OS_USERNAME=ceilometer
$ export OS_PASSWORD=ceilometer
$ export OS_USER_DOMAIN_NAME=Default

ceilometer-client 只支持 v3 版本。v3 版本比 v2 多了個 domain 概念。


使用

運行 ceilometer-api 命令,就會默認占用端口 8777 運行一個 API Server,可通過 ceilometer-client 進行交互。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM