hugoprudente.envoyproxy
Ansible Envoy Proxy ロール
Envoy Proxy は、クラウドネイティブアプリケーションのために開発された強力なエッジおよびサービスプロキシです。これはCNCFで卒業したプロジェクトで、観測のためのJaggerや、メトリックおよびインサイトのためのPrometheusなどとのネイティブ統合があります。
このロールの目的は、ユーザーがEnvoy Proxyの基本をVMやベアメタルにデプロイし、構成する手助けをすることです。これは、従来のプロキシやロードバランサーツールの代替になります。
Envoy Proxyの設定については、追加の複雑性があるため、ここではカバーされません。Ansible Collections / モジュールが必要になります。
要件
Ansible
- このロールは、メンテナンスされているバージョンのAnsibleで開発・テストされています。後方互換性は保証されていません。
- Ansibleのインストール方法については、Ansibleのウェブサイトで確認できます。
Molecule
- Molecule
3.x
は、ロールのさまざまな機能をテストするために使用されます。 - Moleculeのインストール方法については、Moleculeのウェブサイトで確認できます。
Ansible Galaxy
ansible-galaxy install hugoprudente.envoyproxy
を使用して、システムに最新の安定リリースバージョンをインストールします。
Git
git clone https://github.com/hugoprudente/ansible-role-envoyproxy.git hugoprudente.envoyproxy
を roles/ ディレクトリ内で実行して、GitHubからロールの最新のエッジコミットを取得します。
プラットフォーム
Envoy Proxyロールは以下のプラットフォームをサポートしています。
Envoy Proxy
Envoy Proxyロールは、Envoy Proxyがサポートするすべてのプラットフォームに対応することを目指しています。
現時点では以下のプラットフォームでテストしています:
CentOS:
- 8
Ubuntu:
- focal (20.04)
Debian:
- duster (10)
ロール変数
このロールには複数の変数があります。これらの変数の説明とデフォルト値は、以下の**defaults/main/
**フォルダの以下のファイルで確認できます。
名称 | 説明 |
---|---|
main.yml |
Envoy Proxyインストール変数 |
systemd.yml |
Systemdインストール変数 |
logrotate.yml |
Logrotateインストール変数 |
cluster.yml |
クラスターインストール変数 |
同様に、プリセット変数の説明とデフォルト値は、以下の**vars/
**フォルダの以下のファイルで確認できます。
名称 | 説明 |
---|---|
main.yml |
サポートされているEnvoy Proxyプラットフォームとモジュールのリスト |
例プレイブック
動作するプレイブックの例は、以下の**molecule/
**フォルダの以下のファイルで確認できます。
名称 | 説明 |
---|---|
default/converge.yml |
デフォルトバージョンのEnvoy Proxyをインストール |
container/converge.yml |
コンテナ化されたEnvoy Proxyをインストール |
source/converge.yml |
ソースからビルドしてEnvoy Proxyをインストール |
cluster/converge.yml |
クラスタバージョンのEnvoy Proxyをインストール (プライマリ/プライマリ) および (アクティブ/バックアップ) |
custom/converge.yml |
特定のEnvoy Proxyをインストールし、ログローテートとsystemdをカスタマイズ |
ライセンス
著者情報
Role for create and manage Envoy Proxy
ansible-galaxy install hugoprudente.envoyproxy