zabbix监控平台安装

Linux监控平台介绍

  • cacti、nagios、zabbix、smokeping、open-falcon等等
  • cacti、smokeping偏向于基础监控,成图非常漂亮
  • cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
  • open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究
  • 后续以介绍zabbix为主

zabbix监控介绍

  • C/S架构,基于C++开发,监控中心支持web界面配置和管理
  • 单server节点可以支持上万台客户端 最新版本3.4,官方文档https://www.zabbix.com/manuals
  • 5个组件 zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据 数据存储 存放数据,比如mysql
  • web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因
  • zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力
  • zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报

安装zabbix

先下载rpm包,然后安装:

[root@zhangfei ~]# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

[root@zhangfei src]# rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
警告:zabbix-release-3.2-1.el7.noarch.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID a14fe591: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:zabbix-release-3.2-1.el7         ################################# [100%]

服务端安装:

[root@zhangfei src]# yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql

检查mysql是否启动:

[root@zhangfei src]# ps aux | grep mysql

若mysql启动失败,错误日志提示不能读写,则:

[root@zhangfei src]# chown -R mysql:mysql /data/mysql/

编辑配置文件(设置默认的字符集,因为后期zabbix的web界面设置成中文会显示有问题):

[root@zhangfei src]# vim /etc/my.cnf

在最前面加上:

character_set_server = utf8

然后重启mysql:

[root@zhangfei src]# systemctl restart mysql

登录mysql:

[root@zhangfei src]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.35-log MySQL Community Server (GPL)
mysql> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)

创建库并制定编码为utf8

创建用户,需要让 web代码连接mysql:

mysql> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'aming-zabbix';
Query OK, 0 rows affected (0.13 sec)

导入数据:

[root@zhangfei src]# cd /usr/share/doc/zabbix-server-mysql-3.2.7/
[root@zhangfei zabbix-server-mysql-3.2.7]# ls
AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README

解压压缩包:

[root@zhangfei zabbix-server-mysql-3.2.7]# gzip -d create.sql.gz
[root@zhangfei zabbix-server-mysql-3.2.7]# mysql -uroot -p94264334 zabbix < create.sql
Warning: Using a password on the command line interface can be insecure.
启动zabbix-server服务:
[root@zhangfei ~]# systemctl start zabbix-server

检查是否启动了nginx:

[root@zhangfei ~]# ps aux | grep nginx
root      2035  0.0  0.0  45480     0 ?        Ss   9月07   0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nobody    2040  0.0  0.0  47968     0 ?        S    9月07   0:00 nginx: worker process
nobody    2041  0.0  0.0  47968     0 ?        S    9月07   0:00 nginx: worker process
root      4700  1.0  0.1 112668   976 pts/0    S+   00:44   0:00 grep --color=auto nginx

关闭nginx:

[root@zhangfei ~]# /etc/init.d/nginx stop
Stopping nginx (via systemctl):                            [  确定  ]

确定是否监听80端口:

[root@zhangfei ~]# netstat -lntp |grep 80

启动htttpd:

[root@zhangfei ~]# systemctl start httpd

确定监听80端口:

[root@zhangfei ~]# netstat -lntp |grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      4752/httpd

若要开机启动:

[root@zhangfei ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@zhangfei ~]# 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.

将nginx禁止开机启动:

[root@zhangfei ~]# systemctl disable nginx
nginx.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig nginx off
[root@zhangfei ~]# chkconfig nginx off
[root@zhangfei ~]# ps aux | grep zabbix
zabbix    4697  0.0  0.6 255688  3412 ?        S    00:44   0:00 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
root      4896  0.0  0.1 112664   972 pts/0    S+   00:54   0:00 grep --color=auto zabbix

查看监听端口:

