Ansible:服务器巡检_2、Linux 服务器巡检脚本
2021/10/13 7:14:59
本文主要是介绍Ansible:服务器巡检_2、Linux 服务器巡检脚本,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
规划中平台是具备一定的通用性和可扩展性,所以在写脚本时引入了参数,以便实现代码的复用
**1、Linux 基础信息巡检**点击查看代码
sys_check(){ echo "主机名称:`hostname`" #echo "操作系统:`cat /etc/*-release|awk 'END{print}'`" echo "操作系统:`cat /etc/*-release|awk 'END{print}'|cut -d \= -f 2|sed 's/\"//g'`" echo "系统内核:`uname -r`" #echo "SELinux:`/usr/sbin/sestatus | grep 'SELinux status:' | awk '{pri nt $3}'`" echo "系统语言:`echo $LANG |awk -F "." '{print $1}'`" echo "系统编码:`echo $LANG |awk -F "." '{print $2}'`" echo "当前时间:`date +%F_%T`" echo "启动时间:`who -b | awk '{print $3,$4}'`" echo "运行时间:`uptime | awk '{print $3 " " $4}' | sed 's/,//g'`" } cpu_Info(){ echo "CPU架构:`uname -m`" echo "CPU型号:`cat /proc/cpuinfo | grep "model name" | uniq|awk -F":" ' {print $2}'`" # echo "CPU数量:`cat /proc/cpuinfo | grep "physical id"|sort|uniq|wc -l` 颗" # echo "CPU核心:`cat /proc/cpuinfo | grep "cpu cores"|sort|uniq|awk -F " :" '{print $2}'` 核" echo "CPU线程:`cat /proc/cpuinfo | grep "processor" | awk '{print $3}' | sort | uniq | wc -l` 线程" } cpu_Check(){ Check_Res=`sar -u 1 5 |grep Average` echo "CPU用户占比:`echo $Check_Res|awk '{printf $3}'`%" echo "CPU内核占比:`echo $Check_Res|awk '{printf $5}'`%" echo "ResCheck_CPURate:`echo $Check_Res|awk '{printf $3+$5}'`%" echo "CPU可用占比:`echo $Check_Res|awk '{printf $8}'`%" } mem_check(){ free_total=`free -m | grep Mem|awk '{printf $2}'` free_used=`free -m | grep -v Swap|awk 'END{printf $3}'` #free_available=`free -m | grep Mem|awk '{printf $4}'` #used_baifen=`echo "scale=2;$free_used/$free_total*100"|bc` echo "内存合计:`free -g | awk "NR==2"| awk '{print $2}'` GB " echo "内存used:`free -g | grep -v Swap | awk 'END{print $3}'` GB" #echo "内存buff/cache:`free -g | awk "NR==2"| awk '{print $6}'` GB" #echo "内存使用:`free -m | awk "NR==2"| awk '{printf ("%.2f\n", ($3+$6) /1024)}'` GB 占比 `echo "scale=2;$free_used/$free_total*100"|bc`%" echo "ResCheck_MemRate: `echo "scale=2;($free_used/$free_total)*100"|bc `%" # echo "内存使用:`free -mh | awk "NR==2"| awk '{print $3+$6}'` G占比 `e cho "scale=2;$free_used/$free_total*100"|bc`%" #echo "内存可用:`free -g | awk "NR==2"| awk '{print $4}'` GB 占比 `echo "scale=2;$free_available/$free_total*100"|bc`% " #echo "内存可用:`free -g | awk "NR==2"| awk '{print $4}'` GB 占比 `echo "scale=2;$free_available/$free_total*100"|bc`% " } disk_Check(){ echo "`df -h | sort |grep -E "/sd|/mapper" |awk '{print "ResCheck_DiskRa te:分区" $1 ," 合 计"$2" 已用" $3 " 剩余"$4 " 使用占比 " $5}'`" # echo "`df -h | sort |grep /sd |awk '{print "ResCheck_DiskRate:分区" $1 ," 合计"$2" 已用" $3 " 剩余"$4 " 使用占比 " $5}'`" } ip_Addr(){ echo "`ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6 |awk -F " " 'BEGIN {count=0} {count=count+1; print "IP地址" count ":" $2}'`" } sys_check cpu_Info cpu_Check mem_check disk_Check ip_Addr
执行效果如图:
**2、服务器端口检查** 点击查看代码
port_Check(){ # local service_port=50456 service_port=$1 Temp_S=`netstat -naut| grep -v tcp6 |grep "0.0.0.0:$service_port "` if [ -z "$Temp_S" ]; then echo "ResCheck_Port:$service_port Unknown" fi if [ -n "$Temp_S" ]; then #echo `echo $Temp_S|awk '{ print "ResCheck_Port:" service_port " " $6}' service_port=$service_port ` echo "ResCheck_Port:$service_port LISTEN" fi } port_Check $1
效果图:
**3、检查远程主机端口状态**点击查看代码
[root@hfeboasmg01 script]# cat remotePort_check.sh remotePort_Check(){ # local service_port=50456 Host=$1 Port=$2 #Temp_S=`netstat -naut| grep -v tcp6 |grep "0.0.0.0:$service_port "` #nc -z -v -w 5 $Host $Port &> /dev/null nc -z -v -w 5 $Host $Port res=$? #Do whatever you want if [ $res -eq 0 ]; then echo ResCheck_remotePort: port $Port on $Host is open else echo ResCheck_Port:port $Port on $Host is closed fi } remotePort_Check $1 $2
这篇关于Ansible:服务器巡检_2、Linux 服务器巡检脚本的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法