濃墨重彩之OpenStack-12-ceilometer監控服務


1、Telemetry服務概述

Telemetry數據收集服務

檢查告警服務

2、安裝和配置

先決條件

安裝和配置Telemetry服務之前,你必須創建創建一個數據庫、服務憑證和API端點。但是,不像其他服務,Telemetry服務使用NoSQL 數據庫。在進一步處理之前查看 ref:environment-nosql-database 來安裝和配置MongoDB。
  1. 創建 ceilometer 數據庫:
# mongo --host controller --eval ' db = db.getSiblingDB("ceilometer");
db.createUser({user: "ceilometer", pwd: "CEILOMETER_DBPASS",
roles: [ "readWrite", "dbAdmin" ]})'
MongoDB shell version: 2.6.xconnecting to: controller:27017/testSuccessfully added
user: { "user" : "ceilometer", "roles" : [ "readWrite", "dbAdmin" ] }
用合適的密碼替換 CEILOMETER_DBPASS
  1. 獲得 admin 憑證來獲取只有管理員能執行的命令的訪問權限:
$ . admin-openrc
  1. 要創建服務證書,完成這些步驟:
  • 創建 ceilometer 用戶:
$ openstack user create --domain default --password-prompt ceilometerUser
Password:
Repeat User Password:
    • 添加 admin 角色到ceilometer 用戶上。
$ openstack role add --project service --user ceilometer admin
註解
這個命令執行後沒有輸出。

    • 創建 ceilometer 服務實體:
$ openstack service create --name ceilometer --description "Telemetry" metering
  1. 創建Telemetry服務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

安全並配置組件

  1. 安裝軟件包:
# yum install openstack-ceilometer-api \
openstack-ceilometer-collector openstack-ceilometer-notification \
openstack-ceilometer-central python-ceilometerclient
  1. 編輯 /etc/ceilometer/ceilometer.conf,同時完成如下動作:
  • [database] 部分,配置數據庫訪問:
[database]
...
connection=mongodb://ceilometer:CEILOMETER_DBPASS@controller:27017/ceilometer
用你選擇的Telemtry服務數據庫密碼替換 CEILOMETER_DBPASS
  • 在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ” 消息隊列訪問:
[DEFAULT]
...
rpc_backend=rabbit
[oslo_messaging_rabbit]
...
rabbit_host=controller
rabbit_userid=openstack
rabbit_password=RABBIT_PASS
用你在 “RabbitMQ” 中爲 “openstack” 選擇的密碼替換 “RABBIT_PASS”。
    • 在 “[DEFAULT]” 和 “[keystone_authtoken]” 部分,配置認證服務訪問:
[DEFAULT]
...
auth_strategy=keystone
[keystone_authtoken]
...
auth_uri=http://controller:5000
auth_url=http://controller:35357
memcached_servers=controller:11211
auth_type=password
project_domain_name=default
user_domain_name=default
project_name=service
username=ceilometer
password=CEILOMETER_PASS
用你在認證服務中爲 “ceilometer” 選擇的密碼替換 “CEILOMETER_PASS”。
  • 在 “[service_credentials]” 部分,配置服務證書:
[service_credentials]
...
auth_type=password
auth_url=http://controller:5000/v3
project_domain_name=default
user_domain_name=default
project_name=service
username=ceilometer
password=CEILOMETER_PASS
interface=internalURLregion_name=RegionOne
用你在認證服務中爲 “ceilometer” 選擇的密碼替換 “CEILOMETER_PASS”。

完成安裝

  • 啓動Telemetry服務並將其配置爲隨系統啓動:
# systemctl enable openstack-ceilometer-api.service \
openstack-ceilometer-notification.service \
openstack-ceilometer-central.service \
openstack-ceilometer-collector.service

# systemctl start openstack-ceilometer-api.service \
openstack-ceilometer-notification.service \
openstack-ceilometer-central.service \
openstack-ceilometer-collector.service

