第2章 Ansible ルールブック
Event-Driven Ansible Controller は、Event-Driven Ansible による自動化を実行するインターフェイスを提供します。Ansible ルールブックは、Event-Driven Ansible による自動化のフレームワークを提供します。Ansible ルールブックは、基本的にルールセットのコレクションです。ルールセットは 1 つ以上のソース、ルール、条件で構成されます。
2.1. 意思決定環境
Event-Driven Ansible には、デフォルトで ansible.eda コレクションが含まれています。このコレクションには、サンプルソース、イベントフィルター、ルールブックが含まれています。すべてのコレクション、Ansible ルールブック、およびそれらの依存関係は、意思決定環境を使用します。意思決定環境は、Podman または Kubernetes で実行できるイメージです。
意思決定環境では、ソース (通常、Python コード) は ansible-collections を通じて配布されます。外部イベントは、ルールブックに挿入されて処理されます。ルールブックは次の内容で構成されます。
- Python インタープリター
- Drools ルールエンジン用の Java ランタイム環境
- ansible-rulebook Python パッケージ
- ansible.eda コレクション
ベースとなる意思決定環境を使用し、追加のコレクションとコレクションの依存関係を使用することで、独自にカスタマイズした意思決定環境を構築できます。Dockerfile を使用して意思決定環境を構築することもできます。また、必要に応じて CA 証明書をイメージにデプロイできます。