Config for ceilometer gathering from glance
Some changes are required so that ceilometer can gather usage data
from glance (notification & polling) out-of-the-box in devstack:
- configure glance to emit notifications if rabbitmq or qpid
is enabled
- configure the ceilometer collector to consume notifications
on the default glance topic (glance_notifications.*)
- pass credentials to ceilometer central agent so that it
authtenticate polling calls to glance
Change-Id: I0eac223eddb615266e28447b18fcaaadcd40dddf
diff --git a/lib/ceilometer b/lib/ceilometer
index 35d2507..bea68ed 100644
--- a/lib/ceilometer
+++ b/lib/ceilometer
@@ -6,6 +6,9 @@
# Dependencies:
# - functions
+# - OS_USERNAME, OS_PASSWORD, OS_TENANT_NAME, OS_AUTH_URL set for admin credentials
+# - DEST set to the destination directory
+# - NOVA_CONF_DIR, NOVA_CONF set to the nova configuration directory & file
# stack.sh
# ---------
@@ -57,6 +60,7 @@
# ceilometer confs are copy of /etc/nova/nova.conf which must exist first
grep -v format_string $NOVA_CONF_DIR/$NOVA_CONF > $CEILOMETER_AGENT_CONF
grep -v format_string $NOVA_CONF_DIR/$NOVA_CONF > $CEILOMETER_COLLECTOR_CONF
+ iniset $CEILOMETER_COLLECTOR_CONF DEFAULT notification_topics 'notifications,glance_notifications'
}
# install_ceilometer() - Collect source and prepare
@@ -67,7 +71,7 @@
# start_ceilometer() - Start running processes, including screen
function start_ceilometer() {
screen_it ceilometer-acompute "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-agent-compute --config-file $CEILOMETER_AGENT_CONF"
- screen_it ceilometer-acentral "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-agent-central --config-file $CEILOMETER_AGENT_CONF"
+ screen_it ceilometer-acentral "export OS_USERNAME=$OS_USERNAME OS_PASSWORD=$OS_PASSWORD OS_TENANT_NAME=$OS_TENANT_NAME OS_AUTH_URL=$OS_AUTH_URL && cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-agent-central --config-file $CEILOMETER_AGENT_CONF"
screen_it ceilometer-collector "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-collector --config-file $CEILOMETER_COLLECTOR_CONF"
screen_it ceilometer-api "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-api -d -v --log-dir=$CEILOMETER_API_LOG_DIR"
}
diff --git a/lib/glance b/lib/glance
index 4cc6253..070c80d 100644
--- a/lib/glance
+++ b/lib/glance
@@ -107,6 +107,13 @@
iniset $GLANCE_API_CONF keystone_authtoken admin_tenant_name $SERVICE_TENANT_NAME
iniset $GLANCE_API_CONF keystone_authtoken admin_user glance
iniset $GLANCE_API_CONF keystone_authtoken admin_password $SERVICE_PASSWORD
+ if is_service_enabled qpid; then
+ iniset $GLANCE_API_CONF DEFAULT notifier_strategy qpid
+ elif [ -n "$RABBIT_HOST" ] && [ -n "$RABBIT_PASSWORD" ]; then
+ iniset $GLANCE_API_CONF DEFAULT notifier_strategy rabbit
+ iniset $GLANCE_API_CONF DEFAULT rabbit_host $RABBIT_HOST
+ iniset $GLANCE_API_CONF DEFAULT rabbit_password $RABBIT_PASSWORD
+ fi
cp -p $GLANCE_DIR/etc/glance-registry-paste.ini $GLANCE_REGISTRY_PASTE_INI