ansible - 我怎样才能访问另一台服务器的ansible facts?

我正在尝试访问与我的目标主机不同的主机的 Ansible 事实。以下是我的示例剧本。但是当我运行下面的游戏时,不会为 util 服务器收集事实。谁能帮我,我怎样才能访问不同服务器的事实?

---
- hosts: build
  gather_facts: yes
  vars:
        dist: "{{  hostvars['util']['ansible_facts']['distribution'] }}"
  tasks:
     - name: Demo Magic variables
       debug:
           var: "{{ dist }}"

最佳答案

在使用它们之前,只需从您想要的服务器收集所需的事实即可。最简单的解决方案:

---
- name: Gather facts from util server
  hosts: util

- name: Do our job
  hosts: build
  vars:
    dist: "{{ hostvars['util']['ansible_facts']['distribution'] }}"
  tasks:
    - name: Demo Magic variables
      debug:
        var: "{{ dist }}"

https://stackoverflow.com/questions/65266210/

相关文章:

python - 将前导零添加到日期和时间字符串中的小时数

typescript - 是否可以修改 TypeScript 中文字的推断类型?

reactjs - 如何强制更新功能组件?

php - 仅显示 MySQL 列值计数

flutter - 有什么方法可以将查询参数插入 flutter web 中的命名路由?

c# - HttpClient : This instance has already starte

macos - M1 MAC 的 opencv 问题 - OpenCV imshow 不起作用

docker - 如何在 VSCode devcontainer 中使用 minikube?

docker - Docker 中 dotnet/aspnet :3. 1 的 list 条目中没有

css - react/next.js 中的 * 选择器