aboutsummaryrefslogtreecommitdiff
path: root/docker/centos/binary/nova-controller
diff options
context:
space:
mode:
Diffstat (limited to 'docker/centos/binary/nova-controller')
-rw-r--r--docker/centos/binary/nova-controller/nova-api/Dockerfile10
l---------docker/centos/binary/nova-controller/nova-api/build1
-rwxr-xr-xdocker/centos/binary/nova-controller/nova-api/check.sh17
-rwxr-xr-xdocker/centos/binary/nova-controller/nova-api/start.sh46
-rw-r--r--docker/centos/binary/nova-controller/nova-conductor/Dockerfile8
l---------docker/centos/binary/nova-controller/nova-conductor/build1
-rwxr-xr-xdocker/centos/binary/nova-controller/nova-conductor/start.sh24
-rw-r--r--docker/centos/binary/nova-controller/nova-consoleauth/Dockerfile8
l---------docker/centos/binary/nova-controller/nova-consoleauth/build1
-rwxr-xr-xdocker/centos/binary/nova-controller/nova-consoleauth/start.sh11
-rw-r--r--docker/centos/binary/nova-controller/nova-novncproxy/Dockerfile10
l---------docker/centos/binary/nova-controller/nova-novncproxy/build1
-rwxr-xr-xdocker/centos/binary/nova-controller/nova-novncproxy/start.sh22
-rw-r--r--docker/centos/binary/nova-controller/nova-scheduler/Dockerfile8
l---------docker/centos/binary/nova-controller/nova-scheduler/build1
-rwxr-xr-xdocker/centos/binary/nova-controller/nova-scheduler/start.sh15
16 files changed, 184 insertions, 0 deletions
diff --git a/docker/centos/binary/nova-controller/nova-api/Dockerfile b/docker/centos/binary/nova-controller/nova-api/Dockerfile
new file mode 100644
index 000000000..7abd32087
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-api/Dockerfile
@@ -0,0 +1,10 @@
+FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%nova-base:%%KOLLA_TAG%%
+MAINTAINER Kolla Project (https://launchpad.net/kolla)
+
+RUN yum -y install \
+ openstack-nova-api && yum clean all
+
+ADD ./start.sh /start.sh
+ADD ./check.sh /check.sh
+
+CMD ["/start.sh"]
diff --git a/docker/centos/binary/nova-controller/nova-api/build b/docker/centos/binary/nova-controller/nova-api/build
new file mode 120000
index 000000000..ec1913803
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-api/build
@@ -0,0 +1 @@
+../../../../../tools/build-docker-image \ No newline at end of file
diff --git a/docker/centos/binary/nova-controller/nova-api/check.sh b/docker/centos/binary/nova-controller/nova-api/check.sh
new file mode 100755
index 000000000..b250682d8
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-api/check.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+RES=0
+
+. /openrc
+if ! keystone token-get > /dev/null; then
+ echo "ERROR: keystone token-get failed" >&2
+ RES=1
+else
+ if ! nova list > /dev/null; then
+ echo "ERROR: nova list failed" >&2
+ RES=1
+ fi
+fi
+
+exit $RES
+
diff --git a/docker/centos/binary/nova-controller/nova-api/start.sh b/docker/centos/binary/nova-controller/nova-api/start.sh
new file mode 100755
index 000000000..7928370a4
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-api/start.sh
@@ -0,0 +1,46 @@
+#!/bin/bash
+
+set -e
+
+. /opt/kolla/config-nova.sh
+
+check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \
+ NOVA_KEYSTONE_USER NOVA_KEYSTONE_PASSWORD \
+ ADMIN_TENANT_NAME NOVA_API_SERVICE_HOST \
+ NOVA_EC2_API_SERVICE_HOST PUBLIC_IP NOVA_DB_NAME
+fail_unless_os_service_running keystone
+fail_unless_db $NOVA_DB_NAME
+
+export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}"
+export SERVICE_ENDPOINT="http://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0"
+
+cfg=/etc/nova/nova.conf
+
+# configure logging
+crudini --set $cfg DEFAULT log_file "${NOVA_API_LOG_FILE}"
+
+crux user-create --update \
+ -n "${NOVA_KEYSTONE_USER}" \
+ -p "${NOVA_KEYSTONE_PASSWORD}" \
+ -t "${ADMIN_TENANT_NAME}" \
+ -r admin
+
+crux endpoint-create --remove-all \
+ -n ec2 -t ec2 \
+ -I "http://${NOVA_EC2_API_SERVICE_HOST}:8773/services/Cloud" \
+ -P "http://${PUBLIC_IP}:8773/services/Cloud" \
+ -A "http://${NOVA_EC2_API_SERVICE_HOST}:8773/services/Admin"
+
+crux endpoint-create --remove-all \
+ -n nova -t compute \
+ -I "http://${NOVA_API_SERVICE_HOST}:8774/v2/\$(tenant_id)s" \
+ -P "http://${PUBLIC_IP}:8774/v2/\$(tenant_id)s" \
+ -A "http://${NOVA_API_SERVICE_HOST}:8774/v2/\$(tenant_id)s"
+
+crux endpoint-create --remove-all \
+ -n novav3 -t computev3 \
+ -I "http://${NOVA_API_SERVICE_HOST}:8774/v3" \
+ -P "http://${PUBLIC_IP}:8774/v3" \
+ -A "http://${NOVA_API_SERVICE_HOST}:8774/v3"
+
+exec /usr/bin/nova-api --config-file /etc/nova/nova.conf
diff --git a/docker/centos/binary/nova-controller/nova-conductor/Dockerfile b/docker/centos/binary/nova-controller/nova-conductor/Dockerfile
new file mode 100644
index 000000000..f91113bad
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-conductor/Dockerfile
@@ -0,0 +1,8 @@
+FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%nova-base:%%KOLLA_TAG%%
+MAINTAINER Kolla Project (https://launchpad.net/kolla)
+
+RUN yum -y install \
+ openstack-nova-conductor && yum clean all
+
+ADD ./start.sh /start.sh
+CMD ["/start.sh"]
diff --git a/docker/centos/binary/nova-controller/nova-conductor/build b/docker/centos/binary/nova-controller/nova-conductor/build
new file mode 120000
index 000000000..ec1913803
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-conductor/build
@@ -0,0 +1 @@
+../../../../../tools/build-docker-image \ No newline at end of file
diff --git a/docker/centos/binary/nova-controller/nova-conductor/start.sh b/docker/centos/binary/nova-controller/nova-conductor/start.sh
new file mode 100755
index 000000000..5e01b7f30
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-conductor/start.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+set -e
+
+. /opt/kolla/config-nova.sh
+
+check_required_vars NOVA_DB_NAME NOVA_DB_USER NOVA_DB_PASSWORD
+fail_unless_db
+
+cfg=/etc/nova/nova.conf
+
+# configure logging
+crudini --set $cfg DEFAULT log_file "${NOVA_CONDUCTOR_LOG_FILE}"
+
+mysql -h ${MARIADB_SERVICE_HOST} -u root \
+ -p${DB_ROOT_PASSWORD} mysql <<EOF
+CREATE DATABASE IF NOT EXISTS ${NOVA_DB_NAME};
+GRANT ALL PRIVILEGES ON ${NOVA_DB_NAME}.* TO
+ '${NOVA_DB_USER}'@'%' IDENTIFIED BY '${NOVA_DB_PASSWORD}'
+EOF
+
+nova-manage db sync
+
+exec /usr/bin/nova-conductor --config-file /etc/nova/nova.conf
diff --git a/docker/centos/binary/nova-controller/nova-consoleauth/Dockerfile b/docker/centos/binary/nova-controller/nova-consoleauth/Dockerfile
new file mode 100644
index 000000000..576c91b5a
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-consoleauth/Dockerfile
@@ -0,0 +1,8 @@
+FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%nova-base:%%KOLLA_TAG%%
+MAINTAINER Kolla Project (https://launchpad.net/kolla)
+
+RUN yum -y install openstack-nova-console && yum clean all
+
+ADD start.sh /start.sh
+
+CMD ["/start.sh"]
diff --git a/docker/centos/binary/nova-controller/nova-consoleauth/build b/docker/centos/binary/nova-controller/nova-consoleauth/build
new file mode 120000
index 000000000..ec1913803
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-consoleauth/build
@@ -0,0 +1 @@
+../../../../../tools/build-docker-image \ No newline at end of file
diff --git a/docker/centos/binary/nova-controller/nova-consoleauth/start.sh b/docker/centos/binary/nova-controller/nova-consoleauth/start.sh
new file mode 100755
index 000000000..a1b0864ac
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-consoleauth/start.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+set -e
+
+. /opt/kolla/config-nova.sh
+
+cfg=/etc/nova/nova.conf
+
+crudini --set $cfg DEFAULT log_file "${NOVA_CONSOLEAUTH_LOG_FILE}"
+
+echo Starting nova-consoleauth
+exec /usr/bin/nova-consoleauth
diff --git a/docker/centos/binary/nova-controller/nova-novncproxy/Dockerfile b/docker/centos/binary/nova-controller/nova-novncproxy/Dockerfile
new file mode 100644
index 000000000..682625853
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-novncproxy/Dockerfile
@@ -0,0 +1,10 @@
+FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%nova-base:%%KOLLA_TAG%%
+MAINTAINER Kolla Project (https://launchpad.net/kolla)
+
+RUN yum -y install \
+ novnc openstack-nova-novncproxy && \
+ yum clean all
+
+ADD start.sh /start.sh
+
+CMD ["/start.sh"]
diff --git a/docker/centos/binary/nova-controller/nova-novncproxy/build b/docker/centos/binary/nova-controller/nova-novncproxy/build
new file mode 120000
index 000000000..ec1913803
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-novncproxy/build
@@ -0,0 +1 @@
+../../../../../tools/build-docker-image \ No newline at end of file
diff --git a/docker/centos/binary/nova-controller/nova-novncproxy/start.sh b/docker/centos/binary/nova-controller/nova-novncproxy/start.sh
new file mode 100755
index 000000000..9edafbca3
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-novncproxy/start.sh
@@ -0,0 +1,22 @@
+#!/bin/bash
+set -e
+. /opt/kolla/kolla-common.sh
+
+cfg=/etc/nova/nova.conf
+
+check_required_vars PUBLIC_IP NOVA_NOVNC_PROXY_SERVICE_HOST NOVA_NOVNC_PROXY_PORT \
+ NOVA_NOVNC_BASE_ADDRESS NOVA_VNCSERVER_LISTEN_ADDRESS \
+ NOVA_VNCSERVER_PROXYCLIENT_ADDRESS
+
+crudini --set $cfg DEFAULT log_file "${NOVA_NOVNCPROXY_LOG_FILE}"
+
+# Listen on all interfaces on port $NOVA_NOVNC_PROXY_PORT for incoming novnc
+# requests.
+# The base_url is given to clients to connect to, like Horizon, so this could
+# very well be fancy DNS name.
+echo Configuring VNC...
+crudini --set $cfg DEFAULT vncserver_listen "${NOVA_VNCSERVER_LISTEN_ADDRESS}"
+crudini --set $cfg DEFAULT vncserver_proxyclient_address "${NOVA_VNCSERVER_PROXYCLIENT_ADDRESS}"
+
+echo Starting nova-novncproxy
+exec /usr/bin/nova-novncproxy
diff --git a/docker/centos/binary/nova-controller/nova-scheduler/Dockerfile b/docker/centos/binary/nova-controller/nova-scheduler/Dockerfile
new file mode 100644
index 000000000..2eec47554
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-scheduler/Dockerfile
@@ -0,0 +1,8 @@
+FROM %%KOLLA_NAMESPACE%%/%%KOLLA_PREFIX%%nova-base:%%KOLLA_TAG%%
+MAINTAINER Kolla Project (https://launchpad.net/kolla)
+
+RUN yum -y install \
+ openstack-nova-scheduler && yum clean all
+
+ADD ./start.sh /start.sh
+CMD ["/start.sh"]
diff --git a/docker/centos/binary/nova-controller/nova-scheduler/build b/docker/centos/binary/nova-controller/nova-scheduler/build
new file mode 120000
index 000000000..ec1913803
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-scheduler/build
@@ -0,0 +1 @@
+../../../../../tools/build-docker-image \ No newline at end of file
diff --git a/docker/centos/binary/nova-controller/nova-scheduler/start.sh b/docker/centos/binary/nova-controller/nova-scheduler/start.sh
new file mode 100755
index 000000000..504c049ed
--- /dev/null
+++ b/docker/centos/binary/nova-controller/nova-scheduler/start.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+set -e
+
+. /opt/kolla/config-nova.sh
+
+check_required_vars NOVA_DB_NAME
+fail_unless_db $NOVA_DB_NAME
+
+cfg=/etc/nova/nova.conf
+
+# configure logging
+crudini --set $cfg DEFAULT log_file "${NOVA_SCHEDULER_LOG_FILE}"
+
+exec /usr/bin/nova-scheduler --config-file /etc/nova/nova.conf