變數

  1. 合法變數名:可以是字母、數字或下底線,例如:
    foo_port
    foo7
    
  2. Magic 變數
    1. ansible 保留變數,user 不能設定。
    2. 變數包括使用的 python 版本、inventory 中的主機群組、roles 的目錄等。
    3. 常用的 magic 變數例如:
      ansible_version
      group_names
      groups
      hostvars
      inventory_hostname
      inventory_dir
      inventory_file
      playbook_dir
      role_name
      role_names
      role_path
      
    4. 執行 debug 模組取得變數內容,不指定變數 debug 模組只印出 "Hello world!"。
      [deyu1@kvm19 ansible]$ ansible dev -m debug 
      kvm11 | SUCCESS => {
          "msg": "Hello world!"
      }
      
  3. Facts 變數:
    1. Facts 透過訪問遠端主機取得相應的資訊。
    2. 例如:遠端主機 IP、作業系統、主機名稱。
    3. 變數都以 ansible_ 開頭。
    4. 執行 setup 模組時收集。
      [deyu1@kvm19 ansible]$ ansible dev -m setup | head
      kvm11 | SUCCESS => {
          "ansible_facts": {
              "ansible_all_ipv4_addresses": [
                  "192.168.122.11"
              ],
              "ansible_all_ipv6_addresses": [
                  "2001:ac18::5054:ff:fe36:6353",
                  "fe80::5054:ff:fe36:6353"
              ],
              "ansible_apparmor": {