community.libvirt.virt – Управляет виртуальными машинами, поддерживаемыми libvirt
Примечание
Этот плагин входит в коллекцию community.libvirt (версия 1.0.0).
Для его установки используйте: ansible-galaxy collection install community.libvirt.
Для использования в книге задач укажите: community.libvirt.virt.
Обзор
- Управляет виртуальными машинами, поддерживаемыми libvirt.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- libvirt-python
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| autostart boolean |
| запуск ВМ при запуске хоста. |
| command string |
| Помимо управления состоянием, доступны различные неидемпотентные команды. |
| name string | имя гостевой ВМ, подлежащей управлению. Обратите внимание, что ВМ должна быть предварительно определена с помощью xml. Этот параметр обязателен, если command не равен list_vms или info. псевдонимы: guest | |
| state string |
| Обратите внимание, что может быть задержка при запросах состояния, таких как shutdown, так как они относятся только к состояниям ВМ. После запуска гостя она может быть не сразу доступна. Параметры state и command несовместимы, за исключением случая command=list_vms. В этом случае будут отображаться все ВМ в указанном состоянии. |
| uri string | Значение по умолчанию: "qemu:///system" | адрес подключения libvirt. |
| xml string | XML-документ, используемый с командой define. Должен содержать необработанный XML-контент, используя lookup. XML не может ссылаться на файл. |
Примеры
# a playbook task line:
- community.libvirt.virt:
name: alpha
state: running
# /usr/bin/ansible invocations
# ansible host -m virt -a "name=alpha command=status"
# ansible host -m virt -a "name=alpha command=get_xml"
# ansible host -m virt -a "name=alpha command=create uri=lxc:///"
# defining and launching an LXC guest
- name: define vm
community.libvirt.virt:
command: define
xml: "{{ lookup('template', 'container-template.xml.j2') }}"
uri: 'lxc:///'
- name: start vm
community.libvirt.virt:
name: foo
state: running
uri: 'lxc:///'
# setting autostart on a qemu VM (default uri)
- name: set autostart for a VM
community.libvirt.virt:
name: foo
autostart: yes
# Defining a VM and making is autostart with host. VM will be off after this task
- name: define vm from xml and set autostart
community.libvirt.virt:
command: define
xml: "{{ lookup('template', 'vm_template.xml.j2') }}"
autostart: yes
# Listing VMs
- name: list all VMs
community.libvirt.virt:
command: list_vms
register: all_vms
- name: list only running VMs
community.libvirt.virt:
command: list_vms
state: running
register: running_vms
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| list_vms list / elements=string | success | Список определенных на удаленной системе ВМ Пример: ['build.example.org', 'dev.example.org'] |
| status string | success | Состояние ВМ, включая running, crashed, paused и shutdown Пример: success |
Авторы
- Команда Ansible Core
- Michael DeHaan
- Seth Vidal (@skvidal)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/libvirt/virt_module.html