[root@zhangfei ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      1998/rpc.mountd     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1219/sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2189/master         
tcp        0      0 0.0.0.0:55294           0.0.0.0:*               LISTEN      1987/rpc.statd      
tcp        0      0 0.0.0.0:41601           0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::3306                 :::*                    LISTEN      4539/mysqld         
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::80                   :::*                    LISTEN      4752/httpd          
tcp6       0      0 :::20048                :::*                    LISTEN      1998/rpc.mountd     
tcp6       0      0 :::22                   :::*                    LISTEN      1219/sshd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      2189/master         
tcp6       0      0 :::36249                :::*                    LISTEN      1987/rpc.statd      
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
tcp6       0      0 :::41321                :::*                    LISTEN      -

可以看到没有zabbix,有进程没有监听端口

安装zabbix

查看日志:

[root@zhangfei ~]# less /var/log/zabbix/zabbix_server.log

日志表明连接不上mysql,需要改配置文件:

[root@zhangfei ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=127.0.0.1 //在DBName=zabbix上面增加
DBPassword=aming-zabbix //在DBuser下面增加

如果是远程机器,DBHost就要写远程的IP,前面mysql创建用户mysql> grant all on zabbix后面就要写web页面代码所在终端的IP

重启服务:

[root@zhangfei ~]# systemctl restart zabbix-server

查看进程以及监听端口:

[root@zhangfei ~]# ps aux | grep zabbix
zabbix    5089 12.7  0.8 255736  4148 ?        S    01:08   0:01 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
zabbix    5092  0.0  0.4 255736  2460 ?        S    01:08   0:00 /usr/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]
zabbix    5093  0.0  0.5 255736  2676 ?        S    01:08   0:00 /usr/sbin/zabbix_server: db watchdog [synced alerts config in 0.113135 sec, idle 60 sec]
zabbix    5094  3.2  1.0 362664  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: poller #1 [got 0 values in 0.000137 sec, idle 5 sec]
zabbix    5095  1.6  1.0 362664  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: poller #2 [got 0 values in 0.000145 sec, idle 5 sec]
zabbix    5096  3.6  1.0 362664  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: poller #3 [got 0 values in 0.000171 sec, idle 5 sec]
zabbix    5097  1.2  1.0 362664  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: poller #4 [got 0 values in 0.000047 sec, idle 5 sec]
zabbix    5098  8.4  1.0 360080  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: poller #5 [connecting to the database]
zabbix    5099  1.0  1.0 362664  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000098 sec, idle 5 sec]
zabbix    5100  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection]
zabbix    5101  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection]
zabbix    5102  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: trapper #3 [processed data in 0.000000 sec, waiting for connection]
zabbix    5104  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: trapper #4 [processed data in 0.000000 sec, waiting for connection]
zabbix    5105  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: trapper #5 [processed data in 0.000000 sec, waiting for connection]
zabbix    5106  0.0  0.4 258308  2460 ?        S    01:08   0:00 /usr/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000339 sec, idle 5 sec]
zabbix    5107  1.2  0.5 255736  2688 ?        S    01:08   0:00 /usr/sbin/zabbix_server: alerter [sent alerts: 0 success, 0 fail in 0.674769 sec, idle 30 sec]
zabbix    5110  0.0  0.5 255736  2464 ?        S    01:08   0:00 /usr/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]
zabbix    5112  0.0  0.5 255736  2688 ?        S    01:08   0:00 /usr/sbin/zabbix_server: timer #1 [processed 0 triggers, 0 events in 0.000000 sec, 0 maintenances in 0.000000 sec, idle 19 sec]
zabbix    5114  0.0  0.5 255736  2688 ?        S    01:08   0:00 /usr/sbin/zabbix_server: http poller #1 [got 0 values in 1.819002 sec, idle 5 sec]
zabbix    5115  0.6  1.0 360080  5004 ?        S    01:08   0:00 /usr/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.000000 sec, performing discovery]
zabbix    5116  0.0  0.5 255736  2692 ?        S    01:08   0:00 /usr/sbin/zabbix_server: history syncer #1 [synced 0 items in 0.000002 sec, idle 1 sec]
zabbix    5119  0.0  0.5 255736  2692 ?        S    01:08   0:00 /usr/sbin/zabbix_server: history syncer #2 [synced 0 items in 0.000001 sec, idle 1 sec]
zabbix    5120  0.0  0.5 255736  2692 ?        S    01:08   0:00 /usr/sbin/zabbix_server: history syncer #3 [synced 0 items in 0.000003 sec, idle 1 sec]
zabbix    5121  0.0  0.5 255736  2692 ?        S    01:08   0:00 /usr/sbin/zabbix_server: history syncer #4 [synced 0 items in 0.000002 sec, idle 1 sec]
zabbix    5122  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.001445 sec, idle 3 sec]
zabbix    5123  0.0  0.7 255736  3580 ?        S    01:08   0:00 /usr/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 proxies in 0.000036 sec, idle 5 sec]
zabbix    5124  0.0  0.4 255736  2460 ?        S    01:08   0:00 /usr/sbin/zabbix_server: self-monitoring [processed data in 0.000005 sec, idle 1 sec]
zabbix    5125  0.0  0.5 255736  2680 ?        S    01:08   0:00 /usr/sbin/zabbix_server: task manager [processed 0 task(s) in 0.061865 sec, idle 5 sec]
root      5133 15.5  0.1 112668   976 pts/0    S+   01:08   0:00 grep --color=auto zabbix
[root@zhangfei ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      1998/rpc.mountd     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1219/sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2189/master         
tcp        0      0 0.0.0.0:55294           0.0.0.0:*               LISTEN      1987/rpc.statd      
tcp        0      0 0.0.0.0:41601           0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      5089/zabbix_server  
tcp6       0      0 :::3306                 :::*                    LISTEN      4539/mysqld         
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::80                   :::*                    LISTEN      4752/httpd          
tcp6       0      0 :::20048                :::*                    LISTEN      1998/rpc.mountd     
tcp6       0      0 :::22                   :::*                    LISTEN      1219/sshd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      2189/master         
tcp6       0      0 :::36249                :::*                    LISTEN      1987/rpc.statd      
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
tcp6       0      0 :::10051                :::*                    LISTEN      5089/zabbix_server  
tcp6       0      0 :::41321                :::*                    LISTEN      -

浏览器打开http://192.168.137.20/zabbix/就会进入zabbix页面
进入下一个页面,看一下哪些不是OK,此时只有一个,是没有设置时区

设置时区

[root@zhangfei ~]# vim /etc/php.ini
date.timezone =Asia/Shanghai

重启apache:

[root@zhangfei ~]# systemctl restart httpd

刷新浏览器页面,此时全部都是OK

下一页,

Database host 127.0.0.1
Database port 0 //表示默认,3306端口
Password aming-zabbix

登录:

默认的用户名:Admin

默认的密码:zabbix

然后更改密码并将页面改成中文

忘记Admin密码如何做

更改数据库数据就OK

[root@zhangfei ~]# mysql -uroot -p94264334
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 213
Server version: 5.6.35-log MySQL Community Server (GPL)
mysql> use zabbix
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> desc users;
+----------------+---------------------+------+-----+---------+-------+
| Field          | Type                | Null | Key | Default | Extra |
+----------------+---------------------+------+-----+---------+-------+
| userid         | bigint(20) unsigned | NO   | PRI | NULL    |       |
| alias          | varchar(100)        | NO   | UNI |         |       |
| name           | varchar(100)        | NO   |     |         |       |
| surname        | varchar(100)        | NO   |     |         |       |
| passwd         | char(32)            | NO   |     |         |       |
| url            | varchar(255)        | NO   |     |         |       |
| autologin      | int(11)             | NO   |     | 0       |       |
| autologout     | int(11)             | NO   |     | 900     |       |
| lang           | varchar(5)          | NO   |     | en_GB   |       |
| refresh        | int(11)             | NO   |     | 30      |       |
| type           | int(11)             | NO   |     | 1       |       |
| theme          | varchar(128)        | NO   |     | default |       |
| attempt_failed | int(11)             | NO   |     | 0       |       |
| attempt_ip     | varchar(39)         | NO   |     |         |       |
| attempt_clock  | int(11)             | NO   |     | 0       |       |
| rows_per_page  | int(11)             | NO   |     | 50      |       |
+----------------+---------------------+------+-----+---------+-------+
16 rows in set (0.11 sec)
mysql> update users set passwd=md5('94264334') where alias='Admin';
Query OK, 0 rows affected (0.33 sec)
Rows matched: 1  Changed: 0  Warnings: 0

安装zabbix

在客户端:

[root@zhangfei src]# wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
[root@zhangfei src]# yum install -y zabbix-agent

编辑配置文件:

[root@zhangfei ~]# vim /etc/zabbix/zabbix_agentd.conf

Server=127.0.0.1
改成
Server=192.168.137.20

ServerActive=127.0.0.1
改成
ServerActive=192.168.137.20

Hostname=Zabbix server
改成
Hostname=客户端主机名

启动zabbix:

[root@zhangfei ~]# systemctl start zabbix-agent

查看进程和监听端口:

[root@zhangfei ~]# ps aux | grep zabbix-agent
root      2760  0.0  0.1 112664   976 pts/0    R+   02:21   0:00 grep --color=auto zabbix-agent
[root@zhangfei ~]# ps aux | grep zabbix
zabbix    2751  0.0  0.2  80100  1272 ?        S    02:20   0:00 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
zabbix    2752  0.0  0.2  80100  1252 ?        S    02:20   0:00 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
zabbix    2753  0.0  0.3  80100  1840 ?        S    02:20   0:00 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
zabbix    2754  0.0  0.3  80100  1840 ?        S    02:20   0:00 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
zabbix    2755  0.0  0.3  80100  1840 ?        S    02:20   0:00 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
zabbix    2756  0.0  0.4  80100  2148 ?        S    02:20   0:00 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
root      2762  0.0  0.1 112664   972 pts/0    R+   02:21   0:00 grep --color=auto zabbix
[root@zhangfei ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1787/nginx: master  
tcp        0      0 0.0.0.0:20048           0.0.0.0:*               LISTEN      1280/rpc.mountd     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1058/sshd           
tcp        0      0 0.0.0.0:49591           0.0.0.0:*               LISTEN      864/rpc.statd       
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2029/master         
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      1787/nginx: master  
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      2751/zabbix_agentd  
tcp        0      0 0.0.0.0:36997           0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::3306                 :::*                    LISTEN      2188/mysqld         
tcp6       0      0 :::42477                :::*                    LISTEN      864/rpc.statd       
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::20048                :::*                    LISTEN      1280/rpc.mountd     
tcp6       0      0 :::22                   :::*                    LISTEN      1058/sshd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      2029/master         
tcp6       0      0 :::35233                :::*                    LISTEN      -                   
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
tcp6       0      0 :::10050                :::*                    LISTEN      2751/zabbix_agentd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值