Zabbix监控系统 (1) 之 平台介绍、安装、忘记密码怎么办

1. Linux监控平台介绍

常见的Linux监控平台有cacti、nagios、zabbix、smokeping、open-falcon等等

  • cacti、smokeping偏向于基础监控,成图非常漂亮

  • cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图 ,这几款软件都有web操作界面

  • open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究

2. zabbix监控介绍

C/S架构(被监控的server需要安装监控软件,既可以主动连接客户端,也可以被动的让客户端推送自己的状态),基于C++开发,监控中心支持web界面配置和管理。

单server节点可以支持上万台客户端(可支持同时上万台的server监控,并发量高,如果超过一定的量,性能可能会降低,但是我们可以增加Proxy代理点来充当监控服务器来减轻压力)

2.1 5个组件

  • zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据。

  • 数据存储 存放数据,比如mysql。

  • web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因。

  • zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力。

  • zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报

2.2 zabbix监控流程图

输入图片说明

3. 安装zabbix

3.1 准备工作

因为Zabbix的特性,需要2至少2台服务器,1台监控服务端,1台客户端,还需要PHP和Mysql的环境支持,还有自带的web UI,还需要httpd支持。

主机名 IP地址 角色
yt-04 192.168.2.134 server
yt-05 192.168.2.135 cilent

官网下载地址,系统自带yum源的2.2版本很老了,在此使用zabbix官方提供的对应版本的yum源安装较新版本的。

www.zabbix.com/download

我们先配置好服务端,再配置客户端。

3.2 server安装zabbix

安装zabbix之前需要先安装其yum源仓库

# 下载指定版本
[root@yt-04 src]# wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

# 安装zabbix的yum扩展源
[root@yt-04 src]# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm

# 安装zabbix及其组件
[root@yt-04 src]# yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql

# zabbix-agent是客户端程序
# zabbix-get是服务端上命令行获取客户端检测项目的组件
# zabbix-server-mysql是zabbix-server MySQL组件
# zabbix-web是web界面组件
# zabbix-web-mysql:web界面MySQL相关组件
# 该过程会顺带安装上PHP和httpd服务。

3.3 安装和配置MySQL

安装MySQL

安装mysql可以使用两种方法:1. yum安装 2.编译mysql安装,可参考之前LAMP安装的过程 这里选择直接yum安装

[root@yt-04 src]# yum install -y mysql mysql-server mysql-devel 

[root@yt-04 src]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
ls -1 /etc/yum.repos.d/mysql-community*
yum install mysql-server


[root@yt-04 src]# systemctl start mysqld

[root@yt-04 src]# ps aux | grep mysql

配置MySQL

[root@yt-04 src]# vim /etc/my.cnf 

# 需要增加配置。设置默认字符集的目的是让web UI可以正常的用中文显示。
character_set_server = utf8

# 重启mysqld服务
[root@yt-04 src]# /etc/init.d/mysqld restart

#进入mysql,创建zabbix库(类似安装wordpress,zabbix的web UI就是一个php写的监控网站)
[root@yt-04 ~]# mysql -uroot -p123456
mysql> create database zabbix character set utf8;
#创建库并指定其字符集    
Query OK, 1 row affected (0.00 sec)

mysql> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '123456'; 
# 允许账户zabbix能从本机连接到数据库zabbix
Query OK, 0 rows affected (0.00 sec)

mysql> quit

3.4 导入zabbix自带的数据库

