aboutsummaryrefslogtreecommitdiff
path: root/docker/swift
diff options
context:
space:
mode:
authorconfi-surya <singh.surya64mnnit@gmail.com>2018-04-11 12:03:29 +0900
committerHa Manh Dong <donghm@vn.fujitsu.com>2018-07-13 10:26:36 +0700
commitdc1389bc586f800389dc4eff3c33be593e352d76 (patch)
treec9d53a5c86ab90dd99d6af33582e1f24a9e875e4 /docker/swift
parent98a6804860c4d83b13d252ba34e60464431ad5e6 (diff)
downloadkolla-dc1389bc586f800389dc4eff3c33be593e352d76.tar.gz
kolla-dc1389bc586f800389dc4eff3c33be593e352d76.zip
Apply Swift rolling upgrade
Apply Swift rolling upgrade based on recommendations from Swift PTL John Dickinson at [1] [1]https://www.swiftstack.com/blog/2013/12/20/upgrade-openstack-swift-no-downtime/ Co-Authored-By: Duong Ha-Quang <duonghq@vn.fujitsu.com> Co-Authored-By: Ha Manh Dong <donghm@vn.fujitsu.com> Change-Id: Ic59a2d2dda3469af5d4259e020d22b619ff7d603 Implements: blueprint apply-service-upgrade-procedure
Diffstat (limited to 'docker/swift')
-rw-r--r--docker/swift/swift-proxy-server/Dockerfile.j23
-rw-r--r--docker/swift/swift-proxy-server/extend_start.sh8
-rw-r--r--docker/swift/swift-rsyncd/extend_start.sh9
3 files changed, 20 insertions, 0 deletions
diff --git a/docker/swift/swift-proxy-server/Dockerfile.j2 b/docker/swift/swift-proxy-server/Dockerfile.j2
index 4e5aaf4d9..27a877fe7 100644
--- a/docker/swift/swift-proxy-server/Dockerfile.j2
+++ b/docker/swift/swift-proxy-server/Dockerfile.j2
@@ -30,6 +30,9 @@ RUN {{ macros.install_pip(swift_proxy_server_pip_packages | customizable("pip_pa
{% endif %}
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+RUN chmod 755 /usr/local/bin/kolla_extend_start
+
{% block swift_proxy_server_footer %}{% endblock %}
{% block footer %}{% endblock %}
diff --git a/docker/swift/swift-proxy-server/extend_start.sh b/docker/swift/swift-proxy-server/extend_start.sh
new file mode 100644
index 000000000..20f0dcae4
--- /dev/null
+++ b/docker/swift/swift-proxy-server/extend_start.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+# Gracefully stop swift proxy and exit if KOLLA_STOP_SERVICES variable is set.
+if [[ "${!KOLLA_STOP_SERVICES[@]}" ]]; then
+ echo "Gracefully Shutdown all Swift proxy processes"
+ swift-init proxy shutdown
+ exit
+fi
diff --git a/docker/swift/swift-rsyncd/extend_start.sh b/docker/swift/swift-rsyncd/extend_start.sh
index 86d24724b..37bc4e012 100644
--- a/docker/swift/swift-rsyncd/extend_start.sh
+++ b/docker/swift/swift-rsyncd/extend_start.sh
@@ -2,3 +2,12 @@
sudo chown -R swift:swift /srv/node
mkdir -p /var/lib/swift/lock
+
+# Migrate swift database and exit if KOLLA_STOP_SERVICES variable is set.
+if [[ "${!KOLLA_STOP_SERVICES[@]}" ]]; then
+ echo "Stop background Swift jobs"
+ swift-init rest stop
+ echo "Gracefully Shutdown all Swift storage processes"
+ swift-init {account|container|object} shutdown
+ exit
+fi