summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apex/overcloud/deploy.py9
-rw-r--r--lib/ansible/playbooks/deploy_dependencies.yml28
2 files changed, 25 insertions, 12 deletions
diff --git a/apex/overcloud/deploy.py b/apex/overcloud/deploy.py
index 3ddb5f4..809afc1 100644
--- a/apex/overcloud/deploy.py
+++ b/apex/overcloud/deploy.py
@@ -129,7 +129,7 @@ def create_deploy_cmd(ds, ns, inv, tmp_dir,
elif num_control > 1 and not ds['global_params']['ha_enabled']:
num_control = 1
cmd = "openstack overcloud deploy --templates --timeout {} " \
- "--libvirt-type kvm".format(con.DEPLOY_TIMEOUT)
+ .format(con.DEPLOY_TIMEOUT)
# build cmd env args
for option in deploy_options:
cmd += " -e {}".format(option)
@@ -139,6 +139,13 @@ def create_deploy_cmd(ds, ns, inv, tmp_dir,
cmd += ' --control-flavor control --compute-flavor compute'
if net_data:
cmd += ' --networks-file network_data.yaml'
+ libvirt_type = 'kvm'
+ if virtual:
+ with open('/sys/module/kvm_intel/parameters/nested') as f:
+ nested_kvm = f.read().strip()
+ if nested_kvm != 'Y':
+ libvirt_type = 'qemu'
+ cmd += ' --libvirt-type {}'.format(libvirt_type)
logging.info("Deploy command set: {}".format(cmd))
with open(os.path.join(tmp_dir, 'deploy_command'), 'w') as fh:
diff --git a/lib/ansible/playbooks/deploy_dependencies.yml b/lib/ansible/playbooks/deploy_dependencies.yml
index d274967..545ee33 100644
--- a/lib/ansible/playbooks/deploy_dependencies.yml
+++ b/lib/ansible/playbooks/deploy_dependencies.yml
@@ -54,18 +54,24 @@
name: default
autostart: yes
state: active
- - lineinfile:
- path: /etc/modprobe.d/kvm_intel.conf
- line: 'options kvm-intel nested=1'
- create: yes
- when: ansible_architecture == "x86_64"
- - modprobe:
- name: "{{ item }}"
- state: present
- with_items:
- - kvm
- - kvm_intel
+ - shell: cat /sys/module/kvm_intel/parameters/nested || true
+ register: nested_result
when: ansible_architecture == "x86_64"
+ - name: reload kvm_intel
+ block:
+ - lineinfile:
+ path: /etc/modprobe.d/kvm_intel.conf
+ line: 'options kvm-intel nested=1'
+ create: yes
+ - modprobe:
+ name: kvm_intel
+ state: absent
+ - modprobe:
+ name: kvm_intel
+ state: present
+ when:
+ - ansible_architecture == "x86_64"
+ - "'Y' not in nested_result.stdout"
- name: Generate SSH key for root if missing
shell: test -e ~/.ssh/id_rsa || ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
- name: Check that /u/l/python3.4/site-packages/virtualbmc/vbmc.py exists