# 进入zabbix自带的数据库目录
[root@yt-04 ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.11/
[root@yt-04 zabbix-server-mysql-3.2.11]# ls
AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README

# 解压create.sql.gz包,导入到新建的zabbix库
[root@zhdy-04 zabbix-server-mysql-3.2.11]# gzip -d create.sql.gz
[root@z1 zabbix-server-mysql-3.2.11]# mysql -uroot -p123456 zabbix < create.sql

3.5 启动zabbix服务

# 启动zabbix服务
[root@yt-04 zabbix-server-mysql-3.2.11]# systemctl start zabbix-server

# 启动http服务(如果之前有配置nginx,或者tomcat(配置了80端口)服务一定要先停掉。不然启动httpd会报错)
[root@yt-04 zabbix-server-mysql-3.2.11]# systemctl start httpd.service
[root@yt-04 zabbix-server-mysql-3.2.11]# netstat -lntp |grep httpd
tcp6      0      0 :::80                  :::*                    LISTEN      2370/httpd      

# 把zabbix、http等服务设置开机启动  
[root@yt-04 ~]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.

[root@yt-04 ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

3.6 查看zabbix的日志

[root@yt-04 ~]# less /var/log/zabbix/zabbix_server.log

3.7 配置zabbix

[root@yt-04 ~]# vim /etc/zabbix/zabbix_server.conf 
# 更改配置文件

DBHost=127.0.0.1
# 此处写的是本机MySQL的IP,实际生产环境中zabbix可能单独使用一台机器,则要填实际IP地址
# 该IP应该和数据库授权时指定的IP一致
DBname=zabbix
DBUser=zabbix
DBPassword=123456

# 更改完成后,重启zabbix服务
[root@z1 ~]# systemctl restart zabbix-server.service

# 启动完成后查看其状态
[root@z1 ~]# ps aux |grep zabbix
netstat -lntp |grep zabbix
服务端zabbix默认监听10051端口

3.8 安装和配置zabbix web界面

使用浏览器访问server机器上的IP:192.168.2.134/zabbix进入安装引导界面,进行该操作前保证server已关闭防火墙。

点击“Next step”进入检测界面

错误: 此处有错误提示,意识是PHP无法识别“data.timezone”(时区)

解决办法:编辑PHP配置文件,更改时区

# 修改时区
[root@yt-04 ~]# vim /etc/php.ini 
date.timezone =Asia/Shanghai

# 重启httpd服务
[root@yt-05 ~]# systemctl restart httpd.service

浏览器刷新,问题解决!然后,继续点击“Next step”,配置数据库信息

点击“Next step”,设置服务器用户名(自定义)

继续点击“Next step”,至出现提示界面

已经安装完成!

# 切记:配置好了之后,第一件事情

# 更改密码!更改密码!更改密码!

# Administration→Users→Admin→Change password

# 并且在修改密码下,可以更改web界面为中文。

4. zabbix客户端配置

4.1 安装Zabbix客户端

# 下载指定版本
[root@yt-05 ~]# wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

# 安装zabbix的yum扩展源
[root@yt-05 ~]# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm

# client端仅仅只需要安装服务
[root@yt-05 ~]# yum install -y zabbix-agent

# 配置mysql
(略)

4.2 配置zabbix

[root@yt-05 ~]# vim /etc/zabbix/zabbix_agentd.conf
# 增加如下配置

Server=192.168.2.134
#定义监控服务端的ip
ServerActive=192.168.2.134
#定义监控服务端的ip,不过该参数决定了监控的 主/被动模式
#如果只有参数Server,则采用被动模式(只能等待服务端来采集信息)
#设置此参数,则为主动模式(客户端主动向服务端发送信息)
Hostname=yt-05 
#定义客户端主机名字,只是便于服务端识别,不参与实际的控制

# 启动zabbix服务
[root@yt-05 ~]# systemctl start zabbix-agent.service 

# 查看进程是否运行
[root@yt-05 ~]# ps aux | grep zabbix

# 查看监控的端口,默认端口是10050
[root@yt-05 ~]# netstat -lntp

# 设置为开机运行
[root@yt-05 ~]# systemctl enable zabbix-agent

5. 忘记Admin密码如何做

修改zabbix的管理员密码(web界面)这个和修改wordpress以及修改mysql自身登录密码是类似的,直接在数据库内选中数据库选中user表进行修改。

[root@yt-04 ~]# mysql -uroot
# 切换到zabbix库
> show databases;
> use zabbix;
> show tabales;
> desc users;

# 更改密码
mysql> update users set passwd=md5('123456') where alias='Admin';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> quit

这样就成功修改了zabbix管理web的登录密码为123456!

猜你喜欢

转载自my.oschina.net/zhouyuntai/blog/1788332
今日推荐