第三十课预习任务-zabbix(1)

19.1 Linux监控平台介绍
19.2 zabbix监控介绍
19.3/19.4/19.6 安装zabbix
19.5 忘记Admin密码如何做
19.7 主动模式和被动模式
19.8 添加监控主机
19.9 添加自定义模板
19.10 处理图形中的乱码
19.11 自动发现
19.12 添加自定义监控项目
19.13/19.14 配置邮件告警
19.15 测试告警
19.16 不发邮件的问题处理
扩展
zabbix监控交换机(思科) http://tryrus.blog.51cto.com/10914693/1789847
zabbix远程执行命令 http://www.ywnds.com/?p=6610
zabbix分布式部署 http://sfzhang88.blog.51cto.com/4995876/1364399
zabbix监控tomcat(版本有点老,大家只需要参考步骤,不能照搬) http://www.fblinux.com/?p=61619.1 Linux监控平台介绍

 

19.1 Linux监控平台介绍

常见的监控平台:

第三十课预习任务-zabbix(1)

cacti,nagios和zabbix都是c/s架构,需要安装一个服务端,被监控的客户端上安装客户端。

Zabbix更容易配置,方便调用历史数据,在web管理中很方便,直接增加节点就行,目前来说,越来越多的使用zabbix,适合大企业使用,

nagios更注重于监控状态,如果不正常则报警,仅仅关心状态,也不关心历史状态

 

 

19.2 zabbix监控介绍

第三十课预习任务-zabbix(1)

Zabbix客户端分为主动和被动模式,监控中心需要一个PHP的环境

Zabbix理论上支持上万台客户端

实际上现在zabbix已经到4.0了,https://www.zabbix.com/

站点是国外的,稍微慢点儿,这里我们测试用3.2测试就行

官方下载地址https://www.zabbix.com/download

Zabbix5个组件

Zabbix-server 监控中心

数据存储

Web界面,也叫web UI

Zabbix-proxy 可选组件,用来减轻主机服务器

Zabbix-agent 客户端软件

 

Zabbix监控流程

第三十课预习任务-zabbix(1)

这里的采集过程可以是主动也可以是被动

 

19.3 安装zabbix(上)

第三十课预习任务-zabbix(1)

测试建议使用rpm包,下载地址,

[[email protected] ~]# wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

准备两台机器,都下载下来

安装rpm包,相当于安装了一个yum源仓库

[[email protected] ~]# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm

第三十课预习任务-zabbix(1)

yum list |grep zabbix可以看到就有zabbix相关的包了

第三十课预习任务-zabbix(1)

安装zabbix

 

yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql

zabbix的web也是使用php写的

因为之前安装过mysql,这里就不再安装,也可以使用yum安装mysql

[[email protected] ~]# ps aux |grep mysql先看看mysql是否起来了

第三十课预习任务-zabbix(1)

如果没有起来,则看看mysql的日志

[[email protected] ~]# chown -R mysql:mysql /data/mysql/

[[email protected] ~]# systemctl start mysql

第三十课预习任务-zabbix(1)

还需要编辑一下mysql的文件

增加字符集character_set-server =utf8

第三十课预习任务-zabbix(1)

 

 

重启mysql服务

[[email protected] ~]# /etc/init.d/mysqld restart

创建zabbix库,字符集为UTF-8

mysql> create database zabbix character set utf8;

创建zabbix用户

mysql> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'zhao-zabbix';

第三十课预习任务-zabbix(1)

导入zabbix相关的数据:

