cd32d15cc0
In order to facilitate the nova placement -> extracted placement migration, while keeping the services up for as long as possible, we combine the two groups for the load balancer configuration on the first pass, and pass the appropriate flag for the openstack playbook to handle the migration. Once it's all done, we re-run the haproxy playbook without the flag to ensure that the old nova placement backends are removed. We also remove haproxy_nova_placement_whitelist_networks as it is no longer used anywhere. Change-Id: I85e9182e7c4fe9477d30dd16b4132c1645205cce
69 lines
2.0 KiB
YAML
69 lines
2.0 KiB
YAML
---
|
|
# Copyright 2016, Rackspace US, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
- name: Gracefully restart mariadb/galera cluster
|
|
hosts: galera_all
|
|
serial: 1
|
|
max_fail_percentage: 0
|
|
gather_facts: false
|
|
user: root
|
|
tasks:
|
|
- name: Stop mariadb
|
|
service:
|
|
name: mysql
|
|
state: stopped
|
|
retries: 5
|
|
delay: 10
|
|
|
|
- name: Stop container
|
|
lxc_container:
|
|
name: "{{ inventory_hostname }}"
|
|
state: "stopped"
|
|
delegate_to: "{{ physical_host }}"
|
|
when: not hostvars[inventory_hostname]['is_metal']
|
|
|
|
- name: Start container
|
|
lxc_container:
|
|
name: "{{ inventory_hostname }}"
|
|
state: "started"
|
|
delegate_to: "{{ physical_host }}"
|
|
when: not hostvars[inventory_hostname]['is_metal']
|
|
|
|
- name: Start mariadb
|
|
service:
|
|
name: mysql
|
|
state: started
|
|
retries: 5
|
|
delay: 10
|
|
when: hostvars[inventory_hostname]['is_metal']
|
|
|
|
post_tasks:
|
|
- name: Wait for mariadb port 3306 to be available
|
|
wait_for:
|
|
port: "3306"
|
|
host: "{{ ansible_host | default(ansible_ssh_host | default(inventory_hostname)) }}"
|
|
retries: 10
|
|
delay: 10
|
|
delegate_to: "{{ groups['utility_all'][0] }}"
|
|
|
|
- name: Check that WSREP is ready and Synced
|
|
shell: "/usr/bin/mysqladmin extended-status | egrep '(wsrep_local_state_comment)'"
|
|
register: mysql_ready
|
|
until:
|
|
- mysql_ready.rc == 0
|
|
- (mysql_ready.stdout).find("Synced") != -1
|
|
retries: 60
|
|
delay: 1
|