P80 ファクト

Ansibleがplaybookを実行すると最初のタスク実行前に収集する情報のことで、他の変数と同じように振る舞う。
収集する情報には、CPUのアーキテクチャ、OS、IPアドレス、メモリ、ディスクの情報など、ホストに関するあらゆる詳細を問い合わせる。

内部実装としては、setupというモジュールにて行われており、Ansibleはファクトの収集時に自動的にこのモジュールを呼んでいるので、playbook中ではこのモジュールを呼ぶ必要はない。

Ansibleコマンドを用いれば、ファクトの内容を簡単に出力できる。
なお、ファクトの情報はansible_factsというキーを持つ辞書になっている。

ansible hostname setup -a 'filter=*'

ファクトを返すモジュールの場合、Ansibleがそれらの変数を自動的に登録してくれるので、わざわざregisterキーワードを指定する必要がない。
ex.)

- name: get ec2 facts
  ec2_facts:

-debug: var=absible_ec2_instance_id

[参考URL]
(GitHub:lorin/ansible-quickref facts)
ansible-quickref/facts.rst at master · lorin/ansible-quickref · GitHub

初めてのAnsible

初めてのAnsible