Since libvirt 5.7 we should not use traditional mode. Instead systemd mode should be choosen. Sockets are provided by libvirt package. We just need to conditionally enable or disable them. As addition we changed nova_libvirtd_listen_tls to 0 by default because listen_tls requires certificate to be provided which is not the case in the current role state. So we also fix behaviour of the role when nova_libvirtd_listen_tls is 1, supposing that deployer has manually distributed certificates across compute hosts. Change-Id: Id73cb67de26c305908d0245551fa57a7e6448784 Closes-Bug: #1903846
81 lines
2.0 KiB
YAML
81 lines
2.0 KiB
YAML
---
|
|
# Copyright 2015, 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: Stop libvirt-bin
|
|
service:
|
|
name: "{{ libvirt_service_name }}"
|
|
enabled: yes
|
|
state: "stopped"
|
|
listen:
|
|
- Restart libvirt-bin
|
|
|
|
- name: Enable sockets when needed
|
|
service:
|
|
name: "{{ item.name | default(item) }}"
|
|
state: "{{ item.condition | default(False) | ternary('started', 'stopped') }}"
|
|
enabled: "{{ item.condition | default(False) }}"
|
|
masked: no
|
|
when:
|
|
- libvirtd_version is version('5.7', '>=')
|
|
with_items:
|
|
- name: libvirtd-tls.socket
|
|
condition: "{{ nova_libvirtd_listen_tls | bool }}"
|
|
- name: libvirtd-tcp.socket
|
|
condition: "{{ nova_libvirtd_listen_tcp | bool }}"
|
|
listen:
|
|
- Restart libvirt-bin
|
|
|
|
- name: Start libvirt-bin
|
|
service:
|
|
name: "{{ libvirt_service_name }}"
|
|
enabled: yes
|
|
state: "started"
|
|
listen:
|
|
- Restart libvirt-bin
|
|
|
|
- name: Stop services
|
|
service:
|
|
name: "{{ item.service_name }}"
|
|
enabled: yes
|
|
state: "stopped"
|
|
daemon_reload: yes
|
|
with_items: "{{ filtered_nova_services }}"
|
|
register: _stop
|
|
until: _stop is success
|
|
retries: 5
|
|
delay: 2
|
|
listen:
|
|
- "Restart nova services"
|
|
- "venv changed"
|
|
|
|
- name: Start services
|
|
service:
|
|
name: "{{ item.service_name }}"
|
|
enabled: yes
|
|
state: "started"
|
|
daemon_reload: yes
|
|
with_items: "{{ filtered_nova_services }}"
|
|
register: _start
|
|
until: _start is success
|
|
retries: 5
|
|
delay: 2
|
|
listen:
|
|
- "Restart nova services"
|
|
- "venv changed"
|
|
|
|
- meta: noop
|
|
listen: Manage LB
|
|
when: false
|