如何在Ansible执行命令时隐藏不可达主机?
只显示Ansible可用主机的执行结果
你可以通过以下几种方式实现只查看可达主机的命令执行输出:
1. 执行命令时添加--skip-unreachable参数
这是最直接的官方解决方案,添加该参数后,Ansible会直接跳过所有不可达主机,不输出它们的错误信息:
ansible all -m shell -a "df -h" --skip-unreachable
2. 用输出过滤工具临时筛选结果
如果不想修改命令参数,也可以通过grep反向过滤掉包含不可达标识的内容:
ansible all -m shell -a "df -h" | grep -v "UNREACHABLE"
3. 全局配置默认跳过不可达主机(可选)
如果需要每次执行Ansible命令都默认跳过不可达主机,可以修改Ansible配置文件(/etc/ansible/ansible.cfg或当前工作目录下的ansible.cfg),在[defaults]段落添加:
skip_unreachable = True
注意:该配置会对所有Ansible执行任务生效,需根据实际需求谨慎修改。
内容的提问来源于stack exchange,提问作者APSYHEA
相关产品推荐
相关产品推荐

