kind
nephelaiio.kind
Это роль Ansible для установки и удаления кластеров Kind.
Переменные роли
С начальных значений роль создаст кластер из 4 узлов, используя последнюю версию kind и образ. Ниже приведен список переменных, которые можно настроить:
Параметр | По умолчанию | Тип | Обязательный | Описание |
---|---|---|---|---|
kind_release_tag | latest | строка | нет | Взят со страницы релизов Kind |
kind_image_tag | latest | строка | нет | Взят с docker hub |
kind_cluster_state | present | строка | нет | Создать ('present') или удалить ('absent') целевой кластер |
kind_cluster_name | kind | строка | нет | Имя кластера для создания/удаления |
kind_network_addr | 172.160.0/16 | строка | нет | Подсеть для docker сети kind |
kind_kubeconfig | ~/.kube/config | строка | нет | Путь для хранения kubeconfig файла для кластера |
kind_bin | неопределено | строка | нет | Путь для хранения бинарного файла kind, используемого для развертывания кластера |
kind_registry_deploy | false | булев | нет | Создать локальный контейнер реестра |
kind_registry_hostname | localhost | строка | localhost | Имя хоста для локального docker реестра |
kind_registry_cleanup | true | строка | нет | Удалить локальный контейнер реестра вместе с кластером |
kind_registry_port | 49153 | целое | нет | Порт хоста для локального docker реестра |
kind_proxy_deploy | false | булев | нет | Развернуть контейнер прокси реестра |
kind_proxy_hostname | localhost | строка | нет | Имя хоста для прокси реестра |
kind_proxy_cleanup | true | строка | нет | Добавить контейнер прокси реестра в конфигурацию кластера |
kind_nodes | 4 | целое | нет | Размер кластера |
Зависимости
Система
Для выполнения этого модуля на хосте требуются следующие системы:
- 64-битная операционная система Linux или Darwin
- бинарный файл kubectl доступен в пути
Эта роль совместима с архитектурами arm64 и darwin. Необходимо собрать данные перед запуском этой роли, чтобы она работала корректно.
Чтобы эта роль могла работать на устройствах с Apple Silicon, вы должны экспортировать переменную окружения DOCKER_HOST
в unix:///$HOME/.docker/run/docker.sock
. Значение по умолчанию unix:///var/run/docker.sock
недоступно на MacOS.
Ansible
Ниже перечислены Python-библиотеки, необходимые на хосте, выполняющем этот модуль:
- ansible.utils
Пример плейбука
---
- name: converge
hosts: all
roles:
- nephelaiio.kind
Тестирование
Пожалуйста, убедитесь, что в вашей среде установлен docker; затем протестируйте роль из корня проекта, используя следующие команды:
poetry install
poetry run molecule test
Лицензия
Этот проект лицензирован на условиях MIT License.
ansible-galaxy install nephelaiio/ansible-role-kind