ansible批量筛选出指定操作系统的主机列表

查看主机操作系统的shell脚本getOS.sh

bash 复制代码
#!/bin/bash

# 获取操作系统信息
os_info=$(hostnamectl | grep 'Operating System' | awk -F ':' '{print $NF}')

# 检查是否包含"centos"
if echo "$os_info" | grep -E '*centos*' > /dev/null; then
    # 打印主机IP
    echo "主机IP:$(hostname -I | awk '{print $1}')"
fi

编辑hosts文件,保存待查看的主机列表

bash 复制代码
[sc] 
10.1.1.[1:100] ansible_ssh_user=主机用户 ansible_ssh_pass=主机用户密码

用ansible进行传输脚本和执行

bash 复制代码
传输到各台主机
ansible -i ./hosts all -m copy -a "src=/etc/ansible/scripts/getOS.sh dest=/tmp"

执行脚本
ansible -i ./hosts all -m shell -a "sh /tmp/getOS.sh" >all.txt

cat all.txt|grep "主机"
相关推荐
小安运维日记1 天前
RHCA - DO374 | Day01:使用红帽Ansible自动化平台开发剧本
运维·服务器·云原生·自动化·云计算·ansible
BullSmall1 天前
Ansible三大Web界面方案全解析
运维·ansible
Warren982 天前
复习MySQL
数据库·windows·tcp/ip·mysql·ubuntu·ssh·ansible
早睡冠军候选人5 天前
Ansible学习----Ansible Playbook
运维·服务器·学习·云原生·容器·ansible
yourkin6669 天前
Ansible
ansible
Ribou9 天前
ansible 自动安装软件,实现列表选择软件的方法
ansible
文静小土豆9 天前
Ansible 自动化部署K8S1.34.1
kubernetes·自动化·ansible
K_i13410 天前
Helm 与 Ansible 深度对比解析文档
自动化·ansible
zmjjdank1ng11 天前
什么是Ansible 清单
服务器·自动化·ansible
Yyyy48211 天前
ansible role配apt源
ansible