kubevirt.core.kubevirt инвентаризация – Источник инвентаризации для KubeVirt VirtualMachines и VirtualMachineInstances
Примечание
Этот плагин инвентаризации входит в коллекцию kubevirt.core (версия 1.5.0).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install kubevirt.core. Для использования этого плагина инвентаризации необходимы дополнительные требования, см. Требования для подробностей.
Для использования в книге задач укажите: kubevirt.core.kubevirt.
Описание
- Получение виртуальных машин из одного или нескольких пространств имён с необязательным селектором меток.
- Группировка по имени кластера, пространству имён и меткам.
- Использование плагина подключения kubernetes.core.kubectl для доступа к кластеру Kubernetes.
- Использование файла конфигурации
*.kubevirt.[yml|yaml]YAML для установки значений параметров.
Требования
Ниже перечислены требования, необходимые на локальном контроллере узле, который выполняет эту инвентаризацию.
- python >= 3.9
- kubernetes >= 28.1.0
- PyYAML >= 3.11
Параметры
Параметр | Комментарии |
|---|---|
cache boolean | Переключатель для включения/выключения кэширования исходных данных инвентаризации, требует настройки плагина кэша для работы. Выбор:
Настройка:
|
cache_connection string | Данные или путь подключения к кэшу, для получения подробностей см. документацию по плагинам кэша. Настройка:
|
cache_plugin string | Плагин кэша для использования с исходными данными инвентаризации. По умолчанию: Настройка:
|
cache_prefix string | Префикс для использования с файлами/таблицами плагина кэша По умолчанию: Настройка:
|
cache_timeout integer | Срок действия кэша в секундах По умолчанию: Настройка:
|
compose dictionary | Создать переменные из выражений jinja2. По умолчанию: |
connections list / элементы=dictionary | Необязательный список настроек подключения к кластеру. Если подключения не указаны, будут использоваться значения по умолчанию ~/.kube/config и активный контекст, а объекты будут возвращаться для всех пространств имен, к которым активный пользователь имеет разрешения доступа. Этот параметр устарел. Разделите свои подключения на несколько файлов конфигурации и перенесите параметры каждого подключения в верхний уровень конфигурации. Устарел с версии |
|
api_key string |
Токен, используемый для аутентификации с API. Также может быть указан через переменную среды |
|
api_version string |
Укажите используемую версию API KubeVirt. По умолчанию: |
|
append_base_domain boolean |
Добавить базовый домен кластера к именам хостов, построенных из SSH Выбор:
|
|
base_domain string |
Переопределить базовый домен, используемый для построения имён хостов. Используется в случае |
|
ca_cert aliases: ssl_ca_cert string |
Путь к сертификату CA, используемому для аутентификации с API. Также может быть указан через переменную среды |
|
client_cert aliases: cert_file string |
Путь к сертификату, используемому для аутентификации с API. Также может быть указан через переменную среды |
|
client_key aliases: key_file string |
Путь к файлу ключа, используемому для аутентификации с API. Также может быть указан через переменную среды |
|
context string |
Имя контекста, найденного в файле конфигурации. Также может быть указано через переменную окружения |
|
create_groups boolean |
Включить создание групп на основе меток в Варианты:
|
|
host string |
Укажите URL для доступа к API. Также может быть указано через переменную окружения |
|
kube_secondary_dns boolean |
Включить имена хостов, полученные из Варианты:
|
|
kubeconfig string |
Путь к существующему файлу конфигурации Kubernetes. Если не указано, и другие параметры подключения не указаны, клиент Kubernetes попытается загрузить файл конфигурации по умолчанию из ~/.kube/config. Также может быть указано через переменную окружения |
|
label_selector string |
Определите селектор меток для выбора подмножества полученных виртуальных машин. |
|
name string |
Необязательное имя для назначения кластеру. Если не указано, имя строится из сервера и порта. |
|
namespaces string |
Список пространств имен. Если не указано, будут получены виртуальные машины из всех пространств имён, к которым у пользователя есть доступ. |
|
network_name aliases: interface_name string |
В случае подключения нескольких сетей к виртуальной машине, определите, какой интерфейс должен возвращаться как основной IP-адрес. |
|
password string |
Укажите пароль для аутентификации с API. Также может быть указано через переменную окружения |
|
use_service boolean |
Включить использование Услуги используются только в том случае, если не было указано Варианты:
|
|
username string |
Укажите имя пользователя для аутентификации с API. Также может быть указано через переменную окружения |
|
validate_certs aliases: verify_ssl boolean |
Подтверждать ли сертификаты SSL сервера API. Также может быть указано через переменную окружения Варианты:
|
groups dictionary | Добавление хостов в группу на основе условных выражений Jinja2. По умолчанию: |
host_format string | Укажите формат хоста в группе инвентаризации. Доступные спецификаторы: По умолчанию: |
keyed_groups list / elements=dictionary | Добавление хостов в группы на основе значений переменной. По умолчанию: |
|
default_value string added in ansible-core 2.12 |
Значение по умолчанию, когда значение переменной хоста пустая строка. Этот параметр несовместим с |
|
key string |
Ключ из входного словаря, используемый для генерации групп |
|
parent_group string |
Родительская группа для группы с ключом |
|
префикс строка |
Имя ключированной группы будет начинаться с этого префикса По умолчанию: |
|
разделитель строка |
разделитель, используемый для создания имени ключированной группы По умолчанию: |
|
trailing_separator логическое добавлен в ansible-core 2.12 |
Установите это значение в Этот параметр несовместим с Доступные значения:
|
leading_separator логическое добавлен в ansible-core 2.11 | Используется совместно с keyed_groups. По умолчанию, у ключированной группы, у которой нет указанного префикса или разделителя, имя начинается с подчеркивания. Это связано с тем, что префикс по умолчанию — это «», а разделитель по умолчанию — «_». Установите этот параметр в значение False, чтобы исключить ведущее подчеркивание (или другой разделитель), если префикс не задан. Если имя группы получено из отображения, разделитель все равно используется для конкатенации элементов. Чтобы вообще не использовать разделитель в имени группы, установите разделитель ключированной группы в пустую строку. Доступные значения:
|
plugin строка / обязательно | Токен, гарантирующий, что это файл источника для плагина kubevirt.core.kubevirt. Доступные значения:
|
strict логическое | Если Поскольку в выражениях можно использовать факты, они могут не всегда быть доступны, поэтому по умолчанию эти ошибки игнорируются. Доступные значения:
|
use_extra_vars логическое добавлен в ansible-core 2.11 | Объединить дополнительные переменные в доступные переменные для составления (наивысший приоритет). Доступные значения:
Настройка:
|
Примеры
# Filename must end with kubevirt.[yml|yaml]
- name: Authenticate with token and return all virtual machines from all accessible namespaces
plugin: kubevirt.core.kubevirt
connections:
- host: https://192.168.64.4:8443
api_key: xxxxxxxxxxxxxxxx
validate_certs: false
- name: Use default ~/.kube/config and return virtual machines from namespace testing connected to network bridge-network
plugin: kubevirt.core.kubevirt
connections:
- namespaces:
- testing
network_name: bridge-network
- name: Use default ~/.kube/config and return virtual machines from namespace testing with label app=test
plugin: kubevirt.core.kubevirt
connections:
- namespaces:
- testing
label_selector: app=test
- name: Use a custom config file and a specific context
plugin: kubevirt.core.kubevirt
connections:
- kubeconfig: /path/to/config
context: 'awx/192-168-64-4:8443/developer'
Ссылки на сборки
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/kubevirt/core/kubevirt_inventory.html