[[email protected] ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.11/

[[email protected] zabbix-server-mysql-3.2.11]# gzip -d create.sql.gz  //解压

第三十课预习任务-zabbix(1)

导入到库里面

[[email protected] zabbix-server-mysql-3.2.11]# mysql -uroot -p123456 zabbix < create.sql

第三十课预习任务-zabbix(1)

接起来就是启动zabbix服务,启动之前检查是否启动了nginx

[[email protected] ~]# ps aux |grep nginx

第三十课预习任务-zabbix(1)

如果启动了,占用了80端口,则先关掉

[[email protected] ~]# /etc/init.d/nginx stop

第三十课预习任务-zabbix(1)

没有监听80端口的则可以启动httpd

[[email protected] ~]# systemctl start zabbix-server

[[email protected] ~]# systemctl start httpd

第三十课预习任务-zabbix(1)

如果需要开机启动

[[email protected] ~]# systemctl enable httpd

当然也需要禁止nginx启动

第三十课预习任务-zabbix(1)

[[email protected] ~]# systemctl enable httpd^C

[[email protected] ~]# systemctl enable httpd

Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

[[email protected] ~]# systemctl disable nginx

nginx.service is not a native service, redirecting to /sbin/chkconfig.

Executing /sbin/chkconfig nginx off

[[email protected] ~]# chkconfig nginx off

 

 

第三十课预习任务-zabbix(1)

这里进程起来了,但是查看没有监听端口,比较奇怪了

第三十课预习任务-zabbix(1)

 

19.4 安装zabbix(中)

如果起不来,查看日志

[[email protected] ~]# less /var/log/zabbix/zabbix_server.log

第三十课预习任务-zabbix(1)

代表不能连接mysql

修改配置文件

[[email protected] ~]# vim /etc/zabbix/zabbix_server.conf

找到DBHost

第三十课预习任务-zabbix(1)

生产环境中,可以配置mysql换到另外一个设备中

第三十课预习任务-zabbix(1)

同样定义一个密码,注意授权的适合要写php代码所在机器的ip

[[email protected] ~]# vim /etc/zabbix/zabbix_server.conf

[[email protected] ~]# systemctl restart zabbix-server//更改完之后重新启动服务

[[email protected] ~]# getenforce  //注意关掉这个

Permissive

第三十课预习任务-zabbix(1)

http://192.168.188.131/zabbix/setup.php浏览器输入这个则起来了

第三十课预习任务-zabbix(1)

第三十课预习任务-zabbix(1)

设置PHP的时区

[[email protected] ~]# vim /etc/php.ini修改时区

第三十课预习任务-zabbix(1)

重新刷新继续

第三十课预习任务-zabbix(1)

配置

第三十课预习任务-zabbix(1)

第三十课预习任务-zabbix(1)

第三十课预习任务-zabbix(1)

默认是admin,密码zabbix

进入之后优先记录密码

第三十课预习任务-zabbix(1)第三十课预习任务-zabbix(1)

这时候就是中文界面了

 

 

19.5 忘记Admin密码如何做

第三十课预习任务-zabbix(1)

相当于去数据库直接更改密码

mysql> use zabbix   //进入数据库

mysql> desc users;  //查看用户表

 

 

第三十课预习任务-zabbix(1)

mysql> update zabbix.users set passwd=md5('123456') where alias='Admin'; //修改成123456

select * from users;//查看用户

第三十课预习任务-zabbix(1)

 

 

19.6 安装zabbix(下)

客户端安装

第三十课预习任务-zabbix(1)

和服务机一样,但是只要安装zabbix-agent就行

[[email protected] ~]# wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

[[email protected] ~]# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm

[[email protected] ~]# yum install -y zabbix-agent

安装好之后,修改配置文件

[[email protected] ~]# vim /etc/zabbix/zabbix_agentd.conf

目的指向特定的服务端(131是服务端)

被动模式Server

第三十课预习任务-zabbix(1)

主动模式ServerActive

第三十课预习任务-zabbix(1)

Hostname //客户机名称

第三十课预习任务-zabbix(1)

[[email protected] ~]# systemctl start zabbix-agent                   //启动服务

第三十课预习任务-zabbix(1)

第三十课预习任务-zabbix(1)

 

到这里zabbix客户机和服务端已经安装结束!