############################################################################## # Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- - include_vars: "{{ ansible_os_family }}.yml" - name: disable auto start copy: content: "#!/bin/sh\nexit 101" dest: "/usr/sbin/policy-rc.d" mode: 0755 when: ansible_os_family == "Debian" - name: install nova-compute related packages action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" with_items: "{{ packages | union(packages_noarch) }}" - name: restart virtlogd service: name=virtlogd state=started enabled=yes when: ansible_os_family == "Debian" - name: enable auto start file: path=/usr/sbin/policy-rc.d state=absent when: ansible_os_family == "Debian" - name: get number of cpu support virtualization shell: egrep -c '(vmx|svm)' /proc/cpuinfo || echo 0 register: kvm_cpu_num - name: update libvirt-bin conf lineinfile: dest: /etc/default/libvirt-bin regexp: '^libvirtd_opts=.*' insertafter: '^#libvirtd_opts=.*' line: 'libvirtd_opts="-d -l"' when: ansible_os_family == "Debian" notify: - restart nova-compute services - name: update libvirt-bin.conf lineinfile: dest: /etc/init/libvirt-bin.conf regexp: '^env libvirtd_opts=.*' line: 'env libvirtd_opts="-d -l"' when: ansible_os_family == "Debian" notify: - restart nova-compute services - name: update libvirtd.conf lineinfile: dest: /etc/libvirt/libvirtd.conf regexp: '{{ item.regexp }}' insertafter: '{{ item.insertafter }}' line: '{{ item.line }}' with_items: - regexp: '^listen_tls.*' insertafter: '^#listen_tls.*' line: 'listen_tls = 0' - regexp: '^listen_tcp.*' insertafter: '^#listen_tcp.*' line: 'listen_tcp = 1' - regexp: '^auth_tcp.*' insertafter: '^#auth_tcp.*' line: 'auth_tcp = "none"' notify: - restart nova-compute services - name: update sysconfig libvirtd lineinfile: dest: /etc/sysconfig/libvirtd regexp: '^LIBVIRTD_ARGS.*' insertafter: '^#LIBVIRTD_ARGS.*' line: 'LIBVIRTD_ARGS="--listen"' when: ansible_os_family == "RedHat" notify: - restart nova-compute services - name: update nova-compute conf template: src={{ item }} dest=/etc/nova/{{ item }} with_items: - nova.conf - nova-compute.conf notify: - restart nova-compute services - name: generate neutron control service list lineinfile: dest=/opt/service create=yes line='{{ item }}' with_items: "{{ services | union(services_noarch) }}" - name: remove nova sqlite db shell: rm /var/lib/nova/nova.sqlite || touch nova.sqlite.removed - meta: flush_handlers