Spec-Zone.ru › Ansible 2.8

kubevirt_rs – Управление репликами виртуальных машин KubeVirt

Новая версия с 2.8.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Используйте Openshift Python SDK для управления состоянием реплик виртуальных машин KubeVirt.

Требования

Ниже перечислены требования к хосту, на котором выполняется этот модуль.

  • openshift >= 0.8.2
  • python >= 2.7

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
api_key
строка
Токен, используемый для аутентификации с API. Также может быть указан через переменную среды K8S_AUTH_API_KEY.
bootloader
строка
Укажите загрузчик виртуальной машины.
По умолчанию все виртуальные машины используют BIOS для загрузки.
ca_cert
путь
Путь к сертификату CA, используемому для аутентификации с API. Для предотвращения ошибок проверки сертификата необходимо предоставить полную цепочку сертификатов. Также может быть указан через переменную среды K8S_AUTH_SSL_CA_CERT.

Псевдонимы: ssl_ca_cert
client_cert
путь
Путь к сертификату, используемому для аутентификации с API. Также может быть указан через переменную среды K8S_AUTH_CERT_FILE.

Псевдонимы: cert_file
client_key
путь
Путь к файлу ключа, используемому для аутентификации с API. Также может быть указан через переменную среды K8S_AUTH_KEY_FILE.

Псевдонимы: key_file
cloud_init_nocloud
словарь
Представляет источник пользовательских данных NoCloud cloud-init. Данные NoCloud будут добавлены в виде диска к виртуальной машине. Необходима правильная установка cloud-init внутри гостевой системы. Более подробная информация https://kubevirt.io/api-reference/master/definitions.html#_v1_cloudinitnocloudsource
context
строка
Имя контекста, найденного в файле конфигурации. Также может быть указан через переменную среды K8S_AUTH_CONTEXT.
cpu_cores
целое число
Количество ядер процессора.
cpu_features
список
Список словарей для настройки параметров выбранной модели процессора.
Примечание: атрибут политики может быть опущен или содержать одну из следующих политик: force, require, optional, disable, forbid.
Примечание: если политика не указана для функции, она по умолчанию устанавливается как require.
Более подробная информация о политиках: https://libvirt.org/formatdomain.html#elementsCPU
cpu_limit
целое число
Преобразуется в значение в миллиядрах и умножается на 100. Результирующее значение — общее количество времени использования процессора контейнером каждые 100 мс. Виртуальная машина не может использовать больше своего квотируемого времени процессора в течение этого интервала.
cpu_model
строка
Модель процессора.
Список доступных моделей можно найти здесь: https://github.com/libvirt/libvirt/blob/master/src/cpu_map/index.xml.
Примечание: Пользователь может определить модель процессора по умолчанию как default-cpu-model в kubevirt-config ConfigMap, если не задано — используется host-model.
Примечание: Убедитесь, что модель процессора узла, на котором вы запускаете ВМ, имеет такой же или более высокий семейство процессора.
Примечание: Если модель процессора не задана, ВМ будет использовать модель процессора, наиболее близкую к той, которая используется на узле, на котором выполняется ВМ.
cpu_shares
целое число
Укажите долю процессора.
disks
список
Список словарей, которые определяют диски виртуальной машины.
Доступ к диску можно получить через четыре разных типа: disk, lun, cdrom, floppy.
Все возможные параметры конфигурации доступны в https://kubevirt.io/api-reference/master/definitions.html#_v1_disk
Каждый диск должен иметь указанный volume, который объявляет тип тома диска. Все возможные параметры конфигурации тома доступны в https://kubevirt.io/api-reference/master/definitions.html#_v1_volume.
force
булево
    Варианты:
  • нет ←
  • да
Если установлено в no, а состояние — в present, существующий объект будет заменён.
headless
-
Укажите, должна ли виртуальная машина иметь присоединённую минимальную конфигурацию устройства видео и графики.
По умолчанию виртуальной машине будет применена минимальная конфигурация устройства видео и графики. Устройство видео совместимо с vga и имеет размер памяти 16 МБ.
host
строка
Укажите URL для доступа к API. Также может быть указан через переменную среды K8S_AUTH_HOST.
hugepage_size
строка
Укажите размер огромных страниц.
interfaces
список
Интерфейс определяет виртуальный сетевой интерфейс виртуальной машины (также называется передним интерфейсом).
Все возможные параметры конфигурации интерфейсов доступны в https://kubevirt.io/api-reference/master/definitions.html#_v1_interface
Каждый интерфейс должен иметь указанную сеть, которая объявляет, к какому логическому или физическому устройству он подключён (также называется задним интерфейсом). Все возможные параметры конфигурации сети доступны в https://kubevirt.io/api-reference/master/definitions.html#_v1_network.
kubeconfig
путь
Путь к существующему файлу конфигурации Kubernetes. Если не указано, и не указаны другие параметры подключения, клиент openshift попытается загрузить файл конфигурации по умолчанию из ~/.kube/config.json. Также может быть указан через переменную среды K8S_AUTH_KUBECONFIG.
labels
словарь
Метки — пары «ключ/значение», которые прикрепляются к виртуальным машинам. Метки предназначены для указания идентифицирующих атрибутов виртуальных машин, которые являются значимыми и релевантными для пользователей, но не подразумевают семантику для основной системы. Метки можно использовать для организации и выбора подмножеств виртуальных машин. Метки можно прикрепить к виртуальным машинам во время создания и, впоследствии, добавлять и изменять в любое время.
Подробнее о метках, используемых для внутренней реализации https://kubevirt.io/user-guide/#/misc/annotations_and_labels
machine_type
строка
Тип машины QEMU — фактический чипсет виртуальной машины.
memory
строка
Запрашиваемое количество памяти виртуальной машиной.
Например, 1024Mi.
memory_limit
строка
Максимальное количество памяти, которое может использовать виртуальная машина.
Например, 1024Mi.
merge_type
список
    Варианты:
  • json
  • merge
  • strategic-merge