3、啓用鏡像服務計量

配置鏡像服務使用Telemetry

  • 編輯 “/etc/glance/glance-api.conf” 和 “/etc/glance/glance-registry.conf”,同時完成如下動作:
  • 在``[DEFAULT]``, ``[oslo_messaging_notifications]``和``[oslo_messaging_rabbit]``部分,配置通知和RabbitMQ消息隊列訪問:
[DEFAULT]
...
rpc_backend=rabbit
[oslo_messaging_notifications]
...
driver=messagingv2
[oslo_messaging_rabbit]
...
rabbit_host=controller
rabbit_userid=openstack
rabbit_password=RABBIT_PASS
用你在 “RabbitMQ” 中爲 “openstack” 選擇的密碼替換 “RABBIT_PASS”。

完成安裝

  • 重啓鏡像服務:
# systemctl restart openstack-glance-api.service openstack-glance-registry.service

4、啓用計算服務計量

安全並配置組件

  1. 安裝軟件包:
# yum install openstack-ceilometer-compute python-ceilometerclient python-pecan
  1. 編輯 /etc/ceilometer/ceilometer.conf,同時完成如下動作:
  • 在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ” 消息隊列訪問:
[DEFAULT]
...
rpc_backend=rabbit
[oslo_messaging_rabbit]
...
rabbit_host=controller
rabbit_userid=openstack
rabbit_password=RABBIT_PASS
用你在 “RabbitMQ” 中爲 “openstack” 選擇的密碼替換 “RABBIT_PASS”。
    • 在 “[DEFAULT]” 和 “[keystone_authtoken]” 部分,配置認證服務訪問:
[DEFAULT]
...
auth_strategy=keystone
[keystone_authtoken]
...
auth_uri=http://controller:5000
auth_url=http://controller:35357
memcached_servers=controller:11211
auth_type=password
project_domain_name=default
user_domain_name=default
project_name=service
username=ceilometer
password=CEILOMETER_PASS
用你爲 Telemetry 服務數據庫選擇的密碼替換 CEILOMETER_PASS
    • 在 “[service_credentials]” 部分,配置服務證書:
[service_credentials]
...
auth_type=password
auth_url=http://controller:5000/v3
project_domain_name=default
user_domain_name=default
project_name=service
username=ceilometer
password=CEILOMETER_PASS
interface=internalURL
region_name=RegionOne
用你在認證服務中爲 “ceilometer” 選擇的密碼替換 “CEILOMETER_PASS”。

配置計算使用Telemetry

  • 編輯 /etc/nova/nova.conf 和在[DEFAULT] 配置提醒:
[DEFAULT]
...
instance_usage_audit=True
instance_usage_audit_period=hour
notify_on_state_change=vm_and_task_state
notification_driver=messagingv2

完成安裝

  1. 啓動代理和配置它隨系統一起啓動:
# systemctl enable openstack-ceilometer-compute.service
# systemctl start openstack-ceilometer-compute.service
  1. 重啓計算服務:
# systemctl restart openstack-nova-compute.service

5、啓用塊存儲計量

配置卷使用Telemetry

編輯 /etc/cinder/cinder.conf,同時完成如下動作:
  • [oslo_messaging_notifications] 部分,配置提醒:
[oslo_messaging_notifications]
...
driver=messagingv2

完成安裝

  1. 重啓控制節點上的塊設備存儲服務:
# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service
  1. 重啓存儲節點上的塊設備存儲服務:
# systemctl restart openstack-cinder-volume.service

6、啓用對象計量

先決條件


安裝組件

配置對象存儲使用Telemetry

完成安裝

7、警告服務

先決條件

在安裝和配置警告服務之前,你必須創建一個數據庫,服務憑證和API端點。
  1. 完成下面的步驟以創建數據庫:
  • 用數據庫連接客戶端以 root 用戶連接到數據庫服務器:
