Skip to content
Snippets Groups Projects
Commit 2cfc069e authored by Borne Mace's avatar Borne Mace Committed by Jeffrey Zhang
Browse files

Added support for a stop playbook in kolla

Behavior of stop playbook is very similar to the destroy
playbook.  This is meant when you may just want to bring down
the service for some sort of maintenance but not destroy all
the associated data. Also added support for the new playbook
into the kolla-ansible command.

Change-Id: Icf0ca91de71dc8ead3a024de3e5b9e49116560d1
Implements: blueprint ansible-stop-host-playbook
parent cf81e153
No related branches found
No related tags found
No related merge requests found
---
- name: Creating /kolla-stop/tools directory on node
file:
state: directory
path: /tmp/kolla-stop/tools
- name: Copying validate-docker-execute.sh file
copy:
src: ../tools/validate-docker-execute.sh
dest: /tmp/kolla-stop/tools
mode: 0755
- name: Copying stop-containers file
copy:
src: ../tools/stop-containers
dest: /tmp/kolla-stop/tools
mode: 0755
---
- include: copy_tools.yml
- include: stop_containers.yml
---
- name: Stopping Kolla containers
command: /tmp/kolla-stop/tools/stop-containers
---
- hosts: all
roles:
- stop
......@@ -30,6 +30,7 @@ data_files =
share/kolla/tools = tools/cleanup-containers
share/kolla/tools = tools/cleanup-host
share/kolla/tools = tools/cleanup-images
share/kolla/tools = tools/stop-containers
share/kolla/doc = doc/*
share/kolla/etc_examples = etc/*
share/kolla = tools/init-runonce
......
......@@ -50,6 +50,7 @@ Commands:
post-deploy Do post deploy on deploy node
pull Pull all images for containers (only pulls, no running container changes)
reconfigure Reconfigure OpenStack service
stop Stop Kolla containers
certificates Generate self-signed certificate for TLS *For Development Only*
upgrade Upgrades existing OpenStack Environment
genconfig Generate configuration files for enabled OpenStack services
......@@ -206,6 +207,10 @@ EOF
ACTION="Reconfigure OpenStack service"
EXTRA_OPTS="$EXTRA_OPTS -e action=reconfigure -e serial=30%"
;;
(stop)
ACTION="Stop Kolla containers"
PLAYBOOK="${BASEDIR}/ansible/stop.yml"
;;
(certificates)
ACTION="Generate TLS Certificates"
PLAYBOOK="${BASEDIR}/ansible/certificates.yml"
......
#!/bin/bash
if [[ $(pgrep qemu) ]]; then
echo "Some qemu processes were detected."
echo "Docker will not be able to stop the nova_libvirt container with those running."
echo "Please clean them up before rerunning this script."
exit 1
fi
if [ -n "$1" ]; then
containers_to_stop=($(docker ps | grep -E "$1" | awk '{print $1}'))
else
containers_to_stop=$(docker ps --filter "label=kolla_version" --format "{{.Names}}" -a)
fi
echo "Stopping containers..."
(docker stop -t 30 ${containers_to_stop} 2>&1) > /dev/null
echo "All containers stopped!"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment