ansible巡检脚本

1.编写ansibleyaml

bash 复制代码
- name: xunjian
  hosts: ddd
  tasks:
    - name: 运行脚本取资源使用率值并追加结果,可以自定义
      shell: |
        CPU=$(top -bn1 | sed -n '3p' | awk '{print $2+$4}' | awk '{printf("%s%%\n",$1)}')
        MEM=$(free -m | awk 'NR==2{printf" %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }')
        DISK=$(df -hT | grep -w "/" | awk '{print $6}')
        IP=$(ifconfig |grep 192.168|awk '{print $2}')        
        echo "$IP $HOSTNAME $CPU $MEM $DISK" > /tmp/cpumemdisk-$(hostname).txt 
      args:
        executable: /bin/bash
    - name: 获取主机名
      shell: hostname
      register: hostname_result
      changed_when: false

    - name: 收集监控文件
      fetch:
        src: "/tmp/cpumemdisk-{{ hostname_result.stdout }}.txt"
        dest: "/tmp/collected/"
        flat: yes

- name: 本地合并文件
  hosts: localhost
  tasks:
    - name: 创建合并目录
      file:
        path: "/tmp/merged_monitor"
        state: directory

    - name: 执行合并
      shell: |
        find /tmp/collected -name '*.txt' -exec cat {} \; > /tmp/merged_monitor/$(date '+%Y-%m-%d-%H')-combined.txt

2、再创建几个文件,然后运行脚本,注意修改主机组

bash 复制代码
mkdir /tmp/merged_monitor -p 
mkdir /tmp/collected_monitor -p
mkdir /tmp/ merged_monitor -p

ansible-playbook 1.yaml 

cat /tmp/merged_monitor/$(date '+%Y-%m-%d-%H')-combined.txt
相关推荐
landonVM2 分钟前
Linux VPS 怎么设置密钥登录
linux·运维·服务器
RisunJan3 分钟前
Linux命令-ln(在文件或目录之间创建链接)
linux·运维·服务器
China_Yanhy4 分钟前
我的区块链运维日记 · 第 13 日:跨链惊魂 —— Layer 2 的“快”与“慢”
运维·区块链
无垠的广袤4 分钟前
【Arduino UNO Q】 边缘 AI 视觉部署方案:二维码识别
linux·人工智能·python·opencv
花间相见5 分钟前
【Linux】—— FTP服务搭建与使用(Ubuntu实操版,适配办公内网)
linux·运维·ubuntu
梁洪飞8 分钟前
解决摄像头驱动起不来的情况
linux·arm开发·图像处理·嵌入式硬件·arm
YYYing.11 分钟前
【Linux/C++进阶篇 (一)】man手册、gdb调试、静态库与动态库
linux·运维·c++
pingzhuyan13 分钟前
linux运维-KylinV10的aarch64架构-docker微服务运维部署(全篇)
linux·docker·jdk·rocketmq·kylin·aarch64
前方一片光明21 分钟前
Linux——麒麟v10国产化系统升级openssh到10.0版本全过程
linux·运维·服务器
东湖山上22 分钟前
解决Cursor 远程ssh连不上服务器的问题
运维·服务器·ssh