diff --git a/elements/cinder-api/README.md b/elements/cinder-api/README.md new file mode 100644 index 000000000..918f1c8d4 --- /dev/null +++ b/elements/cinder-api/README.md @@ -0,0 +1 @@ +Installs cinder api and scheduler services. diff --git a/elements/cinder-api/element-deps b/elements/cinder-api/element-deps new file mode 100644 index 000000000..9a0768b4d --- /dev/null +++ b/elements/cinder-api/element-deps @@ -0,0 +1,4 @@ +os-svc-install +os-refresh-config +source-repositories +use-ephemeral diff --git a/elements/cinder-api/install.d/73-cinder-api b/elements/cinder-api/install.d/73-cinder-api new file mode 100755 index 000000000..27de10f8a --- /dev/null +++ b/elements/cinder-api/install.d/73-cinder-api @@ -0,0 +1,5 @@ +#!/bin/bash +set -eux + +os-svc-daemon cinder-api cinder cinder-api "--config-dir /etc/cinder" +os-svc-daemon cinder-scheduler cinder cinder-scheduler "--config-dir /etc/cinder" diff --git a/elements/cinder/os-refresh-config/post-configure.d/72-cinder b/elements/cinder-api/os-refresh-config/post-configure.d/73-cinder-api similarity index 62% rename from elements/cinder/os-refresh-config/post-configure.d/72-cinder rename to elements/cinder-api/os-refresh-config/post-configure.d/73-cinder-api index 384a552aa..5f67990cc 100755 --- a/elements/cinder/os-refresh-config/post-configure.d/72-cinder +++ b/elements/cinder-api/os-refresh-config/post-configure.d/73-cinder-api @@ -4,9 +4,6 @@ set -eu /opt/stack/venvs/cinder/bin/cinder-manage db sync os-svc-enable -n cinder-api -os-svc-enable -n cinder-volume os-svc-enable -n cinder-scheduler - service cinder-api restart -service cinder-volume restart -service cinder-scheduler restart +service cinder-scheduler restart \ No newline at end of file diff --git a/elements/cinder-volume/README.md b/elements/cinder-volume/README.md new file mode 100644 index 000000000..ca20e3858 --- /dev/null +++ b/elements/cinder-volume/README.md @@ -0,0 +1 @@ +Installs cinder volume service. diff --git a/elements/cinder-volume/element-deps b/elements/cinder-volume/element-deps new file mode 100644 index 000000000..9a0768b4d --- /dev/null +++ b/elements/cinder-volume/element-deps @@ -0,0 +1,4 @@ +os-svc-install +os-refresh-config +source-repositories +use-ephemeral diff --git a/elements/cinder-volume/install.d/74-cinder-volume b/elements/cinder-volume/install.d/74-cinder-volume new file mode 100755 index 000000000..98dc4cafc --- /dev/null +++ b/elements/cinder-volume/install.d/74-cinder-volume @@ -0,0 +1,4 @@ +#!/bin/bash +set -eux + +os-svc-daemon cinder-volume cinder cinder-volume "--config-dir /etc/cinder" \ No newline at end of file diff --git a/elements/cinder-volume/os-refresh-config/post-configure.d/74-cinder-volume b/elements/cinder-volume/os-refresh-config/post-configure.d/74-cinder-volume new file mode 100755 index 000000000..8f9da72f3 --- /dev/null +++ b/elements/cinder-volume/os-refresh-config/post-configure.d/74-cinder-volume @@ -0,0 +1,5 @@ +#!/bin/bash +set -eu + +os-svc-enable -n cinder-volume +service cinder-volume restart \ No newline at end of file diff --git a/elements/cinder/README.md b/elements/cinder/README.md index 538a9f299..b04fc5a07 100644 --- a/elements/cinder/README.md +++ b/elements/cinder/README.md @@ -7,4 +7,4 @@ cinder: verbose: False - Print more verbose output (set logging level to INFO instead of default WARNING level). debug: False - - Print debugging output (set logging level to DEBUG instead of default WARNING level). + - Print debugging output (set logging level to DEBUG instead of default WARNING level). \ No newline at end of file diff --git a/elements/cinder/install.d/72-cinder b/elements/cinder/install.d/72-cinder index 77102b69e..af6d9647d 100755 --- a/elements/cinder/install.d/72-cinder +++ b/elements/cinder/install.d/72-cinder @@ -5,9 +5,6 @@ install-packages lvm2 libssl-dev tgt echo "qpid-python" | tee -a /opt/stack/cinder/requirements.txt os-svc-install -n cinder -u cinder -r /opt/stack/cinder -c cinder-all -os-svc-daemon cinder-api cinder cinder-api "--config-dir /etc/cinder" -os-svc-daemon cinder-volume cinder cinder-volume "--config-dir /etc/cinder" -os-svc-daemon cinder-scheduler cinder cinder-scheduler "--config-dir /etc/cinder" mkdir -p /etc/tgt/conf.d install -d -o root -g cinder -m 0770 /var/lib/cinder/volumes register-state-path /var/lib/cinder @@ -15,12 +12,11 @@ echo 'include /etc/tgt/conf.d/cinder_tgt.conf' > /etc/tgt/targets.conf echo 'include /mnt/state/var/lib/cinder/volumes/*' > /etc/tgt/conf.d/cinder_tgt.conf cp -a /opt/stack/cinder/etc/cinder/rootwrap* /etc/cinder - -ln -sf /opt/stack/venvs/cinder/bin/cinder-rootwrap /usr/local/bin/cinder-rootwrap - cp /opt/stack/cinder/etc/cinder/api-paste.ini /etc/cinder/api-paste.ini cp /opt/stack/cinder/etc/cinder/policy.json /etc/cinder/policy.json +ln -sf /opt/stack/venvs/cinder/bin/cinder-rootwrap /usr/local/bin/cinder-rootwrap + echo "cinder ALL=(root) NOPASSWD: /usr/local/bin/cinder-rootwrap" > /etc/sudoers.d/cinder chmod 0440 /etc/sudoers.d/cinder visudo -c diff --git a/elements/cinder/os-config-applier/etc/cinder/cinder.conf b/elements/cinder/os-apply-config/etc/cinder/cinder.conf similarity index 87% rename from elements/cinder/os-config-applier/etc/cinder/cinder.conf rename to elements/cinder/os-apply-config/etc/cinder/cinder.conf index 7be1e2981..8a974471e 100644 --- a/elements/cinder/os-config-applier/etc/cinder/cinder.conf +++ b/elements/cinder/os-apply-config/etc/cinder/cinder.conf @@ -1,5 +1,6 @@ [DEFAULT] +# allow metadata to override verbose and debug configuration {{#cinder.verbose}} # Print more verbose output (set logging level to INFO instead # of default WARNING level). (boolean value) @@ -12,13 +13,8 @@ debug={{cinder.debug}} {{/cinder.debug}} state_path = /mnt/state/var/lib/cinder - -rootwrap_config=/etc/cinder/rootwrap.conf api_paste_config = /etc/cinder/api-paste.ini -iscsi_helper=tgtadm -volume_name_template = volume-%s -volume_group = cinder-volumes auth_strategy = keystone sql_connection={{cinder.db}} @@ -48,8 +44,6 @@ service_protocol = http service_host = {{keystone.host}} service_port = 5000 auth_host = {{keystone.host}} -auth_port = 35357 -auth_protocol = http admin_tenant_name = service admin_user = cinder admin_password = {{cinder.service-password}} diff --git a/elements/cinder/os-refresh-config/pre-configure.d/97-cinder-fedora-iptables b/elements/cinder/os-refresh-config/pre-configure.d/97-cinder-fedora-iptables new file mode 100755 index 000000000..2da32b86a --- /dev/null +++ b/elements/cinder/os-refresh-config/pre-configure.d/97-cinder-fedora-iptables @@ -0,0 +1,29 @@ +#!/bin/bash +set -eu + +OK=/var/run/cinder/fedora-iptables.ok + +if [ -e $OK ] ; then + exit 0 +fi + +DISTRO=`lsb_release -si` || true + +if [[ "Fedora" = $DISTRO ]]; then + + # Check if the iptables service is active + if systemctl is-active iptables.service ; then + IPT_FILE=/etc/sysconfig/iptables + if [ -f $IPT_FILE ]; then + iptables-restore < $IPT_FILE + fi + + # Openstack services + iptables -I INPUT -p tcp -m multiport --dports 3260, 8776 -j ACCEPT + + iptables-save > $IPT_FILE + fi + +fi + +touch $OK diff --git a/elements/cinder/pre-install.d/00-cinder-disable-requiretty b/elements/cinder/pre-install.d/00-cinder-disable-requiretty new file mode 100755 index 000000000..24f4ec694 --- /dev/null +++ b/elements/cinder/pre-install.d/00-cinder-disable-requiretty @@ -0,0 +1,8 @@ +#!/bin/bash +set -e + +if [ -d /etc/sudoers.d ]; then + echo "Defaults:cinder !requiretty" > /etc/sudoers.d/cinder-notty + chmod 0440 /etc/sudoers.d/cinder-notty + visudo -c +fi