HostMonitor使用手册-监控网络、剩余磁盘空间、剩余内存、CPU使用率、能否访问某个IP地址对应的端口号

HostMonitor使用手册-监控网络、剩余磁盘空间、剩余内存、CPU使用率、能否访问某个IP地址对应的端口号

1. 在windows上安装HostMonitor

HM下载地址https://www.ks-soft.net/hostmon.eng/downpage.htm
在这里插入图片描述

双击host-mon.exe安装,一直下一步即可。
在这里插入图片描述
在这里插入图片描述
打开HostMonitor后,可以看到以下界面,这里有很多监控模板可以参考。如果不熟悉配置的,最后先不要删除,为了之后方便查看。
在这里插入图片描述
从模板上可以看到:HM能监控网络cpu磁盘空间内存使用网址访问nginx
我这里为了保持界面干净,把模板删除了,如下:
在这里插入图片描述

2. 在linux主机上安装rma

rma下载地址https://www.ks-soft.net/download/rma/rma136_lin_64.tgz
上传并解压rma压缩包到/opt/rma目录:

[root@master ~]# ll rma136_lin_64.tgz 
-rw-r--r--. 1 root root 225280 9月  25 13:45 rma136_lin_64.tgz
[root@master ~]# mkdir /opt/rma
[root@master ~]# tar xf rma136_lin_64.tgz -C /opt/rma
[root@master ~]# cd /opt/rma/
[root@master rma]# ll
总用量 224
-rwxrwxrwx. 1 abong abong    809 1月  20 2010 cpu.sh
-rw-rw-rw-. 1 abong abong  12753 4月  23 01:53 INSTALL
-rw-rw-rw-. 1 abong abong   4641 4月  23 01:54 LICENSE
-rwxrwxrwx. 1 abong abong    787 2月  22 2007 proccnt.sh
-rwxrwxrwx. 1 abong abong    543 2月  22 2007 proclist.sh
-rw-rw-rw-. 1 abong abong   2996 4月  23 01:53 README
-rwxrwxr-x. 1 abong abong 178976 4月  23 01:58 rma
-rw-rw-rw-. 1 abong abong   7635 4月  23 01:55 rma.ini

编辑rma配置文件:

[root@master ~]# vim /opt/rma/rma.ini
 23 [Basic]
 30 RmaPath = /opt/rma/rma    # 启动程序
 80 Password=123456    # 密码

启动rma客户端:

[root@master rma]# /opt/rma/rma -d /opt/rma/rma.ini
-------------------------------------------------------------
 Application:  RMA (Remote Monitoring Agent for HostMonitor)
 Version:      1.36 for Linux (Red Hat, Debian, Ubuntu)
 Copyright:    2004 - 2010 Alexander Kozlov
 web:          http://www.ks-soft.net
 e-mail:       support@ks-soft.net
-------------------------------------------------------------
Command line checking .. Ok
Settings checking .. Ok
CPU testing .. Ok
Basic encyption checking .. Ok
RMA encyption checking .. Ok
Sock testing .. Ok
Daemon started

# rma要启动成功,需要glibc达到2.14或者2.15版本。这里的glibc是2.17版本。
[root@master ~]# rpm -qa | grep glibc
glibc-common-2.17-260.el7.x86_64
glibc-2.17-260.el7.x86_64
glibc-headers-2.17-260.el7.x86_64
glibc-devel-2.17-260.el7.x86_64
[root@master ~]# strings /lib64/libc.so.6 | grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_2.15
GLIBC_2.16
GLIBC_2.17
GLIBC_PRIVATE

如果在启动rma客户端,发现报错,说找不到GLIBC_2.15或者GLIBC_2.14,可以升级下GLIBC版本

[root@master lib64]# /opt/rma/rma -d /opt/rma/rma.ini
/opt/rma/rma: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by /opt/rma/rma)
/opt/rma/rma: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /opt/rma/rma)

