kubevirt_template – Управление шаблонами KubeVirt
Новое в версии 2.8.
Описание
- Используйте Openshift Python SDK для управления состоянием шаблонов KubeVirt.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.7
- openshift >= 0.8.2
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_key строка | Токен, используемый для аутентификации с API. Также может быть указан через переменную окружения K8S_AUTH_API_KEY. | |
| 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 | |
| context строка | Имя контекста, найденного в файле конфигурации. Также может быть указан через переменную окружения K8S_AUTH_CONTEXT. | |
| default_disk словарь | Цель параметра default_disk — определить тип диска, поддерживаемый ОС, главным образом в терминах шины (ide, scsi, sata, virtio, ...). Параметр default_disk определяет наложение конфигурации для дисков, которое будет применено поверх дисков во время создания виртуальной машины для определения глобальной совместимости и/или параметров производительности по умолчанию, определённых здесь.Этот параметр можно использовать только при установке плагина kubevirt на ваш кластер openshift. | |
| default_network словарь | Цель параметра default_network аналогична default_volume и должна использоваться в качестве шаблона, который определяет параметры производительности и подключения (например, L2 bridge). Параметр default_network определяет наложение конфигурации для сетей, которое будет применено поверх сетей во время создания виртуальной машины для определения глобальной совместимости и/или параметров производительности по умолчанию, определённых здесь.Этот параметр можно использовать только при установке плагина kubevirt на ваш кластер openshift. | |
| default_nic словарь | Цель параметра default_nic аналогична default_disk и должна использоваться в качестве шаблона для обеспечения совместимости и производительности ОС. Параметр default_nic определяет наложение конфигурации для сетевых интерфейсов (nic), которое будет применено поверх сетевых интерфейсов во время создания виртуальной машины для определения глобальной совместимости и/или параметров производительности по умолчанию, определённых здесь.Этот параметр можно использовать только при установке плагина kubevirt на ваш кластер openshift. | |
| default_volume словарь | Цель параметра default_volume — настройка преимущественно параметров производительности, таких как кэши, если они доступны реализацией подчинённого объёма. Параметр default_volume определяет наложение конфигурации для объёмов, которое будет применено поверх объёмов во время создания виртуальной машины для определения глобальной совместимости и/или параметров производительности по умолчанию, определённых здесь.Этот параметр можно использовать только при установке плагина kubevirt на ваш кластер openshift. | |
| description строка | Описание шаблона. Включите достаточно подробную информацию, чтобы пользователь понял, что развертывается… и какие предосторожности ему необходимо знать перед развертыванием. Также необходимо предоставить ссылки на дополнительную информацию, такую как файл README. | |
| display_name строка | Краткое, понятное для пользователя имя, которое может использоваться пользовательскими интерфейсами. | |
| documentation_url строка | Ссылка на дополнительную документацию по шаблону. | |
| editable список | Расширение для указания элементов, которые следует считать редактируемыми. Список селекторов jsonpath. Корень jsonpath — объекты: элемент шаблона. Этот параметр можно использовать только при установке плагина kubevirt на ваш кластер openshift. | |
| force логический |
| Если установлено значение yes, и состояние равно present, существующий объект будет заменён. |
| host строка | Укажите URL для доступа к API. Также может быть указан через переменную окружения K8S_AUTH_HOST. | |
| icon_class строка | Иконка, которая будет отображаться с вашим шаблоном в веб-консоли. По возможности выбирайте из имеющихся логотипов. Также можно использовать иконки из FontAwesome. В качестве альтернативы можно использовать иконки через настройки CSS, которые могут быть добавлены в кластер OpenShift Container Platform, использующий ваш шаблон. Необходимо указать существующий класс иконки, иначе не будет отображаться общая иконка. | |
| kubeconfig путь | Путь к существующему файлу конфигурации Kubernetes. Если не указан и другие параметры подключения не указаны, клиент openshift попытается загрузить файл конфигурации по умолчанию из ~/.kube/config.json. Также может быть указан через переменную окружения K8S_AUTH_KUBECONFIG. | |
| long_description строка | Дополнительное описание шаблона. Может отображаться, например, каталогом сервисов. | |
| merge_type список |
| Определяет, использовать ли подход к слиянию по умолчанию или какой-то специфический тип. По умолчанию обычно используется стратегическое слияние. |
| name строка / обязательно | Имя объекта шаблона. | |
| namespace строка / обязательно | Пространство имён, в котором существует объект шаблона. | |
| objects список | Список любых допустимых объектов API, таких как DeploymentConfig, Service и т.д. Объект будет создан точно так же, как определён здесь, со значениями параметров, заменёнными до создания. Определение этих объектов может ссылаться на параметры, определённые ранее. В качестве части списка пользователь может передать также тип VirtualMachine. При передаче VirtualMachine пользователь должен использовать структуру Ansible параметров, а не структуру API Kubernetes. Для получения дополнительной информации, пожалуйста, обратитесь к модулю kubevirt_vm и разделу ПРИМЕРЫ, где вы можете увидеть примеры. | |
| parameters список | Параметры позволяют пользователю указать значение или сгенерировать его при создании экземпляра шаблона. Затем это значение подставляется там, где указан параметр. Ссылки могут быть определены в любом поле в списке объектов. Это полезно для генерации случайных паролей или для того, чтобы пользователь мог указать имя хоста или другое значение, специфичное для пользователя, необходимое для настройки шаблона. Дополнительную информацию можно найти по адресу: https://docs.openshift.com/container-platform/3.6/dev_guide/templates.html#writing-parameters
| |
| password строка | Укажите пароль для аутентификации с API. Также может быть указан через переменную окружения K8S_AUTH_PASSWORD. Прочтите описание параметра username для обсуждения, когда этот параметр применим. | |
| provider_display_name строка | Имя человека или организации, предоставляющей шаблон. | |
| proxy - добавлен в 2.9 | URL HTTP-прокси, который нужно использовать для подключения. Также может быть указан через переменную окружения K8S_AUTH_PROXY. Обратите внимание, что этот модуль не использует типичные настройки прокси из окружения (например, HTTP_PROXY). |
| state string |
| Определяет, должен ли объект быть создан, изменён или удалён. При значении present, объект будет создан, если он ещё не существует. Если значение absent, существующий объект будет удалён. При значении present, существующий объект будет изменён, если его атрибуты отличаются от указанных с помощью resource_definition или src. |
| support_url string | URL для получения поддержки шаблона. | |
| username string | Укажите имя пользователя для аутентификации с API. Также может быть указано через переменную окружения K8S_AUTH_USERNAME. Обратите внимание, что это работает только с кластерами, настроенными на использование HTTP Basic Auth. Если ваш кластер использует другой тип аутентификации (например, OAuth2 в OpenShift), эта опция не будет работать должным образом, и вам следует обратиться к модулю k8s_auth, так как он может быть полезен в вашем случае. | |
| validate_certs boolean |
| Включает или отключает проверку SSL-сертификатов API-сервера. Также может быть указано через переменную окружения K8S_AUTH_VERIFY_SSL. псевдонимы: verify_ssl |
| version string | Версия структуры шаблона. Этот параметр может быть использован только при установке дополнения kubevirt в вашем кластере openshift. |
Примечания
Примечание
- Клиент OpenShift Python оборачивает K8s Python клиент, предоставляя полный доступ ко всем API и моделям, доступным на обеих платформах. Подробнее о версиях API и дополнительной информации см. https://github.com/openshift/openshift-restclient-python
- Чтобы избежать ошибок проверки SSL-сертификатов, когда
validate_certsимеет значение True, полная цепочка сертификатов API-сервера должна быть предоставлена с помощьюca_certили в файле kubeconfig.
Примеры
- name: Create template 'mytemplate'
kubevirt_template:
state: present
name: myvmtemplate
namespace: templates
display_name: Generic cirros template
description: Basic cirros template
long_description: Verbose description of cirros template
provider_display_name: Just Be Cool, Inc.
documentation_url: http://theverycoolcompany.com
support_url: http://support.theverycoolcompany.com
icon_class: icon-linux
default_disk:
disk:
bus: virtio
default_nic:
model: virtio
default_network:
resource:
resourceName: bridge.network.kubevirt.io/cnvmgmt
default_volume:
containerDisk:
image: kubevirt/cirros-container-disk-demo:latest
objects:
- name: ${NAME}
kind: VirtualMachine
memory: ${MEMORY_SIZE}
state: present
namespace: vms
parameters:
- name: NAME
description: VM name
generate: expression
from: 'vm-[A-Za-z0-9]{8}'
- name: MEMORY_SIZE
description: Memory size
value: 1Gi
- name: Remove template 'myvmtemplate'
kubevirt_template:
state: absent
name: myvmtemplate
namespace: templates
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| kubevirt_template complex | success | Словарь шаблона, возвращаемый API. |
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом 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.9/modules/kubevirt_template_module.html