diff options
Diffstat (limited to 'docker/ceilometer/ceilometer-api')
| -rw-r--r-- | docker/ceilometer/ceilometer-api/Dockerfile | 9 | ||||
| l--------- | docker/ceilometer/ceilometer-api/build | 1 | ||||
| -rw-r--r-- | docker/ceilometer/ceilometer-api/start.sh | 46 |
3 files changed, 56 insertions, 0 deletions
diff --git a/docker/ceilometer/ceilometer-api/Dockerfile b/docker/ceilometer/ceilometer-api/Dockerfile new file mode 100644 index 000000000..29a46b39f --- /dev/null +++ b/docker/ceilometer/ceilometer-api/Dockerfile @@ -0,0 +1,9 @@ +FROM kollaglue/fedora-rdo-ceilometer-base +MAINTAINER Kolla Project (https://launchpad.net/kolla) + +RUN yum install -y openstack-ceilometer-api && yum clean all + +EXPOSE 8777 + +ADD ./start.sh /start.sh +CMD ["/start.sh"] diff --git a/docker/ceilometer/ceilometer-api/build b/docker/ceilometer/ceilometer-api/build new file mode 120000 index 000000000..43944faa0 --- /dev/null +++ b/docker/ceilometer/ceilometer-api/build @@ -0,0 +1 @@ +../../../tools/build-docker-image
\ No newline at end of file diff --git a/docker/ceilometer/ceilometer-api/start.sh b/docker/ceilometer/ceilometer-api/start.sh new file mode 100644 index 000000000..8c9acef5f --- /dev/null +++ b/docker/ceilometer/ceilometer-api/start.sh @@ -0,0 +1,46 @@ +#!/bin/sh + +set -e + +. /opt/kolla/kolla-common.sh +. /opt/kolla/config-ceilometer.sh + +check_required_vars CEILOMETER_DB_USER CEILOMETER_DB_NAME KEYSTONE_AUTH_PROTOCOL CEILOMETER_KEYSTONE_USER CEILOMETER_ADMIN_PASSWORD ADMIN_TENANT_NAME METERING_SECRET CEILOMETER_API_SERVICE_HOST PUBLIC_IP + +check_for_keystone +check_for_db + +#TODO(pkilambi): Add mongodb support + +mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql <<EOF +CREATE DATABASE IF NOT EXISTS ${CEILOMETER_DB_NAME} DEFAULT CHARACTER SET utf8; +GRANT ALL PRIVILEGES ON ${CEILOMETER_DB_NAME}.* TO + '${CEILOMETER_DB_USER}'@'%' IDENTIFIED BY '${CEILOMETER_DB_PASSWORD}' + +EOF + + +export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0" + + +crux user-create -n ${CEILOMETER_KEYSTONE_USER} \ + -p ${CEILOMETER_ADMIN_PASSWORD} \ + -t ${ADMIN_TENANT_NAME} \ + -r admin + +crux service-create -n ${CEILOMETER_KEYSTONE_USER} -t metering \ + -d "Ceilometer Telemetry Service" + +crux endpoint-create i--remove-all -n ${CEILOMETER_KEYSTONE_USER} -t metering \ + -I "${KEYSTONE_AUTH_PROTOCOL}://${CEILOMETER_API_SERVICE_HOST}:8777" \ + -P "${KEYSTONE_AUTH_PROTOCOL}://${PUBLIC_IP}:8777" \ + -A "${KEYSTONE_AUTH_PROTOCOL}://${CEILOMETER_API_SERVICE_HOST}:8777" + +cfg=/etc/ceilometer/ceilometer.conf +crudini --set $cfg \ + DEFAULT connection + "mysql://${CEILOMETER_DB_USER}:${CEILOMETER_DB_PASSWORD}@${MARIADB_SERVICE_HOST}/${CEILOMETER_DB_NAME}" + + +exec /usr/bin/ceilometer-api |
