运行 ansible --list-hosts all 可查看当前生效的全部受管主机;实际清单取决于配置优先级(ANSIBLE_CONFIG、ansible.cfg 中 inventory 路径)或命令行 -i 指定;支持组名、范围匹配、标签筛选;用 ansible all -m ping 可验证主机识别与连通性。

直接运行 ansible --list-hosts all 即可查看当前生效的全部受管主机。
确认当前使用的主机清单文件
Ansible 默认读取 /etc/ansible/hosts,但实际生效的清单取决于配置优先级或命令行指定:
- 若设置了环境变量
ANSIBLE_CONFIG或当前目录有ansible.cfg,需检查其中inventory = ...的路径 - 若命令中用了
-i /path/to/inventory,则以该文件为准 - 可快速验证当前加载的清单位置:
ansible-config dump | grep inventory
列出特定主机组的主机
除了 all,还可替换为任意已定义的组名:
ansible --list-hosts webservers-
ansible --list-hosts db[1:3](支持范围匹配) -
ansible --list-hosts 'tag_app:&tag_prod'(配合动态标签或变量筛选)
快速验证主机是否被识别
用 ping 模块测试连通性,同时隐式确认主机在清单中:
-
ansible all -m ping -c paramiko(强制使用 paramiko 连接,跳过 SSH 密钥检查问题) - 若某主机未出现在
--list-hosts输出中,但 IP 写在 inventory 里,可能是语法错误(如缩进、缺少换行、注释符号错用)
不复杂但容易忽略


