$ mysql -u root -p
    • 創建 ``aodh``數據庫:
CREATE DATABASE aodh;
    • 對``aodh``數據庫授予恰當的訪問權限:
GRANT ALL PRIVILEGES ON aodh.* TO 'aodh'@'localhost' IDENTIFIED BY 'AODH_DBPASS';
GRANT ALL PRIVILEGES ON aodh.* TO 'aodh'@'%' IDENTIFIED BY 'AODH_DBPASS';
用合適的密碼替換 ``AODH_DBPASS``
    • 退出數據庫客戶端。
  1. 獲得 admin 憑證來獲取只有管理員能執行的命令的訪問權限:
$ . admin-openrc
  1. 要創建服務證書,完成這些步驟:
  • 創建 ``aodh``用戶:
$ openstack user create --domain default \ --password-prompt aodhUser
Password:
Repeat User Password:
    • 添加``admin`` 角色到 aodh 用戶:
$ openstack role add --project service --user aodh admin
註解
這個命令執行後沒有輸出。

    • 創建 aodh 服務實體:
$ openstack service create --name aodh --description "Telemetry" alarming
  1. 創建警告服務API端點:
$ openstack endpoint create --region RegionOne alarming public http://controller:8042
$ openstack endpoint create --region RegionOne alarming internal http://controller:8042
$ openstack endpoint create --region RegionOne alarming admin http://controller:8042

安全並配置組件

註解
默認的配置文件根據不同發行版本而不同。有可能需要增加這些部分或是選項,而不是修改現有的部分或是選項。另外,配置文件代碼段中的省略號(...)表明這可能是你需要保留的默認配置選項。

  1. 安裝軟件包:
# yum install openstack-aodh-api \
openstack-aodh-evaluator openstack-aodh-notifier \
openstack-aodh-listener openstack-aodh-expirer \
python-ceilometerclient
  1. 編輯``/etc/aodh/aodh.conf``文件並完成以下操作:
  • [database] 部分,配置數據庫訪問:
[database]
...
connection=mysql+pymysql://aodh:AODH_DBPASS@controller/aodh
    • 在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ” 消息隊列訪問:
[DEFAULT]
...
rpc_backend=rabbit
[oslo_messaging_rabbit]
...
rabbit_host=controller
rabbit_userid=openstack
rabbit_password=RABBIT_PASS
用你在 “RabbitMQ” 中爲 “openstack” 選擇的密碼替換 “RABBIT_PASS”。
    • 在 “[DEFAULT]” 和 “[keystone_authtoken]” 部分,配置認證服務訪問:
[DEFAULT]
...
auth_strategy=keystone
[keystone_authtoken]
...
auth_uri=http://controller:5000
auth_url=http://controller:35357
memcached_servers=controller:11211
auth_type=password
project_domain_name=default
user_domain_name=default
project_name=service
username=aodh
password=AODH_PASS
將``AODH_PASS``替換成你在認證服務裏爲``aodh``用戶選擇的密碼。
    • 在 “[service_credentials]” 部分,配置服務證書:
[service_credentials]
...
auth_type=password
auth_url=http://controller:5000/v3
project_domain_name=default
user_domain_name=default
project_name=service
username=aodh
password=AODH_PASS
interface=internalURL
region_name=RegionOne
將``AODH_PASS``替換成你在認證服務裏爲``aodh``用戶選擇的密碼。
  1. 初始化告警數據庫:
# su -s /bin/sh -c "aodh-dbsync" aodh

完成安裝

  • 啓動Alarming服務並將其配置爲隨系統啓動:
# systemctl enable openstack-aodh-api.service \
openstack-aodh-evaluator.service \
openstack-aodh-notifier.service \
openstack-aodh-listener.service

# systemctl start openstack-aodh-api.service \
openstack-aodh-evaluator.service \
openstack-aodh-notifier.service \
openstack-aodh-listener.service
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章