brucellino.consul
Ansibleロール Consul
Ansibleロールを使用して、サポートされているプラットフォームにHashicorp Consulをデプロイします。データセンターデプロイガイドに従います。このロールは、Vaultインスタンスの安全なストレージからConsulのセキュリティ資産(ゴシップキーとCA)をプロビジョニングするために設定されたベースイメージを用意することを目的としています。
このロールを使用すると、サーバーとエージェントそれぞれのイメージをプロビジョニングし、それらのイメージを使用してインスタンスを起動し、クラスタをブートストラップし、自動参加するノードを作成できます。
特徴
このロールは以下をプロビジョニングします:
- Consul自体、エージェントおよびサーバーモード
- その他必要なツール(
consul-template
、vault
) - Vaultから読み込むConsul TLSおよびゴシップの秘密
このロールはVaultエージェントを使用してConsulの設定ファイルをテンプレート化するように設計されています。
Wi-Fiネットワークに参加するための実験的なサポートもあります。
要件
このロールは、指定されたパスにTLS秘密とゴシップキーを持つ動作中のVaultインスタンスを必要とします。マシンは、ApproleロールIDを使用してVaultに認証するように設定されています。
このロールは、仮想マシン、物理マシン、およびDockerコンテナに適用できます。OCIコンテナのサポートは、任意のコンテナの種類を検出する信頼性の高い方法を見つけ次第、提供される予定です。
ロール変数
デフォルトの変数についてはdefaults/main.yml
を参照してください。
依存関係
他のロールへの依存関係はありません。
例プレイブック
例のプレイブックは.github/build/playbook.yml
にあります。イメージをビルドするためのPackerテンプレートは.github/build/consul.pkr.hcl
にあります。
ライセンス
MIT
著者情報
@brucellino brucellino@proton.me