kubernetes

Роль Ansible: Kubernetes

Тесты Ansible Galaxy Лицензия

Роль для установки менеджера контейнерного кластера Kubernetes.

Требования

  • Ansible Core >= 2.12

  • Линукс дистрибутив

    • Семейство Debian

      • Ubuntu

        • Bionic (18.04)
        • Focal (20.04)

Переменные роли

Следующие переменные изменят поведение этой роли (значения по умолчанию показаны ниже):

# Тип узла: определяет, какие функции будут установлены.
# - контроллер:
#     - kubectl
# - рабочий:
#     - kubelet
#     - kubernetes-cni
# - мастер:
#     - kubelet
#     - kubectl
#     - kubernetes-cni
# - администратор:
#     - kubelet
#     - kubectl
#     - kubeadm
#     - kubernetes-cni
kubernetes_node_type: worker

# ID APT ключа для репозитория Kubernetes (необязательно)
kubernetes_apt_key_id:

Пример Playbook

- hosts: servers
  roles:
    - role: gantsign.kubernetes
      kubernetes_node_type: worker

Автозаполнение и псевдонимы для Zsh

Используя Ansible

Рекомендуется использовать роль gantsign.antigen для включения поддержки Zsh для Kubernetes (это необходимо настраивать для каждого пользователя).

- hosts: servers
  roles:
    - role: gantsign.kubernetes
      kubernetes_node_type: worker

    - role: gantsign.antigen
      users:
        - username: example
          antigen_libraries:
            - name: oh-my-zsh
          antigen_bundles:
            # Используйте плагин Oh My Zsh для kubectl
            - name: kubectl
            # Используйте плагин GantSign для kubeadm
            - name: kubeadm
              url: gantsign/zsh-plugins
              location: kubeadm

Используя Antigen

Если вы предпочитаете использовать Antigen напрямую, добавьте следующее в вашу конфигурацию Antigen:

antigen use oh-my-zsh
antigen bundle kubectl
antigen bundle gantsign/zsh-plugins kubeadm

Важно: есть ошибка в текущей версии Antigen, которая мешает работе плагина kubectl. Рекомендуем использовать версию 2.0.2 Antigen, пока проблема не будет решена.

Ручная настройка

Чтобы вручную настроить автозаполнение в Zsh, добавьте следующее в ваш .zshrc:

eval "$(kubectl completion zsh)"
eval "$(kubeadm completion zsh)"

Больше ролей от GantSign

Вы можете найти больше ролей от GantSign на Ansible Galaxy.

Разработка и тестирование

Этот проект использует следующие инструменты:

  • Molecule для организации тестовых сценариев
  • Testinfra для тестирования изменений на удаленном сервере
  • pytest - тестовый фреймворк
  • Tox управляет виртуальными окружениями Python для линтинга и тестирования
  • pip-tools для управления зависимостями

Предоставляется контейнер для разработки Visual Studio Code для разработки и тестирования этой роли.

Лицензия

MIT

Информация об авторе

Джон Фриман

GantSign Ltd. Регистрационный номер 06109112 (зарегистрировано в Англии)

Установить
ansible-galaxy install gantsign/ansible-role-kubernetes
Лицензия
mit
Загрузки
4482
Владелец