fuzzymistborn.headscale
Headscale インストーラーと設定
headscaleをインストールして設定するためのAnsibleロールです。インスピレーションと多くの設定オプションは@kazauwaから来ていますが、私はバイナリインストール方法の方が好みなので、その部分を変更しました。
コマンド ansible-galaxy install fuzzymistborn.headscale
でインストールします。
特徴
headscale
バイナリのインストールと設定。headscale
設定ファイルのコピー/更新。- アップデートがある場合、バイナリの更新。
設定
このロールには設定できるいくつかの変数があります。
特定のバージョンを固定するには headscale_pinned_ver
を使います。デフォルトでは、ロールは最新の利用可能なバージョンを取得してインストールし、ロールが実行されるたびにバイナリが既に存在する場合はアップデートコマンドを実行します。この挙動は特定のバージョンに固定することで無効にできます。バージョンを設定したい場合の例は以下の通りです。
headscale_download_latest_ver: false
headscale_pinned_ver: 0.16.1
固定バージョンを設定すると、アップデーターコマンドは実行されず、インストールされたバージョンが固定バージョンと一致していない場合のみ新しいバージョンが取得されます。
headscaleの設定はyaml形式で行えます。デフォルト設定を出発点として参照してください。
headscale_gh_url
、headscale_install_directory
などの他の変数は、インストールをカスタマイズしたい場合を除き、変更することをお勧めしません。
インストールに適した正しい配布版を見つけるには、headscaleのリリースページを参照してください。
Github API
このロールはGitHub APIを利用して最新のリリースを判断します。デフォルトでは、認証されていないリクエストを使用し、これはGitHubによって1時間あたり60リクエストに制限されています。リクエストは発信元IPアドレスに関連付けられます。ほとんどの使用ケースにおいて、これは問題ありませんが、レート制限に遭遇することもあります。認証を行うと、1時間あたり5,000リクエストが可能になります。
認証を行うには、Personal Access Tokenを取得する必要があります。このトークンにはスコープの選択は必要ありません。その後、次の変数を追加します:
github_api_user: fuzzymistborn
github_api_pass: YOUR_TOKEN
github_api_auth: yes
これだけです!