Укажите, нужно ли переопределить подход к объединению исправлений по умолчанию с помощью конкретного типа.
Если указано более одного типа объединения, типы объединения будут использоваться в порядке их указания.
По умолчанию используется ['strategic-merge', 'merge'], что идеально подходит для использования одних и тех же параметров в ресурсах, которые объединяют пользовательские ресурсы и встроенные ресурсы, так как пользовательские определения ресурсов обычно не могут быть обновлены с помощью обычного стратегического объединения.
См. https://kubernetes.io/docs/tasks/run-application/update-api-object-kubectl-patch/#use-a-json-merge-patch-to-update-a-deployment
name
строка / обязательно
Имя реплики виртуальной машины.
namespace
строка / обязательно
Пространство имен, в котором существует набор реплик виртуальных машин.
password
строка
Укажите пароль для аутентификации с API. Также может быть указан через переменную среды K8S_AUTH_PASSWORD.
Для обсуждения применимости этого параметра ознакомьтесь с описанием параметра username.
replicas
целое число
Количество желаемых под-процессов. Это указатель для различения явного нуля и отсутствия значения.
Replicas по умолчанию устанавливается в 1, если создаётся новый набор реплик.
resource_definition
словарь
Частичное YAML-описание создаваемого/обновляемого объекта. Здесь вы можете определить параметры ресурсов Kubernetes, не охваченные параметрами этого модуля.
ПРИМЕЧАНИЕ: resource_definition имеет более низкий приоритет, чем параметры модуля. Если вы попытаетесь определить, например, metadata.namespace здесь, это значение будет проигнорировано, и будет использоваться значение namespace.

псевдонимы: definition, inline
selector
словарь / обязательно
Selector — это запрос по меткам набора виртуальных машин.
smbios_uuid
строка
Для обеспечения согласованного представления виртуализированного оборудования для гостевой ОС можно установить UUID SMBIOS.
state
строка
    Варианты:
  • present ←
  • absent
Создание или удаление наборов реплик виртуальных машин.
tablets
список
Укажите планшеты, которые будут использоваться в качестве входных устройств
username
строка
Укажите имя пользователя для аутентификации с API. Также можно указать через переменную окружения K8S_AUTH_USERNAME.
Обратите внимание, что это работает только с кластерами, настроенными на использование HTTP Basic Auth. Если ваш кластер имеет другой тип аутентификации (например, OAuth2 в OpenShift), этот параметр не будет работать должным образом, и вам следует обратиться к модулю k8s_auth, так как он может выполнять нужные действия.
validate_certs
булево
    Варианты:
  • no
  • yes
Включает/выключает проверку сертификатов SSL сервера API. Также можно указать через переменную окружения K8S_AUTH_VERIFY_SSL.

псевдонимы: verify_ssl
wait
булево
    Варианты:
  • no
  • yes ←
True, если модуль должен ожидать, пока ресурс перейдёт в нужное состояние.
wait_timeout
целое число
По умолчанию:
120
Время в секундах, которое модуль должен ждать, пока ресурс перейдёт в нужное состояние.

Примечания

Примечание

  • Клиент OpenShift Python оборачивает клиент K8s Python, предоставляя полный доступ ко всем API и моделям, доступным на обеих платформах. Подробную информацию о версиях API и дополнительную информацию посетите на https://github.com/openshift/openshift-restclient-python
  • Для предотвращения ошибок проверки сертификатов SSL, когда validate_certs равно True, полная цепочка сертификатов сервера API должна быть предоставлена через ca_cert или в файле kubeconfig.
  • Для использования этого модуля необходимо установить Openshift Python SDK. Чтобы убедиться, что он установлен с правильной версией, можно создать следующую задачу: pip: name=openshift>=0.8.2

Примеры

- name: Create virtual machine replica set 'myvmir'
  kubevirt_rs:
      state: present
      name: myvmir
      namespace: vms
      wait: true
      replicas: 3
      memory: 64M
      labels:
        myvmi: myvmi
      selector:
        matchLabels:
            myvmi: myvmi
      disks:
         - name: containerdisk
           volume:
             containerDisk:
               image: kubevirt/cirros-container-disk-demo:latest
               path: /custom-disk/cirros.img
           disk:
             bus: virtio

- name: Remove virtual machine replica set 'myvmir'
  kubevirt_rs:
      state: absent
      name: myvmir
      namespace: vms
      wait: true

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
kubevirt_rs
сложный тип
success
Набор реплик виртуальной машины, управляемый пользователем.
Этот словарь содержит все значения, возвращаемые API KubeVirt, все параметры описаны здесь https://kubevirt.io/api-reference/master/definitions.html#_v1_virtualmachineinstance



Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Команда KubeVirt (@kubevirt)

Подсказка

Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/kubevirt_rs_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API