一、运维监控基础
1.报告网路/系统/业务运行状况
2.提前发现被监控设备的问题
二、监控的资源类别
硬件监控:CPU、内存、磁盘I/O
系统监控:存活状态、进程数、用户数、磁盘使用率
网络监控:故障点监测、出站流量、入站流量
应用监控:Web/FTP等服务、TCP/UDP端口检测
三、监控服务平台
Cacti---------基于SNMP协议的监控软件,强大的绘图能力
Nagios-------基于Agent监控,强大的报警机制。插件扩展
Zzbbix-------基于Agent+SNMP多种监控手段,模板丰富
四、zabbix体系架构
图
五、linux系统人为监控
linux服务器检测:
cpu负载:uptime
用户登录:who | wc -l、/var/log/secure
进程数: pgrep -c
网络: ping、netstat、iptraf-ng
六、部署监控平台
1.查看网卡,设置网络参数
[[email protected] ~]# nmcli device status
DEVICE TYPE STATE CONNECTION
virbr0 bridge 连接的 virbr0
ens33 ethernet 已断开 --
lo loopback 未托管 --
virbr0-nic tun 未托管 -
[[email protected] ~]# nmcli connection modify ens33 ipv4.method manual ipv4.addresses 192.168.10.120/24 ipv4.gateway 192.168.10.254 ipv4.dns 8.8.8.8
[[email protected] ~]# nmcli connection up ens33
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
[[email protected] ~]# hostnamectl set-hostname zbx.tedu.cn
[[email protected] ~]# hostname
zbx.tedu.cn
2.部署环境添加本地域名记录
[[email protected] ~]# vim /etc/hosts
图
3.装包,安装并启用LAMP网站平台
[[email protected] ~]# yum -y install httpd mariadb-server mariadb php php-mysql
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
软件包 httpd-2.4.6-80.el7.centos.x86_64 已安装并且是最新版本
软件包 1:mariadb-server-5.5.56-2.el7.x86_64 已安装并且是最新版本
软件包 1:mariadb-5.5.56-2.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 php.x86_64.0.5.4.16-45.el7 将被 安装
--> 正在处理依赖关系 php-common(x86-64) = 5.4.16-45.el7,它被软件包 php-5.4.16-45.el7.x86_64 需要
--> 正在处理依赖关系 php-cli(x86-64) = 5.4.16-45.el7,它被软件包 php-5.4.16-45.el7.x86_64 需要
---> 软件包 php-mysql.x86_64.0.5.4.16-45.el7 将被 安装
--> 正在处理依赖关系 php-pdo(x86-64) = 5.4.16-45.el7,它被软件包 php-mysql-5.4.16-45.el7.x86_64 需要
--> 正在检查事务
---> 软件包 php-cli.x86_64.0.5.4.16-45.el7 将被 安装
---> 软件包 php-common.x86_64.0.5.4.16-45.el7 将被 安装
--> 正在处理依赖关系 libzip.so.2()(64bit),它被软件包 php-common-5.4.16-45.el7.x86_64 需要
---> 软件包 php-pdo.x86_64.0.5.4.16-45.el7 将被 安装
--> 正在检查事务
---> 软件包 libzip.x86_64.0.0.10.1-8.el7 将被 安装
--> 解决依赖关系完成
………..
已安装:
php.x86_64 0:5.4.16-45.el7 php-mysql.x86_64 0:5.4.16-45.el7
作为依赖被安装:
libzip.x86_64 0:0.10.1-8.el7 php-cli.x86_64 0:5.4.16-45.el7
php-common.x86_64 0:5.4.16-45.el7 php-pdo.x86_64 0:5.4.16-45.el7
4.开启服务并设置开机自运行
[[email protected] ~]# systemctl restart httpd mariadb
[[email protected] ~]# systemctl enable httpd mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
5.关闭防火墙、禁用SElinux机制
[[email protected] ~]# systemctl stop firewalld.service
[[email protected] ~]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[[email protected] ~]# setenforce 0
[[email protected] ~]# vim /etc/selinux/config
图
6.zabbix软件安装
(1)在线装(能访问英特网)
图
(2)离线安装(下载必要的软件包)
使用yum本地安装
[[email protected] ~]# yum -y install zabbix-server/*.rpm
已加载插件:fastestmirror, langpacks
正在检查 zabbix-server/fping-3.10-1.el7.x86_64.rpm: fping-3.10-1.el7.x86_64
zabbix-server/fping-3.10-1.el7.x86_64.rpm 将被安装
正在检查 zabbix-server/iksemel-1.4-2.el7.centos.x86_64.rpm: iksemel-1.4-2.el7.centos.x86_64
zabbix-server/iksemel-1.4-2.el7.centos.x86_64.rpm 将被安装
正在检查 zabbix-server/php-bcmath-5.4.16-45.el7.x86_64.rpm: php-bcmath-5.4.16-45.el7.x86_64
……..
已安装:
fping.x86_64 0:3.10-1.el7 iksemel.x86_64 0:1.4-2.el7.centos
php-bcmath.x86_64 0:5.4.16-45.el7 php-mbstring.x86_64 0:5.4.16-45.el7
zabbix-agent.x86_64 0:3.4.14-1.el7 zabbix-get.x86_64 0:3.4.14-1.el7
zabbix-server-mysql.x86_64 0:3.4.14-1.el7 zabbix-web.noarch 0:3.4.14-1.el7
zabbix-web-mysql.noarch 0:3.4.14-1.el7
作为依赖被安装:
OpenIPMI-libs.x86_64 0:2.0.23-2.el7 OpenIPMI-modalias.x86_64 0:2.0.23-2.el7
php-gd.x86_64 0:5.4.16-45.el7 php-ldap.x86_64 0:5.4.16-45.el7
php-xml.x86_64 0:5.4.16-45.el7 t1lib.x86_64 0:5.1.2-14.el7
unixODBC.x86_64 0:2.3.1-11.el7
7.配置php解析环境
[[email protected] ~]# vim /etc/httpd/conf.d/zabbix.conf
图
改时区环境保存退出
图
8.重启httpd
[[email protected] ~]# systemctl restart httpd
9.初始化数据库
创建新库zabbix 支持UTF8字符集
授权用户zabbix 密码123 允许从本机访问
[[email protected] ~]# mysql -u root
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.56-MariaDB MariaDB Server
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to [email protected] identified by ‘[email protected]‘;
MariaDB [(none)]> quit
Bye
[[email protected] ~]#
导入zabbix服务包提供的初始库
[[email protected] ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix [email protected] zabbix
10.设置好数据库连接
[[email protected] ~]# vim /etc/zabbix/zabbix_server.conf
图
往下 修改
DBName=zabbix //数据库名
DBUser=zabbix //数据库用户
[email protected] //数据库密码
图
保存退出
七、开启zabbix相关服务
1)启动zabbix-server、zabbix-agent
[[email protected] ~]# vim /etc/zabbix/zabbix_server.conf
[[email protected] ~]# systemctl restart zabbix-server zabbix-agent.service
[[email protected] ~]# systemctl enable zabbix-server.service zabbix-agent.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
2)确认httpd网站服务已开启
[[email protected] ~]# systemctl restart httpd
十一、访问Web界面,按照提示完成初始设置
1)访问部署好的zabbix监控系统页面
在浏览器中访问http://192.168.10.7/zabbix/,首次访问时会自动跳转到初始化设置页面 图
单击右下方的“Next step”按钮,下一个页面会检查PHP环境,确认所有条件都是“OK”
图
2)设置好数据库连接
比如库名zabbix、用户名zabbix、密码[email protected]点击next step
点击next step
点击next step
图
点击finish
图
以默认管理员Admin登录Zabbix平台,zabbix默认管理员为Admin(注意第一个A为大写),密码为zabbix
图
登录成功以后,可以看到英文版的zabbix监控网页
图
单击zabbix监控页面右上方的头像标识,可以打开当前用户的属性设置页面
将界面语言更改为“Chinese(zh_CN)”点击updata
图
更新成功后,zabbix监控页面就会变成中文
十二、启用将Zabbix Server本机作为被监控主机
单击zabbix监控页面上的“配置”-->“主机”,可以列出被监控主机。Zabbix平台默认已将本机添加为被监控对象,但是并没有启用
图
需要勾选Zabbix server主机项,然后单击底部的“启用”以开启监控。等待几分钟后按F5刷新网页,在“可用性”一栏下的ZBX项将会被点亮为绿色
图
十三、确认监控项:主机可用性、可用内存、CPU负载、登录用户数、运行进程数
单击zabbix监控页面上的“配置”-->“主机”,找到被监控的主机条目,单击右侧的“监控项”可以列出所有监控项
图
确认主机可用性监控项
监控项 Agent ping用来检查zabbix客户端的可用性
图
确认可用内存监控项
监控项 Available memory用来检查可用内存
图
确认CPU负载监控项
监控项 Processor load相关的用来检查CPU负载情况
图
确认登录用户数监控项
监控项 Number of logged in users用来检查已登录用户数
图
确认运行进程数监控项
监控项 Number of processes用来检查运行的进程数
图
添加入站流量、出站流量监控
对于模板中没有、也没能通过自动发现创建的监控项,还可以由管理员手动添加新的监控项。单击zabbix监控页面上的“配置”-->“主机”,找到被监控的主机条目,单击右侧的“监控项”打开监控项管理页面,单击右上方的创建监控项按钮,可以配置新监控项。
1)添加入站流量监控
需要指定监控项名称、监控键值(获取监控结果的预设方法)。比如,添加对网卡ens33的入站(从此网卡进入主机)流量,对应的键值为net.if.in[ens33]
图
注意:网卡流量监控项可能会由zabbix服务端自动发现并添加,若已经完成自动发现,则此项会因为键值冲突而无法添加,也无需重复添加。
2)添加出站流量监控
添加对网卡ens33的出站(从此网卡发出)流量,对应的键值为net.if.out[ens33]
3)确认新增加的监控项
返回监控项页面,可以在最后两条找到新增的监控项
图
列出主机的监控图形
单击zabbix监控页中的“配置”-->“主机”-->选中被监控主机-->“图形”,可以看到已经创建的监控图形(默认都是从模板创建的)
图
创建监控图形
1)添加“CPU负载分析”图形
创建新的监控图形时,需要指定名称、监控项
图
确认设置无误,单击下方的“添加”就完成了
2)添加“网卡流量分析”图形
为入站流量、出站流量两个监控项创建“网卡流量分析”监控图形
图
查看监控图形
1)选择指定图形并查看
单击zabbix监控页的“监测中”-->“图形”-->选择XX图形查看,比如查看Zabbix server的CPU负载分析,如图-33所示。默认情况下,zabbix所绘制图形中的汉字会显示为方框,需要修正绘图所使用的字体
图
2)修正图形中的中文显示
需要使用能正常支持汉字的中文字体文件,替换zabbix默认的绘图字体
[[email protected] ~]# cp /usr/share/fonts/wqy-zenhei/wqy-zenhei.ttc /usr/share/zabbix/fonts/graphfont.ttf
cp:是否覆盖"/usr/share/zabbix/fonts/graphfont.ttf"? y
[[email protected] ~]#
然后按F5键刷新“CPU负载分析”网页,可以看到监控图形中的汉字可以正常显示了
图
3)查看“网卡流量分析”图形
单击zabbix监控页的“监测中”-->“图形”-->选择XX图形查看,比如查看Zabbix server的网卡流量分析
图
原文地址:https://blog.51cto.com/14312470/2406506