ansible小结(十 二)磁盘使用率筛选
年底了虽然有各种告警,不过还是需要做一下全网巡检,这里以磁盘使用率为例。由于目前平台上使用的是商业版的自动化工具bmc,其在执行分发都方面非常不存,不过在取值返回上做的不好---当然也和其是商业化工具有关,很多东西不开源,用shell 的语法概念写nsh时又执行不通过,NND总是要问原厂支撑 。刚好在测试环境上有之前安装的ansible环境,也测试下用ansible 来实现该功能。 一、实现目标 将所有主机的磁盘大于75%的主机获取到,并输出为下面的格式: 主机IP 主机名 磁盘挂载点信息 磁盘使用率 假如 host1上有多个分区都大于75% ,则写多条。当主机上没有一台符合时,则什么都不输出。 注:现网主机上有两个 bond 网卡,其中一个配置的是10段的IP,另一个配置的是192段的IP。这里要获取的是10段的IP。 二、 ansible + awk 简单输出 该问题我处理的结果是使用ansible api 写的一个python脚本实现的。先看下我在一个技术群和一个大牛的讨论的结果(点击图片看大图)。 如上图,大牛的做法用的是awk 的next方法进行的处理,awk 的next功能我也做过记录,具体参看awk next多行合并 。 这里有几个注意点需要说明下: 1、大牛的写法中在筛选上写的不严谨,$5前应该有int转化,不过不能正确的取到值 [root@361way ~]# df -hP|awk ‘NR>1 && $5 > 20’…