Installation instructions for Havana on:
Graphic interface available in Horizon:
[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("ceilometer"); db.addUser({user: "ceilometer",pwd: "CEILOMETER_DBPASS",roles: [ "readWrite", "dbAdmin" ]})' ## end of $DBHOST stuff openstack-config --set /etc/ceilometer/ceilometer.conf database \ connection mongodb://ceilometer:CEILOMETER_DBPASS@$DBHOST:27017/ceilometer # CEILOMETER_TOKEN=$(openssl rand -hex 10) echo $CEILOMETER_TOKEN openstack-config --set /etc/ceilometer/ceilometer.conf publisher_rpc \ metering_secret $CEILOMETER_TOKEN openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT \ 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 --description="Ceilometer Telemetry Service" keystone endpoint-create --service-id=$(keystone service-list | awk '/ metering / {print $2}') \ --publicurl=http://$CEILOHOSTIP:8777 --internalurl=http://$CEILOHOSTMGIP:8777 --adminurl=http://$CEILOHOSTMGIP:8777 openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ auth_host $KEYHOSTIP openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ admin_user ceilometer openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ admin_tenant_name services openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ auth_protocol http openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ auth_uri http://$KEYHOSTIP:5000 openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ admin_password CEILOMETER_PASS openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_username ceilometer openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_tenant_name services openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_password CEILOMETER_PASS # openstack-config --set /etc/cinder/cinder.conf DEFAULT control_exchange cinder openstack-config --set /etc/cinder/cinder.conf DEFAULT notification_driver cinder.openstack.common.notifier.rpc_notifier service openstack-cinder-api restart openstack-cinder-volume restart # openstack-config --set /etc/glance/glance-api.conf DEFAULT notifier_strategy rabbit service openstack-glance-api restart service openstack-glance-registry restart # for i in `ls /etc/rc.d/init.d/openstack-ceilometer-*` ; do $i start; done
[root@cld-np-02 ~]# cat ceilo-cmp.sh yum install -y openstack-ceilometer-compute # # 1) do not forget to add in nova.conf: #[DEFAULT] #... #notification_driver = nova.openstack.common.notifier.rpc_notifier #notification_driver = ceilometer.compute.nova_notifier # # 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 /etc/nova/nova.conf DEFAULT \ instance_usage_audit True openstack-config --set /etc/nova/nova.conf DEFAULT \ instance_usage_audit_period hour openstack-config --set /etc/nova/nova.conf DEFAULT \ notify_on_state_change vm_and_task_state openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT \ rpc_backend ceilometer.openstack.common.rpc.impl_kombu openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT \ rabbit_host $RABBITMGIP openstack-config --set /etc/ceilometer/ceilometer.conf publisher_rpc \ metering_secret $CEILOMETER_TOKEN openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ auth_host $KEYHOSTMGIP openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ admin_user ceilometer openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ admin_tenant_name services openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ auth_protocol http openstack-config --set /etc/ceilometer/ceilometer.conf keystone_authtoken \ admin_password CEILOMETER_PASS openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_username ceilometer openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_tenant_name services openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_password CEILOMETER_PASS openstack-config --set /etc/ceilometer/ceilometer.conf service_credentials \ os_auth_url http://$KEYHOSTMGIP:5000/v2.0 service openstack-ceilometer-compute start chkconfig openstack-ceilometer-compute on service openstack-ceilometer-compute status ls -l /var/log/ceilometer/
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
# set time_to_live to 32 days [root@cloudpp-areapd ~]# openstack-config --set /etc/ceilometer/ceilometer.conf DEFAULT \ time_to_live 2764800 [root@cloudpp-areapd ~]# for i in `ls /etc/rc.d/init.d/openstack-ceilometer-*` ; do $i restart; done # copying the mongo_backup.py script [root@cloudpp-areapd ~]# git clone https://github.com/icclab/arcus-energy-monitoring-tool/ [root@cloudpp-areapd ~]# useradd ceilobackup [root@cloudpp-areapd ~]# cp arcus-energy-monitoring-tool/Tools/mongo_backup.py /home/ceilobackup/ [root@cloudpp-areapd ~]# chown ceilobackup.ceilobackup /home/ceilobackup/mongo_backup.py
[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 "db.adminCommand('listDatabases').databases.forEach(function(d){if(d.name!='admin' && d.name!='local' && d.name!='config'){db.getSiblingDB(d.name).dropDatabase();}});" # re-create ceilometer DB and user [ceilobackup@cloudpp-areapd ~]$ mongo --host $DBHOST --eval 'db = db.getSiblingDB("ceilometer"); db.addUser({user: "ceilometer",pwd: "CEILOMETER_DBPASS",roles: [ "readWrite", "dbAdmin" ]})'