ansible 推送脚本巡检闽政通
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,推送的需要的机子多最好使用数据库,机子少就写死变量了,在被巡检主机上新建一个普通用户,被巡检主机免安装,增加ansible-hosts新加巡检主机,多个租户可以用docker隔离,扩展可以用yml r
千家信息网最后更新 2024年11月30日ansible 推送脚本巡检闽政通
推送的需要的机子多最好使用数据库,机子少就写死变量了,在被巡检主机上新建一个普通用户,被巡检主机免安装,增加ansible-hosts新加巡检主机,多个租户可以用docker隔离,
扩展可以用yml role代码复用配上数据库就很方便了,现在更新巡检脚本只要更新ansible-server上的脚本,增加新功能。
这里需要被巡检主机免安装就没用数据库记录,yml要用copy模块后用sh执行脚本,用script模块会找不到执行路径
还写了一套用于监控告警的脚本,还在继续写。。。
#!/bin/bash#yejunhai #2020-2-27#巡检并发连接数 发送企业微信告警 定期巡检通知#告警阀值可以自定义#定义时间cur_time(){ date "+%Y-%m-%d %H:%M:%S"}wx(){#生成告警脚本 发送到企业微信sh_name=$0cat > $sh_name.json <<-EOFcurl '填写微信机器人Webhook地址:' \ -H 'Content-Type: application/json' \ -d ' { "msgtype": "text", "text": { "content": "$1", "mentioned_mobile_list":["$2"] } }'EOF#发送告警脚本,发送成功后清空脚本sh $sh_name.json && echo "Send successfully" > $sh_name.json}cpu_usage(){ top -n 1 -d 1|awk '/%Cpu/{printf("%.2f%\n",(100-$8))}'}#获取本机IP ip=`ifconfig eth0|awk '/inet /{print$2}'`#监控端口 并发数告警阀值 获取当前并发数port=8303#并发数告警阀值 max_number=2000#获取当前并发数number=`netstat -ant|grep -w "$ip:$port"|grep "ESTABLISHED"|wc -l`mem=`free|awk '/Mem:/{printf("%.2f%\n",($2-$4)/$2*100)}'`#磁盘读:read=`iostat|awk '/.da/{print$3 "kb/s"}'`#磁盘写:write=`iostat|awk '/.da/{print$4 "kb/s"}'`#IO利用率:io=`iostat -x|awk '/.da/{print$14"%"}'`ORACLE_BASE=/u01/app/oracle; export ORACLE_BASEORACLE_HOME=$ORACLE_BASE/product/12.1.0/client_1; export ORACLE_HOMEPATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/binexport PATH#数据库用tnsping 因为有4台rac的VIP,2个实例,这边没用数据库只能用字典了,还是懒declare -A instancesinstances=([192.168.1.1]="a" [192.168.1.2]="a" [192.168.56.195]="b" [192.168.56.196]="b")for db_ip in $(echo ${!instances[*]})do status=`tnsping $db_ip:1521/${instances[$db_ip]}|grep "OK"|wc -l` if [ "$status" -eq 0 ];then database="$db_ip:1521/${instances[$db_ip]} Error" break elif [ "$status" -eq 1 ];then database="Successfully" fidone#后续需要多租户使用在改造成函数调用process=tomcatprocess_status=`ps -aux|grep "$process"|grep -v "grep --color=auto $process"|wc -l`if [ "$process_status" -eq 0 ];then tomcat_process="Disabled"else tomcat_process="Enable"fifor disk_usage in `df -P|awk 'NR>=2{print$5}'|tr -d "%"`do if [ "$disk_usage" -ge 90 ];then disk_status="\n磁盘剩余不足 `df -h|grep -w $disk_usage`" fidonewx "$(cur_time) 巡检主机 \n$(hostname) $ip\n端口: $port 并发连接数: $number \nCPU利用率: $(cpu_usage) \n内存利用率: $mem \nIO利用率: $io \n数据库连接:$database\ntomcat进程:$tomcat_process $disk_status"
- hosts: linux remote_user: centos gather_facts: false tasks: - name: copy script remote host copy: src=/root/check dest=/home/centos/check - name: execution script command: sh /home/centos/check
数据
数据库
脚本
主机
利用率
磁盘
企业
机子
模块
租户
端口
更新
监控
推送
普通
代码
内存
函数
变量
多个
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库查询 字符串模糊匹配
重庆市网络安全技能
物联网网络安全要求有哪些
河北安创网络技术有限公司
新疆软件开发团队
廉价高速的网络技术是
大学导航软件开发
微星z390能安装服务器硬盘吗
锦标赛服务器怎么进竞技场
抖音拓客系统软件开发
面试软件开发薪资待遇
斯伦贝谢软件开发待遇
数据库添加管理权限
网络安全手抄报 第一名
西双版纳服务器回收多少钱
web服务器 推荐
如何创建db2数据库实例
大航海之路iOS服务器
软件开发sa什么职位
魔兽世界不被踢出服务器
服务器cpu选型
期权交易软件开发
毕业后能学软件开发吗
夜狼服务器错误
机器人软件开发薪资
衡水金卷服务器
线上与线下数据库技术对接
计算机网络技术2020版
卧龙吟服务器加载失败
新时代网络安全宣传片