kubernetes-modules
УСТАРЕЛО
Эти модули устарели в пользу модулей k8s_raw и openshift_raw, которые были добавлены в Ansible 2.5.
ansible-kubernetes-modules
Предоставляет доступ к последнему релизу модулей K8s.
Включите эту роль в плейбук, и любые другие задачи, роли и включения будут иметь доступ к модулям.
Модули находятся в папке библиотеки. Каждый из них имеет полную документацию по параметрам и возвращаемой структуре данных. Однако не все модули будут включать примеры, только те, для которых были созданы тестовые данные.
Если вы обнаружите проблему с каким-либо модулем или у вас есть предложения, пожалуйста, сообщите об этом в репозиторий OpenShift Rest Client.
Для удобства модули k8s_common.py
и openshift_common.py
включены в module_utils. В данный момент они не являются частью официального релиза Ansible, но входят в состав Ansible и находятся в ветке devel
. Тем временем, если вы вдруг найдете ошибку или захотите внести изменения, пожалуйста, открывайте вопросы и отправляйте запросы на изменение в репозиторий Ansible.
Требования
- Ansible
- Установленный OpenShift Rest Client на хосте, где будут выполняться модули.
Установка и использование
Используйте клиент Galaxy для установки роли:
$ ansible-galaxy install ansible.kubernetes-modules
После установки добавьте ее в плейбук:
---
- hosts: localhost
remote_user: root
roles:
- role: ansible.kubernetes-modules
install_python_requirements: no
- role: hello-world
Поскольку роль указана, роль hello-world
сможет развернуть приложение с помощью модулей K8s. Чтобы увидеть содержимое самой роли, посмотрите в папке tests/roles.
Аутентификация с API
Модули взаимодействуют напрямую с API Kubernetes или OpenShift. Установка инструмента командной строки kubectl
или oc
не обязательна.
Параметры модуля
Клиент OpenShift требует файл конфигурации Kubernetes. Используйте следующие опции, чтобы контролировать, где он ищет файл и какой контекст использует для аутентификации с API:
kubeconfig
Путь по умолчанию к файлу конфигурации -
~/.kube/config
. Используйте, чтобы указать альтернативный путь к файлу.
context
Имя контекста конфигурации для аутентификации. Если не указано, используется текущий активный контекст.
Используйте следующие параметры, чтобы переопределить настройки, найденные в файле конфигурации:
host
Укажите URL-адрес API-сервера.
ssl_ca_cert
Путь к файлу сертификата удостоверяющего центра.
cert_file
Путь к файлу сертификата сервера.
key_file
Путь к файлу закрытого ключа.
api_key
API токен.
verify_ssl
Установите в true или false. Если false, проверка SSL не будет обязательной.
Переменные окружения
Вместо передачи настроек аутентификации как параметров отдельным модулям, вы можете передать информацию с помощью переменных окружения. Имя переменных окружения - K8S_AUTH_ с добавлением имени переменной в верхнем регистре. Например, key_file будет K8S_AUTH_KEY_FILE.
Переменные роли
install_python_requirements
Установите значение true, если хотите, чтобы OpenShift Rest Client был установлен. По умолчанию false. Будет установлен через
pip
.
virtualenv
Укажите имя виртуального окружения, которое следует использовать при установке пакетов
pip
.
Лицензия
Apache V2
ansible-galaxy install ansible/ansible-kubernetes-modules