ajaykumar4.zerotier

Rola Ansible: ZeroTier

CI GitHub issues

Ta rola Ansible dodaje repozytorium ZeroTier i instaluje pakiet zerotier za pomocą menedżera pakietów Twojego systemu. W zależności od podanych zmiennych, rola ta może również dodać i autoryzować nowych członków w istniejących sieciach ZeroTier oraz poprosić nowego członka o dołączenie do sieci.

Jeśli potrzebujesz bardziej elastycznej i ogólnej roli dla ZeroTier, sprawdź ajaykumar4.zerotier.

Wymagania

Technicznie ta rola nie ma wymagań. Jeśli zostanie uruchomiona bez ustawionych zmiennych, wykona tylko zadania instalacji. Następujące zmienne wpływają na zachowanie roli:

zerotier_network_id: po ustawieniu, hosty dołączają do tej sieci.
zerotier_api_accesstoken: po ustawieniu, rola może zarządzać autoryzacją i konfiguracją członków przy użyciu API ZeroTier.

Zmienne Roli

zerotier_network_id

Typ: string
Wartość domyślna:
Opis: 16-znakowy identyfikator sieci, do której mają dołączyć nowi członkowie. Węzeł nie dołączy do żadnej sieci, jeśli zostanie pominięty.

zerotier_member_register_short_hostname

Typ: boolean
Wartość domyślna: false
Opis: Domyślnie do nazwania członka w sieci używane jest inventory_hostname. Jeśli ustawione na true, zostanie użyte inventory_hostname_short.

zerotier_member_ip_assignments

Typ: lista
Wartość domyślna: []
Opis: Lista adresów IP do przypisania temu członku. Członek otrzyma automatycznie adres w sieci, jeśli to zostanie pominięte.

zerotier_member_description

Typ: string
Wartość domyślna: ""
Opis: Opcjonalny opis dla członka.

zerotier_api_accesstoken

Typ: string
Wartość domyślna: ""
Opis: Token dostępu potrzebny do autoryzacji z API ZeroTier. Możesz go wygenerować w ustawieniach swojego konta pod adresem https://my.zerotier.com/. Jeśli zostanie pominięty, nowo dołączony członek nie będzie automatycznie autoryzowany.

zerotier_api_url

Typ: string
Wartość domyślna: https://my.zerotier.com
Opis: URL, pod którym znajduje się API Zerotier. Musi używać protokołu HTTPS.

zerotier_api_delegate

Typ: string
Wartość domyślna: localhost
Opis: Opcja do delegowania zadań dla wywołań API Zerotier. Jest to przydatne w sytuacji, gdy wywołania API mogą być dokonywane tylko z białej listy serwera zarządzającego.

Użycie


Najpierw stwórz nowy katalog na podstawie katalogu sample w katalogu inventory:

cp -R inventory/sample inventory/my-cluster

Następnie edytuj inventory/my-cluster/hosts.ini, aby dopasować informacje o systemie.

Przykładowy Inwentarz

    [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"

Następnie edytuj inventory/my-cluster/site.yml zgodnie z informacjami o zerotier.

Przykładowy Playbook

    - hosts: servers
      vars:
         zerotier_network_id: < identyfikator sieci >
         zerotier_api_accesstoken: < token dostępu >
         zerotier_register_short_hostname: true

      roles:
         - ajaykumar4.zerotier

Rozpocznij konfigurację klastra, używając następującego polecenia:

ansible-playbook inventory/my-cluster/playbook.yml -i inventory/my-cluster/hosts.ini
O projekcie

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

Zainstaluj
ansible-galaxy install ajaykumar4.zerotier
Licencja
gpl-3.0
Pobrania
140
Właściciel