[root@master ~]# rpm -qa | grep glibc   # 可以看到安装的仅仅是glibc2.12版本的,故问题应该是在于glibc版本太低了。
glibc-headers-2.12-1.107.el6.x86_64
compat-glibc-2.5-46.2.x86_64
glibc-2.12-1.107.el6.x86_64
compat-glibc-headers-2.5-46.2.x86_64
glibc-devel-2.12-1.107.el6.x86_64
glibc-2.12-1.107.el6.i686
glibc-common-2.12-1.107.el6.x86_64

[root@master ~]# strings /lib64/libc.so.6 | grep GLIBC    # 查看包含libc.so.6模块的GLIBC各个版本情况,最新的就是2.12版本。
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE

升级glibc到2.15版本:

下载地址:http://ftp.gnu.org/pub/gnu/glibc/
glibc-2.15下载地址:http://ftp.gnu.org/pub/gnu/glibc/glibc-2.15.tar.gz

[root@master ~]# tar xzvf glibc-2.15.tar.gz
[root@master ~]# cd glibc-2.15/
[root@master glibc-2.15]# mkdir build
[root@master glibc-2.15]# cd build/
[root@master build]# ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
[root@master build]# make && make install     # 最后显示如下就表示已经安装好glibc-2.15了
Your new glibc installation seems to be ok.
make[1]: Leaving directory `/root/glibc-2.15'

3. 监控网络

[root@master ~]# iptables -F    # 清空防火墙策略,可以通过/var/log/messages看到被拦截了。

新增远程主机到远程主机列表:
在这里插入图片描述
配置监控远程主机的网络:
在这里插入图片描述
查看网络情况:
在这里插入图片描述

4. 监控磁盘空间

在这里插入图片描述
在这里插入图片描述

可以看到/目录的剩余空间为22%,/boot目录的剩余空间为83%
在这里插入图片描述
在这里插入图片描述

5. 监控内存使用率

查看下内存使用情况:
在这里插入图片描述
free=72,total=972,空闲内存百分比为7.41%

在这里插入图片描述

在这里插入图片描述
监控剩余内存百分比的脚本如下:

#!/bin/sh
if [ $# -ge 1 ]
then
  OS=`uname`
  case $OS in
    AIX)    PCOUNT=`vmstat|tail -1|awk '{print $4*4}'`;;
    Linux)  PfreeMem=`free -m | awk 'NR==2{print $4}'`;Ptotal=`free -m | awk 'NR==2{print $2}'`;PCOUNT=`echo "($PfreeMem*100/$Ptotal)"|bc`;;
    FreeBSD)PCOUNT=`vmstat|tail -1|awk '{print $5}'`;;
    NetBSD) PCOUNT=`vmstat|tail -1|awk '{print $5}'`;;
    OpenBSD)PCOUNT=`vmstat|tail -1|awk '{print $5}'`;;
    SunOS)  PCOUNT=`vmstat|tail -1|awk '{print $5}'`;;
    *) echo 'ScriptRes:Unknown:script is not designed for '$OS
       exit;;
  esac
  if [ $PCOUNT -le $1 ]
  then
    echo "ScriptRes:Bad:"$PCOUNT"%"
  else
    echo "ScriptRes:Ok:"$PCOUNT"%"
  fi
else
  echo 'ScriptRes:Unknown:not enough parameters specified'
fi

监控结果如下,可以看到剩余内存是不足20%的,仅有7%。
在这里插入图片描述
这里把监控阈值调成5%,看看会不会显示为绿色,可以看到是会的。至此,剩余内存百分比也已经监控上了。【剩余内存阈值一般为20%以上,即当内存使用超过80%就会预警。】
在这里插入图片描述

6. 监控CPU

在这里插入图片描述
在这里插入图片描述

7. 检测到某个IP地址的某个端口的连通性

百度地址http://14.215.177.39/
监控主机192.168.43.5是否可以访问百度:
在这里插入图片描述

可以看到是可以访问的。
在这里插入图片描述

8. 总结

HostMonitor这款监控软件免费开源,监控内容较多,本文介绍了ping剩余磁盘空间剩余内存CPU使用百分比是否可以访问某个网站当要配置的监控内容较多时,注意Test name一定要写清楚作用,可以让运维和开发人员看的更清楚。 要监控其他内容可以参照安装时自带的监控模板,配置大同小异。也可以在本文下留言,一起讨论。

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
你可以使用Python的psutil库获取系统CPU内存磁盘空间的使用情况,使用matplotlib库绘制折线图,使用smtplib库发送邮件报警。 以下是一个简单的示例代码: ```python import psutil import matplotlib.pyplot as plt import datetime import time import smtplib from email.mime.text import MIMEText from email.header import Header # 发送邮件报警 def send_email_alert(subject, content): mail_host = "smtp.xxx.com" # 邮箱服务器地址 mail_user = "your_email" # 邮箱账号 mail_pass = "your_password" # 邮箱密码 sender = 'your_email' # 发件人邮箱 receivers = ['receiver_email'] # 收件人邮箱列表 message = MIMEText(content, 'plain', 'utf-8') message['From'] = Header("System Monitor", 'utf-8') message['To'] = Header("Admin", 'utf-8') message['Subject'] = Header(subject, 'utf-8') try: smtpObj = smtplib.SMTP_SSL(mail_host, 465) smtpObj.login(mail_user, mail_pass) smtpObj.sendmail(sender, receivers, message.as_string()) smtpObj.quit() print("邮件发送成功") except smtplib.SMTPException as e: print("Error: 无法发送邮件") print(e) # 获取CPU内存磁盘空间使用情况 def get_system_info(): cpu_percent = psutil.cpu_percent() mem_percent = psutil.virtual_memory().percent disk_percent = psutil.disk_usage('/').percent return cpu_percent, mem_percent, disk_percent # 绘制折线图 def plot_line_chart(x, y, title, xlabel, ylabel): fig, ax = plt.subplots() ax.plot(x, y) ax.set(xlabel=xlabel, ylabel=ylabel, title=title) ax.grid() plt.show() # 监控近一年系统使用情况 def monitor_system(): # 初始化数据 cpu_data = [] mem_data = [] disk_data = [] time_data = [] # 监控近一年系统使用情况 for i in range(365): cpu_percent, mem_percent, disk_percent = get_system_info() cpu_data.append(cpu_percent) mem_data.append(mem_percent) disk_data.append(disk_percent) time_data.append(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")) time.sleep(3600) # 每隔一个小时获取一次数据 # 绘制折线图 plot_line_chart(time_data, cpu_data, 'CPU Usage', 'Time', 'CPU Usage (%)') plot_line_chart(time_data, mem_data, 'Memory Usage', 'Time', 'Memory Usage (%)') plot_line_chart(time_data, disk_data, 'Disk Usage', 'Time', 'Disk Usage (%)') # 发送邮件报警 if max(cpu_data) >= 90: subject = 'CPU usage is too high!' content = 'The CPU usage is {}% at {}.'.format(max(cpu_data), time_data[cpu_data.index(max(cpu_data))]) send_email_alert(subject, content) if max(mem_data) >= 90: subject = 'Memory usage is too high!' content = 'The memory usage is {}% at {}.'.format(max(mem_data), time_data[mem_data.index(max(mem_data))]) send_email_alert(subject, content) if max(disk_data) >= 90: subject = 'Disk usage is too high!' content = 'The disk usage is {}% at {}.'.format(max(disk_data), time_data[disk_data.index(max(disk_data))]) send_email_alert(subject, content) if __name__ == '__main__': monitor_system() ``` 这个示例代码会每隔一个小时获取一次系统CPU内存磁盘空间的使用情况,并绘制近一年的折线图。如果某个指标的最大值超过90%,则会发送邮件报警。你需要将`your_email`和`your_password`替换成实际的邮箱账号和密码,将`mail_host`替换成实际的邮箱服务器地址,将`receiver_email`替换成实际的收件人邮箱。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值