首页 > 其他 > 详细

ansible用playbook实现定期监控各机器磁盘空间任务

时间:2016-11-25 17:26:39      阅读:1309      评论:0      收藏:0      [点我收藏+]

目标:用ansible定期监控各机器的磁盘空间状况 和进程运行状况

   1)配置playbook脚本,实现对磁盘空间 和 特定进程运行状态的每日检查;

   2)通过邮件插件,把检测结果发到ops邮箱;

一、playbook的配置实现

monitor_ansible.yaml

  1 ---
  2 - name: diskspace_mornitor
  3   hosts: local
  4   user: root
  5   gather_facts: no
  6   vars:
  7    path: /home/devops
  8 
  9   tasks:
 10   - name: check diskspace
 11     shell: "df -hP|awk ‘NR>1 && int($5) > 30‘"
 12     register: check_out
 13   - debug: msg="disk space {{check_out.stdout}}"

执行结果:

[root@localhost ansible_playbook]# ansible-playbook monitor_ansible.yaml 

PLAY [diskspace_mornitor] ******************************************************

TASK [check diskspace] *********************************************************
changed: [192.168.52.101]
changed: [192.168.52.102]

TASK [debug] *******************************************************************
ok: [192.168.52.102] => {
    "msg": "disk space /dev/sda1                497M  167M  330M  34% /boot"
}
ok: [192.168.52.101] => {
    "msg": "disk space /dev/sda1                497M  167M  330M  34% /boot"
}

PLAY RECAP *********************************************************************
192.168.52.101             : ok=2    changed=1    unreachable=0    failed=0   
192.168.52.102             : ok=2    changed=1    unreachable=0    failed=0   

 

 

-------------------------------------------------

附: 遇到的问题

1、用playbook配置tasks执行命令的返回值接收问题

    单独执行 ansible命令,结果直接输出到终端;但在playbook,默认结果只输出执行的最终成败 ok 或failed,要拿到详细的命令返回值需单独定义debug或handler来接收值。

    

 

ansible用playbook实现定期监控各机器磁盘空间任务

原文:http://www.cnblogs.com/mousean/p/6102105.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!