ajaykumar4.zerotier

Ansibleロール: ZeroTier

CI GitHub issues

このAnsibleロールは、ZeroTierリポジトリを追加し、システムのパッケージマネージャを使用してzerotierパッケージをインストールします。指定された変数に応じて、このロールは新しいメンバーを既存のZeroTierネットワークに追加および認証し、新しいメンバーにネットワークへの参加を指示することもできます。

より柔軟で一般的なZeroTierロールが必要な場合は、ajaykumar4.zerotierをチェックしてください。

要件

技術的には、このロールには要件はありません。変数が設定されていない状態で実行すると、インストールタスクのみが実行されます。次の変数がロールの動作に影響を与えます。

zerotier_network_id: 設定されると、ホストがこのネットワークに参加するよう指示されます。
zerotier_api_accesstoken: 設定されると、このロールはZeroTier APIを使用してメンバーの認証と設定を処理できます。

ロール変数

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

タイプ: 文字列
デフォルト値: ""
説明: ZeroTier APIと認証するために必要なアクセストークン。このトークンは、https://my.zerotier.com/ のアカウント設定から生成できます。省略すると、新しく参加したメンバーは自動的に認証されません。

zerotier_api_url

タイプ: 文字列
デフォルト値: https://my.zerotier.com
説明: ZeroTier APIが存在するURL。HTTPSプロトコルを使用する必要があります。

zerotier_api_delegate

タイプ: 文字列
デフォルト値: localhost
説明: ZeroTier APIコールのためのタスクを委任するオプション。これは、ホワイトリストされた管理サーバからのみAPIコールができる状況で便利です。

使用方法


まず、inventoryディレクトリ内のsampleディレクトリに基づいて新しいディレクトリを作成します:

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"

次に、上記で収集したZeroTier情報に一致するようにinventory/my-cluster/site.ymlを編集します。

例: プレイブック

    - 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.zerotier
ライセンス
gpl-3.0
ダウンロード
140
所有者