文章目录
- 1. 监控概述
- 2. 常见监控产品
- 2.1 cacti
- 2.2 nagios
- 2.3 zabbix
- 2.4 prometheus
- 2.5 商业监控软件
- 3. zabbix 5.0 系统概述
- 3.1 zabbix应用场景
- 3.2 zabbix发布频率
- 3.3 zabbix版本特性
- 3.4 zabbix功能组件
- 3.4.1 Agent2
- 3.4.2 Server
- 3.4.3 Database
- 3.4.4 Web monitor
- 3.4.5 Proxy
- 3.5 zabbix 逻辑架构
- 4. zabbix 5.0 安装
- 4.1 安装zabbix 仓库
- 4.2 安装Zabbix server and agent
- 4.3 安装zabbix frontend
- 4.4 安装并初始化数据库
- 4.5 为zabbix 配置数据库
- 4.6 为zabbix 前端配置PHP
- 4.7 启动zabbix server和agent
- 4.8 配置zabbixWeb前端
- 4.9 登录zabbixWeb前端
- 5. zabbix中文汉化
- 5.1 修改前端页面语言
- 5.2 替换字体并解决乱码
- 6. zabbix监控Linux(centos6)主机
- 6.1 环境准备
- 6.2 安装zabbix-agent2
- 6.3 配置zabbix-agent2
- 6.4 启动zabbix-agent2
- 6.5 配置zabbix-web
- 7. zabbix监控windows主机
- 7.1 下载zabbix-agent2
- 7.2 配置zabbix-agent2
- 7.3 注册zabbix-agent2 并启动服务
- 7.4 服务端测试取值
- 7.5 配置zabbix-web
1. 监控概述
监控是运维乃至整改产品生命周期中最重要的一环
1.监控能做到事前及时预警发现故障,事后提供详细的数据用于追查定位问题
2.以图形化方式呈现当前系统状态,便于分析或评估系统性能状态
3.当出现某些特定故障时,可自动化完成故障处理,也就是故障自愈
2. 常见监控产品
2.1 cacti
主要通过SNMP对网络流量进行监控与分析,常用于数据中心监控网络设备
2.2 nagios
主要用了监控系统,也可以自定义shell脚本来监控服务,可通过web页面显示对象状态、日志、告警信息;但对于自定义监控、分层告警、分布式等支持不好。
2.3 zabbix
目前使用较多的开源监控软件,可横向扩展、自定义监控项、支持多种监控方式、可监控网络与服务等。
2.4 prometheus
针对容器环境的开源监控软件
2.5 商业监控软件
监控宝
听云
3. zabbix 5.0 系统概述
3.1 zabbix应用场景
Zabbix是企业级开源监控解决方案,支持实时监控数万台服务器、虚拟机和网络设备,采集百万级监控指标,Zabbix完全开源免费。
3.2 zabbix发布频率
- Zabbix LTS (长期支持版本) 发布。Zabbix LTS版本在
五年内为Zabbix用户提供支持服务,包括三年的全面
支持(基础的、紧急的以及安全性上的问题)和两年
的最低限度支持(仅限紧急的和安全性上的问题)。
Zabbix LTS版本的发布将体现在版本号第一位数字的
变动上。 - Zabbix 标准版本发布(试用版)。 Zabbix标准版本
将在全面支持(基础的、紧急的以及安全性上的问
题)的六个月内为Zabbix用户提供支持服务,直到下
一个Zabbix稳定版本发布,再加一个月额外的最低限
度支持(仅限紧急的和安全性上的问题)。Zabbix标
准版本将会致使第二个版本号的变动。
3.3 zabbix版本特性
1、支持监控项预测试功能,及添加完监控项之后立
即检查监控项的取值结果;
2、在低级自动发现过程中可以过滤掉一些监控项、
触发器、主机和图形等;
3、监控项键值限制提高,监控项键值的最大长度从
256个字符增加到2048个字符;
4、使用ZabbixAgent2来替代ZabbixAgent
4.1 降低TCP连接数量;
4.2 使用go语言开发,集成了Agent所有的功能,
并提供第三方的扩展插件;
3.4 zabbix功能组件
Zabbix 由几个主要的功能组件组成,其职责如下所示。
3.4.1 Agent2
Zbbix agent 部署在被监控目标上,用于主动监控本地资源和应用程序,并将收集的数据发送给zabbix server
3.4.2 Server
zabbix server 是zabbix agent 向其报告可用性、系统完整性信息的核心组件;
zabbix server 主要用于存储所有配置信息、统计信息和操作信息的核心存储库。
3.4.3 Database
所有配置信息以及zabbix收集到的数据都被存储在数据库中。
3.4.4 Web monitor
为了从任何地方或任何平台轻访问zabbix ,我们提供了基于web的界面。
该界面是zabbix server的一部分,通常和zabbix server部署在同一台机器上,也可以分开部署。
3.4.5 Proxy
zabbix proxy 可以替zabbix server 收集性能和可用性数据。zabbix proxy是zabbix 环境部署的可选部分,然而,它对单个zabbix server负载的分担是非常有益的。
3.5 zabbix 逻辑架构
zabbix-agent2(数据采集)–>zabbix-server(数据分析|告警)–> 数据库(数据存储)<–zabbix web(数据展示)
zabbix-web–>创建主机–>添加监控–> 写入数据库 《== 读取–zabbix-server --》 指挥–》zabbix-agent提取对应的数据
数据采集
数据存储
数据分析
数据展示
4. zabbix 5.0 安装
4.1 安装zabbix 仓库
[root@zabbix-server ~]# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix-server ~]# yum clean all
4.2 安装Zabbix server and agent
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-agent2 -y
4.3 安装zabbix frontend
Edit file /etc/yum.repos.d/zabbix.repo and enable zabbix-frontend repository.
[root@zabbix-server ~]# yum install yum-utils centos-release-scl -y
[root@zabbix-server ~]# yum-config-manager --enable zabbix-frontend
[root@zabbix-server ~]# yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl
4.4 安装并初始化数据库
1.安装数据库
[root@zabbix-server ~]# yum install mariadb mariadb-server -y
[root@zabbix-server ~]# systemctl start mariadb && systemctl enable mariadb
[root@zabbix-server ~]# mysql
2.删除数据库的guest用户,并设置root密码,提高数据库安全性
MariaDB [(none)]> delete from mysql.user where user='';
MariaDB [(none)]> delete from mysql.db where user='';
MariaDB [(none)]> update mysql.user set password=password('A38n[9W');
MariaDB [(none)]> flush privileges;
3.创建zabbix库并且赋权
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
MariaDB [(none)]> quit
4.导入初始架构和数据
[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql-5.0.26/create.sql.gz | mysql -uzabbix -pzabbix zabbix
4.5 为zabbix 配置数据库
[root@zabbix-server ~]# grep "^DB" /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
4.6 为zabbix 前端配置PHP
1.编辑配置文件/etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
[root@zabbix-server ~]# vim /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
server {
...
listen 80;
server_name zabbix.panpancar.com;
...
}
- 编辑配置文件/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf , add nginx to listen.acl_users directive
[root@zabbix-server ~]# vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
listen.acl_users = apache,nginx
3.设置时区
php_value[date.timezone] = Asia/Shanghai
4.7 启动zabbix server和agent
[root@zabbix-server ~]# systemctl enable zabbix-server zabbix-agent2 rh-nginx116-nginx rh-php72-php-fpm
[root@zabbix-server ~]# systemctl restart zabbix-server zabbix-agent2 rh-nginx116-nginx rh-php72-php-fpm
4.8 配置zabbixWeb前端
连接zabbix前端: http://zabbix.panpancar.com
4.9 登录zabbixWeb前端
默认登录zabbix web页面用户名:Admin,密码zabbix
5. zabbix中文汉化
5.1 修改前端页面语言
选择User settings --> User --> Chinese(zh_CN)
查看当前图形字体是否正常
5.2 替换字体并解决乱码
#1.检查zbbix字体存放目录
[root@zabbix-server ihavecar]# rpm -ql zabbix-web | grep fonts
/usr/share/zabbix/assets/fonts
#2.进行字体修改
[root@zabbix-server ihavecar]# ll /usr/share/zabbix/assets/fonts/
lrwxrwxrwx 1 root root 33 8月 24 18:42 graphfont.ttf -> /etc/alternatives/zabbix-web-font
[root@zabbix-server ihavecar]# ll /etc/alternatives/zabbix-web-font
lrwxrwxrwx 1 root root 38 8月 24 18:42 /etc/alternatives/zabbix-web-font -> /usr/share/fonts/dejavu/DejaVuSans.ttf
#3.进入windows电脑,C盘-> windows-fonts-复制“微软雅黑”字体至桌面
[root@zabbix-server ihavecar]# cd /usr/share/fonts/dejavu/
[root@zabbix-server dejavu]# mv DejaVuSans.ttf DejaVuSans.ttf_bak
[root@zabbix-server dejavu]# rz msyh.ttf
[root@zabbix-server dejavu]# mv msyh.ttf DejaVuSans.ttf
5.3 刷新页面验证字体
6. zabbix监控Linux(centos6)主机
6.1 环境准备
角色 | 外网IP | 内网ip |
Zabbix-Server | 无 | eth:192.168.20.46 |
web01 | 无 | eth0: 192.168.20.47 |
6.2 安装zabbix-agent2
[root@web01 ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/6/x86_64/zabbix-agent2-5.0.26-1.el6.x86_64.rpm
6.3 配置zabbix-agent2
配置agent指向Server
[root@web01 ~]# vim /etc/zabbix/zabbix_agent2.conf
Server=192.168.20.46
6.4 启动zabbix-agent2
[root@web01 ~]# /etc/init.d/zabbix-agent2 start
[root@web01 ~]# chkconfig zabbix-agent2 on
[root@web01 ~]# netstat -tnlp | grep zabbix_agent2
tcp 0 0 :::10050 :::* LISTEN 1548/zabbix_agent2
6.5 配置zabbix-web
- 单机配置–>主机–> 创建主机
2.填写主机名称,可见名称,选择群组,填写客户端ip地址
3.选择自带模版Template OS Linux
7. zabbix监控windows主机
7.1 下载zabbix-agent2
Zabbix-Agent2 For Windows 官方下载地址
https://cdn.zabbix.com/zabbix/binaries/stable/5.0/5.0.26/zabbix_agent2-5.0.26-windows-amd64-openssl-static.zip
7.2 配置zabbix-agent2
编辑 D:\zabbix_agents2\conf\zabbix_agent2.conf
...
Server=192.168.20.46
ServerActive=192.168.20.46
Hostname=winServer2012
7.3 注册zabbix-agent2 并启动服务
1.已管理员身份运行cmd,将zabbix命令注册为服务、然后启动该服务
C:\Users\Administrator>E:\zabbix_agent2\bin\zabbix_agent2.exe -c E:\zabbix_agent
2\conf\zabbix_agent2.conf --install
zabbix_agent2 [8748]: 'Zabbix Agent 2' installed succesfully
2.启动服务
3.cmd查看端口
netstat -an |find "10050"
7.4 服务端测试取值
#zabbix-server 使用zabbix_get 获取windows信息
[root@zabbix-server ~]# zabbix_get -s xxx -k system.uname
7.5 配置zabbix-web
1.添加对应主机
2.为其管理windows模版