ceilometeran安装
一、安装、配置并使用mongodb 数据库
Controller节点
1.安装配置mongodb
# yum install -y mongodb-server mongodb
# vi /etc/mongod.conf
bind_ip = 192.168.100.10
smallfiles = true
2.启动mongodb 数据库并设置开机自启
# systemctl enable mongod.service
# systemctl start mongod.service
3.创建ceilometer非关系数据库
# mongo --host controller --eval '
db = db.getSiblingDB("ceilometer");
db.createUser({user: "ceilometer",
pwd: "123456",
roles: [ "readWrite", "dbAdmin" ]})'
二、创建服务凭证和API端点
Controller节点
1.创建服务凭证
# . /root/admin-openrc
# openstack user create --domain default --password-prompt ceilometer
User Password:
Repeat User Password:
# openstack role add --project service --user ceilometer admin
# openstack service create --name ceilometer \
--description "Telemetry" metering
2.创建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.安装并配置ceilometer
Controller节点
1)安装ceilometer相关包
# yum install -y openstack-ceilometer-api \
openstack-ceilometer-collector openstack-ceilometer-notification \
openstack-ceilometer-central python-ceilometerclient
2)配置/etc/ceilometer/ceilometer.conf文件
# vi /etc/ceilometer/ceilometer.conf
[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
[database]
connection = mongodb://ceilometer:123456@controller:27017/ceilometer
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 123456
[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 = 123456
[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 = 123456
interface = internalURL
region_name = RegionOne
3)启动ceilometer服务并设置开机自启
# 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
2.启用图像服务表
1)配置/etc/glance/glance-api.conf文件
# vi /etc/glance/glance-api.conf
[DEFAULT]
rpc_backend = rabbit
[oslo_messaging_notifications]
driver = messagingv2
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 123456
2)重启镜像服务
# systemctl restart openstack-glance-api.service openstack-glance-registry.service
3.启用计算服务表
Compute节点
1)安装ceilometer相关包
# yum install -y openstack-ceilometer-compute python-ceilometerclient python-pecan
2)配置/etc/ceilometer/ceilometer.conf文件
# vi /etc/ceilometer/ceilometer.conf
[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
instance_usage_audit = True
instance_usage_audit_period = hour
notify_on_state_change = vm_and_task_state
notification_driver = messagingv2
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 123456
[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 = 123456
interface = internalURL
region_name = RegionOne
[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 = 123456
3)启动ceilometer服务并设置开机自启
# systemctl enable openstack-ceilometer-compute.service
# systemctl start openstack-ceilometer-compute.service
# systemctl restart openstack-nova-compute.service
4.启用块存储表
Controller节点、Compute节点
1.编辑/etc/cinder/cinder.conf文件
# vi /etc/cinder/cinder.conf
[oslo_messaging_notifications]
driver = messagingv2
2.重启cinder服务
# systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service
# systemctl restart openstack-cinder-volume.service
5.启用对象存储表
Controller节点
1)创建ResellerAdmin角色,并加入ceilometer用户
# . /root/admin-openrc
# openstack role create ResellerAdmin
# openstack role add --project service --user ceilometer ResellerAdmin
2)安装相关包
# yum install -y python-ceilometermiddleware
3)编辑/etc/swift/proxy-server.conf文件
# vi /etc/swift/proxy-server.conf
在[filter:keystoneauth]选项添加admin, user, ResellerAdmin
[filter:keystoneauth]
operator_roles = admin, user, ResellerAdmin
在[pipeline:main]选项添加ceilometer
[pipeline:main]
pipeline = ceilometer catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
添加[filter:ceilometer]选项
[filter:ceilometer]
paste.filter_factory = ceilometermiddleware.swift:filter_factory
control_exchange = swift
url = rabbit://openstack:123456@controller:5672/
driver = messagingv2
topic = notifications
log_level = WARN
4)重新启动对象存储代理服务
# systemctl restart openstack-swift-proxy.service