Compute: Enable vGPU in Nova if exist on the host
Since Queens release Nova support vGPUs. In order to use it, nova must have the right configuration. This commit will enable vGPU in the nova configuration if some mdev[1] devices exist on the compute node. [1] - https://docs.openstack.org/nova/latest/admin/virtual-gpu.html#how-to-discover-a-gpu-type Change-Id: Ia30b1a4fe38eb966f029f16142b8302707107bfc Signed-off-by: Valentin Boucher <valentin.boucher@kontron.com>
This commit is contained in:
parent
3ebffbd6ac
commit
4d3fb82ab4
@ -73,6 +73,11 @@
|
||||
- always
|
||||
- nova-config
|
||||
|
||||
- include_tasks: nova_vgpu_detect.yml
|
||||
tags:
|
||||
- always
|
||||
- nova-config
|
||||
|
||||
- include_tasks: nova_pre_install.yml
|
||||
tags:
|
||||
- nova-install
|
||||
|
30
tasks/nova_vgpu_detect.yml
Normal file
30
tasks/nova_vgpu_detect.yml
Normal file
@ -0,0 +1,30 @@
|
||||
---
|
||||
# Copyright 2018, Kontron.
|
||||
#
|
||||
# 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: Check if the mdev folder exist
|
||||
stat: path=/sys/class/mdev_bus
|
||||
register: mdev_folder
|
||||
|
||||
- name: Get mdev info content and store as var
|
||||
command: "/bin/sh -c 'ls -1 /sys/class/mdev_bus/*/mdev_supported_types'"
|
||||
register: mdev
|
||||
when: mdev_folder.stat.exists
|
||||
|
||||
- name: Register a fact for nova enabled_vgpu_types
|
||||
set_fact:
|
||||
enabled_vgpu_types: "{{ mdev.stdout_lines | unique }}"
|
||||
when:
|
||||
- mdev.stdout_lines is defined
|
||||
- mdev.stdout_lines | length > 0
|
@ -345,3 +345,8 @@ server_groups = {{ nova_quota_server_groups }}
|
||||
|
||||
[upgrade_levels]
|
||||
compute=auto
|
||||
|
||||
{% if enabled_vgpu_types is defined %}
|
||||
[devices]
|
||||
enabled_vgpu_types = {{ enabled_vgpu_types | join(',') }}
|
||||
{% endif %}
|
||||
|
Loading…
x
Reference in New Issue
Block a user