zabbix提供两种安装方式,YUM安装
与源码编译安装
,需注意:Centos官方yum源不提供zabbix软件包以及相关依赖包,因此。如果想用yum安装zabbix需要通过zabbix官方源
或第三方yum源
实现。
zabbix服务器需要在LAMP
或LNMP
环境里进行。
zabbix是一个基于web界面的企业级开源监控套件
,提供了分布式的系统监控与 网络监视的功能,具有主机的性能 监控,网络性能监控,数据库性能监控等,多种警告方式,详细报表,图表的绘制等功能,检测对象可以是Linux系统也可以是Windows系统,还可以是路由器,交换机等网络设备(通过SNMP简单网络网络管理协议)。官方网站是:http://www.zabbix.com
a. All-In-One:Nagios和Cacti的功能全部涵盖。报警规则强大
详细(Email/IM/SMS/微信/钉钉),画图也比较美观,定制性强于Cacti;
b. 数据采集:强大的Web前台免除反复手工修改配置文件的麻烦;上述All-In-One的特性使之无需对接版本繁杂且可能不兼容的第三方插件,大大减少了搭建难度;自动发现主机
,脚本批量部署
;
c. 监控完备:可监控网络流量
,设备状态
,系统服务
。搭配其强大的客户端甚至可以细化到如Exchange的登录人数,数据库大小;文件操作如每秒读写大小;
d. 文档完善:Zabbix本身的定位就是企业级分布式监控系统
,拥有完善的文档
,活跃的官方社区
,且本身也更新得比较频繁,开发比较积极
e. 界面直观:可定制自动刷新时间
;使用了与Nagios/Cacti相比较先进的Web前端技术
,如查看图表/配置功能时很多地方支持直接拖动;Graphs+Screens的方式可以选择性地聚合
需要的信息。
d.安装配置简单:支持多语言(中文)
,免费开源
f.高可用: 对server对设备
性能要求低,支持proxy分布式监控,分布式集中管理,可以实现自动化监控;开放式接口,扩展性强
zabbix组件 | 描述 |
---|---|
zabbix server | zabbix主服务器,负责接收agent发送的报告信息,所有配置,数据统计,数据操纵由他组织 |
Database storage | 负责存储所有配置信息以及数据的收集 |
Web interface | zabbix的GUI接口,通常与zabbix server在同一台主机 |
proxy | 属于可选组件,常用与分布式监控环境里,代理Server收集部分 数据,再转发到Server |
agent | 部署在被监控的主机上。负责收集被监控的主机数据,如:CPU,内存等,然后发现server或proxy |
默认情况下有五个进程:zabbix_agent
,zabbix_sender
,zabbix_server
,zabbix_proxy
,zabbix_get
,另外有个zabbix_java_gateway 是可选的,需要另外安装。
zabbix进程 | 描述 |
---|---|
zabbix_agent | 客户端守护进程,主用于收集客户端信息 |
zabbix_get | zabbix工具是单独使用的命令,在server或proxy远程获取客户端信息的命令,主用于排错和测试 |
zabbix_server | zabbix服务端守护进程,所有数据最后都提交到sever,数据提交也分主动提交和被动提交 |
zabbix_proxy | zabbix代理守护进程,可以理解为中转站 |
zabbix_sender | 用于主动发送数据给server或proxy,通常用在耗时较长的检查 |
zabbix_java_gateway | 只用在Java方面,只能主动获取数据,最后提交给server或proxy |
在实际生产环境中,zabbix根据网络环境,监控规模等外界因素分为三种架构,server-client
(直接连接),master-node-client
(Node架构),server-proxy-client
(proxy架构)。
监控架构 | 描述 |
---|---|
server-client | 最简单的架构,直接在server和agent进行交互,使用与比较简单 ,设备较少的环境 |
master-node-client | 是zabbix架构里最复杂的,使用与跨机房,跨网络,设备较多的大环境,每个 node都是一个server,都有自己的配置文件,要做的就是想master同步数据,当master故障时,不影响架构完整性 |
server-proxy-client | 一般用于跨机房,跨网络的中型网络架构,proxy没有前端,只做转发 |
1>//准备前提环境
yum -y install mariadb mariadb-server php php-bcmath php-mbstring httpd php-mysql
zabbix国外官方网站我们下载的时候会很慢,所以用国内清华源或阿里云源都可以完成下载
rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
安装完编辑zabbix.repo
/etc/yum.repos.d/
├── CentOS-Base.repo
├── epel.repo
└── zabbix.repo
替换repo.zabbix.com官网位置,换成国内清华repo源,安装更快
sed -i 's:repo.zabbix.com:mirror.tuna.tsinghua.edu.cn/zabbix:g' /etc/yum.repos.d/zabbix.repo
添加完zabbix.repo后,最好清理一遍缓存,否则可能会出现yum进程睡眠状态,命令:yum clean all
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
安装完成后,会看到zabbix-server.conf和zabbix-agent.conf
服务端端口时10051
客户端端口是10050
开启mariadb数据库,设置好登录密码,因为zabbix-web时需要数据库,所以要手动创建zabbix的数据库,并授权给zabbix用户使用,来保证数据库的安全性。
先给数据库设置个密码
[root@localhost ~]# mysql_secure_installation
创建数据库zabbix:
create database zabbix character set utf8 collate utf8_bin;
#添加上支持中文字符集,以免中文报错或乱码
给zabbix用户授权:
grant all privileges on zabbix.* to zabbix@localhost identified by ‘123.com’;
[root@localhost ~]# mysql -uroot -p123.com
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 4295
Server version: 5.5.64-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
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 zabbix@localhost identified by '123.com';
Query OK, 0 row affected (0.00 sec)
导入数据库SQL脚本
[root@localhost ~]# zcat /usr/share/doc/zabbix-server-mysql-4.0.19/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: #密码:123.com
或者
cd /usr/share/doc/zabbix-server-mysql-4.0.19/
gzip -d create.sql.gz
mysql -uzabbix -p123.com zabbix < create.sql #导入数据库文件
编辑zabbix-server配置文件,指定数据库名称,用户,密码
cat /etc/zabbix/zabbix_server.conf | grep -v ‘^$’ | grep -v ‘^#’
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123.com
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
注:
zabbix有设置密码的必须在配置文件添加DBpassword这一项,没有的话
“无所谓,谁会爱上谁”。
修改zabbix-web配置文件
修改/etc/httpd/conf.d/zabbix,conf
,修改时区是 更改下时区,Asia/SHanghai
默认是注释的,开启修改时区位置,否则会报错
sed -i 's: # php_value date.timezone Europe/Riga:php_value date.timezone Asia/SHanghai:g' /etc/httpd/conf.d/zabbix.conf
重启httpd服务,zabbix-*服务
[root@localhost ~]# systemctl restart httpd
[root@localhost ~]# systemctl restart zabbix-server.service
[root@localhost ~]# systemctl start zabbix-agent.service
[root@localhost ~]#
监听端口
访问:localhost/zabbix 或zabbix-server的ip
/zabbix
检查无误后,下一步
完成后,下一步
登入进去后,说明安装成功
语言切换成中文
客户机安装zabbix-agent
同理,Centos自带的yum源和其他epel源没有zabbix-agent包,需要官方源或第三方。
rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.0-2.el7.x86_64.rpm
客户端下载完后修改配置文件:
[root@localhost ~]# grep -Ev ‘^$|#’ /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.10.7
ServerActive=192.168.10.7
Hostname=Zabbix-client002
Include=/etc/zabbix/zabbix_agentd.d/*.conf
服务端创建主机
选择模板
添加完成后,会自动检验到
图形化界面
解决部分图形化界面里乱码问题
在本机随便找一个字体或yum下载一个字体就好
复制过去,如下操作,改个名
下一篇:zabbix自定义报警——(微信,邮箱)