zerotier

Ansible Роль: ZeroTier

CI GitHub issues

Эта Ansible роль добавляет репозиторий ZeroTier и устанавливает пакет zerotier с помощью менеджера пакетов вашей системы. В зависимости от заданных переменных, эта роль также может добавлять и авторизовать новых участников в (существующие) сети ZeroTier и сообщать новому участнику о необходимости присоединиться к сети.

Если вам нужна более гибкая и универсальная роль для ZeroTier, ознакомьтесь с ajaykumar4.zerotier.

Требования

Эта роль технически не имеет требований. Если она запускается без заданных переменных, будут выполнены только задачи установки. Следующие переменные влияют на поведение роли:

zerotier_network_id: когда задано, хостам сообщают, что нужно присоединиться к этой сети.
zerotier_api_accesstoken: когда задано, роль может обрабатывать аутентификацию участников и их настройку с помощью API ZeroTier.

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

zerotier_network_id

Тип: строка
Значение по умолчанию:
Описание: 16-символьный ID сети, к которой должны присоединиться новые участники. Узел не присоединится ни к какой сети, если это значение пропущено.

zerotier_member_register_short_hostname

Тип: логическое
Значение по умолчанию: false
Описание: По умолчанию используется inventory_hostname для обозначения участника в сети. Если установлено значение true, вместо этого будет использовано inventory_hostname_short.

zerotier_member_ip_assignments

Тип: список
Значение по умолчанию: []
Описание: Список IP-адресов, которые будут назначены этому участнику. Участнику будет автоматически назначен адрес в сети, если это значение не указано.

zerotier_member_description

Тип: строка
Значение по умолчанию: ""
Описание: Необязательное описание для участника.

zerotier_api_accesstoken

Тип: строка
Значение по умолчанию: ""
Описание: Токен доступа, необходимый для авторизации с помощью API ZeroTier. Вы можете сгенерировать его в настройках вашей учетной записи на https://my.zerotier.com/. Если оно пропущено, то новый участник не будет автоматически авторизован.

zerotier_api_url

Тип: строка
Значение по умолчанию: https://my.zerotier.com
Описание: URL, по которому располагается API ZeroTier. Должен использовать протокол HTTPS.

zerotier_api_delegate

Тип: строка
Значение по умолчанию: localhost
Описание: Опция для делегирования задач для вызовов API ZeroTier. Это полезно в ситуации, когда API вызовы могут выполняться только с управляемого сервера с включением в белый список, например.

Использование


Сначала создайте новый каталог на основе каталога sample внутри каталога inventory:

cp -R inventory/sample inventory/my-cluster

Затем отредактируйте inventory/my-cluster/hosts.ini, чтобы он соответствовал собранной выше информации о системе.

Пример Инвентаря

    [servers]
    pi-master
    pi-worker01
    jetson-worker01

    [master]
    pi-master

    [nodes]
    pi-worker01
    jetson-worker01

    [master:vars]
    zerotier_member_description='Kubernetes Pi Master Node'

    [nodes:vars]
    zerotier_member_description='Kubernetes Pi Workers Node'
    [servers]
    pi-master hostname=pi-master ansible_host=192.168.0.82 ansible_user=pi ansible_sudo_pass=password zerotier_member_description="Kubernetes Pi Master Node"
    pi-worker01 ansible_port=22 hostname=pi-worker01 ansible_host=192.168.0.176 ansible_user=pi ansible_sudo_pass=password zerotier_member_description="Kubernetes Pi Worker01 Node"
    jetson-worker01 ansible_port=22 hostname=jetson-worker01 ansible_host=192.168.0.227 ansible_user=jetson ansible_sudo_pass=password zerotier_member_description="Kubernetes Jetson Worker01 Node"

Затем отредактируйте inventory/my-cluster/site.yml, чтобы он соответствовал собранной выше информации о ZeroTier.

Пример Плейбука

    - hosts: servers
      vars:
         zerotier_network_id: < network id >
         zerotier_api_accesstoken: < accesstoken >
         zerotier_register_short_hostname: true

      roles:
         - ajaykumar4.zerotier

Начните настройку кластера, используя следующую команду:

ansible-playbook inventory/my-cluster/playbook.yml -i inventory/my-cluster/hosts.ini
О проекте

Install and add new members to a zerotier network for x86_64 and ARM-based computers.

Установить
ansible-galaxy install AjayKumar4/ansible-role-zerotier
Лицензия
gpl-3.0
Загрузки
128
Владелец