Files
openstack-ansible/playbooks/os-placement-install.yml
Jesse Pretorius cd32d15cc0 Add nova placement to placement migration
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
2019-10-08 19:03:15 +00:00

54 lines
1.7 KiB
YAML

---
# Copyright 2019, VEXXHOST, 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: Install placement components
hosts: placement_all
gather_facts: "{{ osa_gather_facts | default(True) }}"
environment: "{{ deployment_environment_variables | default({}) }}"
user: root
vars_files:
- "defaults/repo_packages/openstack_services.yml"
- "defaults/{{ install_method }}_install.yml"
tags:
- placement
pre_tasks:
- include_tasks: "common-tasks/os-{{ container_tech | default('lxc') }}-container-setup.yml"
when: not is_metal
- include_tasks: common-tasks/unbound-clients.yml
when:
- hostvars['localhost']['resolvconf_enabled'] | bool
- name: Configure package proxy cache
include_tasks: common-tasks/package-cache-proxy.yml
when: install_method == "source"
- name: Stop nova-placement-api services for the upgrade
delegate_to: "{{ item }}"
service:
name: nova-placement-api
state: stopped
enabled: no
when: placement_migrate_flag | default(False)
with_items: "{{ groups['nova_api_placement'] }}"
run_once: true
ignore_errors: true
roles:
- role: "os_placement"
- role: "system_crontab_coordination"
tags:
- crontab