kazauwa.headscale
HeadscaleのAnsibleロール
Linux上でHeadscaleをインストールおよび管理するロールです。
必要条件
- Ansible >= 7
インストール
ansible-galaxy install kazauwa.headscale
ロール変数
headscale_version- デフォルト:
0.22.3 - 説明: インストールするHeadscaleのバージョン。利用可能なバージョンのリストは公式リリースページで確認できます。デフォルトは最新の利用可能なバージョンです。
- デフォルト:
headscale_arch- デフォルト:
amd64 - 説明: headscaleバイナリのターゲットアーキテクチャ。
- デフォルト:
headscale_os- デフォルト:
linux - 説明: headscaleバイナリのターゲットOS。
- デフォルト:
headscale_user_name- デフォルト:
headscale - 説明: Headscaleバイナリを実行するためのサービスユーザーの名前。
- デフォルト:
headscale_user_group- デフォルト:
headscale - 説明: Headscaleバイナリを実行するためのサービスユーザーのグループ。
- デフォルト:
headscale_user_uid- デフォルト:
800 - 説明: Headscaleバイナリを実行するためのサービスユーザーのUID。
- デフォルト:
headscale_user_gid- デフォルト:
800 - 説明: Headscaleバイナリを実行するためのサービスユーザーのGID。
- デフォルト:
headscale_binary_path- デフォルト:
/usr/local/bin/headscale - 説明: headscaleバイナリをインストールするパス。
- デフォルト:
headscale_config_dir- デフォルト:
/etc/headscale - 説明: headscaleの設定ファイルのパス。
- デフォルト:
headscale_var_data_dir- デフォルト:
/var/lib/headscale - 説明: headscaleデータのパス。
- デフォルト:
headscale_pid_dir- デフォルト:
/var/run/headscale - 説明: headscaleのソケットのパス。
- デフォルト:
headscale_config- デフォルト:
{} - 説明: yaml形式のheadscale設定。初めにデフォルト設定を参考にすると良いでしょう。
- デフォルト:
headscale_config_template- デフォルト:
"" - 説明: Jinja2形式のheadscale設定テンプレートのパス。存在する場合、
headscale_configを上書きします。
- デフォルト:
headscale_acl- デフォルト:
{} - 説明: yaml形式のACLポリシー。この機能の使い方について、ドキュメントを必ず確認してください。
- デフォルト:
headscale_users- デフォルト:
[] - 説明: 作成するユーザーのリスト。例: tagOwnersと一緒に使用するためのものです。
- デフォルト:
headscale_enable_routes- デフォルト:
[] - 説明: 有効にする広告ルートを持つノードのリスト。headscaleノードの整数ID、カンマ区切りのルートのリスト、および実行中に出力するオプションのコメントを受け入れます。autoApproversが設定されていないときに使用します。
- 例:
{'id': 14, 'routes': '10.0.0.0/24,10.2.3.4/32', 'comment': 'Gateway to prod'}
- デフォルト:
headscale_exit_nodes- デフォルト:
[] - 説明: 出口ノードとして機能するノードのリスト。headscaleノードの整数IDと実行中に出力するオプションのコメントを受け入れます。autoApproversが設定されていないときに使用します。
- 例:
{'id': 14, 'comment': 'eu-fra-01'}
- デフォルト:
依存関係
なし。
例プレイブック
- hosts: all
roles:
- kazauwa.headscale
vars:
headscale_version: '0.22.3'
ライセンス
MIT
