progetti:cloud-areapd:operations:preproduction_cloud:ceilometer
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
progetti:cloud-areapd:operations:preproduction_cloud:ceilometer [2015/01/30 14:49] – [Backup and purge ceilometer backend] verlato@infn.it | progetti:cloud-areapd:operations:preproduction_cloud:ceilometer [2016/03/29 09:02] (current) – verlato@infn.it | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Ceilometer ====== | ||
+ | Installation instructions for Havana on: | ||
+ | * http:// | ||
+ | * https:// | ||
+ | Graphic interface available in Horizon: | ||
+ | * https:// | ||
+ | ===== Installation on Controller ===== | ||
+ | <code bash> | ||
+ | [root@cloudpp-areapd ~]# cat ceilo-ctl.sh | ||
+ | export CEILOHOST=cloudpp-areapd | ||
+ | export DBHOST=cld-nagios | ||
+ | export CEILOHOSTIP=90.147.77.39 | ||
+ | export CEILOHOSTMGIP=192.168.60.111 | ||
+ | export KEYHOSTIP=90.147.77.39 | ||
+ | # | ||
+ | yum install -y openstack-ceilometer-api openstack-ceilometer-collector openstack-ceilometer-central python-ceilometerclient | ||
+ | ## the lines below to be executed on $DBHOST | ||
+ | #yum install -y mongodb-server mongodb | ||
+ | #service mongod start | ||
+ | #chkconfig mongod on | ||
+ | #mongo --host $DBHOST --eval 'db = db.getSiblingDB(" | ||
+ | ## end of $DBHOST stuff | ||
+ | |||
+ | openstack-config --set / | ||
+ | connection mongodb:// | ||
+ | # | ||
+ | CEILOMETER_TOKEN=$(openssl rand -hex 10) | ||
+ | echo $CEILOMETER_TOKEN | ||
+ | openstack-config --set / | ||
+ | metering_secret $CEILOMETER_TOKEN | ||
+ | openstack-config --set / | ||
+ | rpc_backend ceilometer.openstack.common.rpc.impl_kombu | ||
+ | # | ||
+ | source keystone_admin.sh | ||
+ | keystone user-create --name=ceilometer --pass=CEILOMETER_PASS --email=ceilometer@example.com | ||
+ | keystone user-role-add --user=ceilometer --tenant=services --role=admin | ||
+ | keystone service-create --name=ceilometer --type=metering | ||
+ | keystone endpoint-create --service-id=$(keystone service-list | awk '/ metering / {print $2}') \ | ||
+ | --publicurl=http:// | ||
+ | openstack-config --set / | ||
+ | auth_host $KEYHOSTIP | ||
+ | openstack-config --set / | ||
+ | admin_user ceilometer | ||
+ | openstack-config --set / | ||
+ | admin_tenant_name services | ||
+ | openstack-config --set / | ||
+ | auth_protocol http | ||
+ | openstack-config --set / | ||
+ | auth_uri http:// | ||
+ | openstack-config --set / | ||
+ | admin_password CEILOMETER_PASS | ||
+ | openstack-config --set / | ||
+ | os_username ceilometer | ||
+ | openstack-config --set / | ||
+ | os_tenant_name services | ||
+ | openstack-config --set / | ||
+ | os_password CEILOMETER_PASS | ||
+ | # | ||
+ | openstack-config --set / | ||
+ | openstack-config --set / | ||
+ | service openstack-cinder-api restart | ||
+ | openstack-cinder-volume restart | ||
+ | # | ||
+ | openstack-config --set / | ||
+ | service openstack-glance-api restart | ||
+ | service openstack-glance-registry restart | ||
+ | # | ||
+ | for i in `ls / | ||
+ | </ | ||
+ | |||
+ | ===== Installation on Compute Nodes ===== | ||
+ | <code bash> | ||
+ | [root@cld-np-02 ~]# cat ceilo-cmp.sh | ||
+ | yum install -y openstack-ceilometer-compute | ||
+ | # | ||
+ | # 1) do not forget to add in nova.conf: | ||
+ | #[DEFAULT] | ||
+ | #... | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # 2) use the same $CEILOMETER_TOKEN created on the Controller Node | ||
+ | # | ||
+ | export CEILOHOSTMGIP=192.168.60.111 | ||
+ | export KEYHOSTMGIP=192.168.60.111 | ||
+ | export RABBITMGIP=192.168.60.111 | ||
+ | openstack-config --set / | ||
+ | instance_usage_audit True | ||
+ | openstack-config --set / | ||
+ | instance_usage_audit_period hour | ||
+ | openstack-config --set / | ||
+ | notify_on_state_change vm_and_task_state | ||
+ | openstack-config --set / | ||
+ | rpc_backend ceilometer.openstack.common.rpc.impl_kombu | ||
+ | openstack-config --set / | ||
+ | rabbit_host $RABBITMGIP | ||
+ | openstack-config --set / | ||
+ | metering_secret $CEILOMETER_TOKEN | ||
+ | openstack-config --set / | ||
+ | auth_host $KEYHOSTMGIP | ||
+ | openstack-config --set / | ||
+ | admin_user ceilometer | ||
+ | openstack-config --set / | ||
+ | admin_tenant_name services | ||
+ | openstack-config --set / | ||
+ | auth_protocol http | ||
+ | openstack-config --set / | ||
+ | admin_password CEILOMETER_PASS | ||
+ | openstack-config --set / | ||
+ | os_username ceilometer | ||
+ | openstack-config --set / | ||
+ | os_tenant_name services | ||
+ | openstack-config --set / | ||
+ | os_password CEILOMETER_PASS | ||
+ | openstack-config --set / | ||
+ | os_auth_url http:// | ||
+ | service openstack-ceilometer-compute start | ||
+ | chkconfig openstack-ceilometer-compute on | ||
+ | service openstack-ceilometer-compute status | ||
+ | ls -l / | ||
+ | </ | ||
+ | ===== Testing from Controller ===== | ||
+ | <code bash> | ||
+ | source keystone_admin.sh | ||
+ | ceilometer meter-list | ||
+ | ceilometer resource-list | ||
+ | ceilometer statistics -m cpu | ||
+ | ceilometer statistics -m cpu.hours | ||
+ | ceilometer statistics -m cpu_util | ||
+ | ceilometer sample-list -m cpu | ||
+ | </ | ||
+ | |||
+ | ===== Backup and purge ceilometer backend ===== | ||
+ | * Follow the instructions [[http:// | ||
+ | <code bash> | ||
+ | # set time_to_live to 32 days | ||
+ | [root@cloudpp-areapd ~]# openstack-config --set / | ||
+ | | ||
+ | [root@cloudpp-areapd ~]# for i in `ls / | ||
+ | # copying the mongo_backup.py script | ||
+ | [root@cloudpp-areapd ~]# git clone https:// | ||
+ | [root@cloudpp-areapd ~]# useradd ceilobackup | ||
+ | [root@cloudpp-areapd ~]# cp arcus-energy-monitoring-tool/ | ||
+ | [root@cloudpp-areapd ~]# chown ceilobackup.ceilobackup / | ||
+ | </ | ||
+ | * Backup the data and purge the DB | ||
+ | <code bash> | ||
+ | [root@cloudpp-areapd ~]# su - ceilobackup | ||
+ | # edit mongo_backup.py and set properly the DB host_ip and ceilometer username password, then execute | ||
+ | [ceilobackup@cloudpp-areapd ~]$ python mongo_backup.py | ||
+ | # backup files go in zip directory | ||
+ | [ceilobackup@cloudpp-areapd ~]$ ls -lh zip/ | ||
+ | total 32M | ||
+ | -rw-rw-r-- 1 ceilobackup ceilobackup 32M Jan 30 14:14 backup-2015-0.zip | ||
+ | # purge the DB by executing: | ||
+ | [ceilobackup@cloudpp-areapd ~]$ mongo --host $DBHOST --eval " | ||
+ | # re-create ceilometer DB and user | ||
+ | [ceilobackup@cloudpp-areapd ~]$ mongo --host $DBHOST --eval 'db = db.getSiblingDB(" | ||
+ | </ |