6.12. ファクトキャッシング
Automation Controller は、Ansible Fact Cache プラグインを通じてホストごとにファクトを保存および取得できます。この動作はジョブテンプレートごとに設定できます。ファクトキャッシングはデフォルトでオフになっていますが、こちらを有効にして、実行中のジョブに関連するインベントリーの全ホストに対するファクトリクエストに対応できます。これにより、ホストファクトのインベントリー全体にアクセスしながら、--limit
を指定してジョブテンプレートを使用できるようになります。プラグインによってホストごとに適用されるグローバルタイムアウト設定 (秒単位) を指定するには、ナビゲーションパネルから
ファクトキャッシュ (use_fact_cache=True
) を使用するジョブを起動すると、各ホストの ansible_facts
はすべてコントローラーによってジョブのインベントリーに保存されます。
Automation Controller に同梱されている Ansible Fact Cache プラグインは、ファクトキャッシュが有効なジョブ (use_fact_cache=True
) で有効になります。
ファクトキャッシュが有効になっているジョブ (use_fact_cache=True
) が実行されると、Automation Controller はインベントリー内のホストの全レコードを復元します。ホストごとに現在保存されているファクトよりも更新時刻が新しいレコードはデータベース内で更新されます。
新しいファクトと変更されたファクトは、Automation Controller のログ機能を通じて記録されます。具体的には、system_tracking namespace
またはロガーに対してです。ロギングペイロードには次のフィールドが含まれます。
-
host_name
-
inventory_id
-
ansible_facts
ansible facts
は、Automation Controller インベントリー (inventory_id
) に含まれる host_name
の全 Ansible ファクトのディクショナリーです。
ホスト名にスラッシュ (/) が含まれている場合、ファクトキャッシュはそのホストでは機能しません。100 台のホストを含むインベントリーがあり、1 台のホストの名前に / が含まれている場合、残りの 99 台のホストは引き続きファクトを収集します。