10.3.1. zabbix rpm安装

10.3.1.1. 环境

服务器系统环境:
系统:

CentOS6.6 64位

内核:

2.6.32

主机名:

zzjlogin

 1[root@zzjlogin ~]# hostname
 2zzjlogin
 3[root@zzjlogin ~]# uname -a
 4Linux zzjlogin 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
 5[root@zzjlogin ~]# uname -r
 62.6.32-504.el6.x86_64
 7[root@zzjlogin ~]# cat /etc/redhat-release
 8CentOS release 6.6 (Final)
 9
10[root@zzjlogin ~]# cat /proc/version
11Linux version 2.6.32-504.el6.x86_64 (mockbuild@c6b9.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) ) #1 SMP Wed Oct 15 04:27:16 UTC 2014
zabbix软件:

zabbix版本:3.4.14

1[root@zzjlogin ~]# rpm -qa zabbix*
2zabbix-server-mysql-3.4.14-1.el6.x86_64
3zabbix-release-3.4-1.el6.noarch
4zabbix-web-3.4.14-1.el6.noarch
5zabbix-agent-3.4.14-1.el6.x86_64
6zabbix-web-mysql-3.4.14-1.el6.noarch

客户端:

10.3.1.2. zabbix安装前准备

官方4.0LST rpm安装方法:

https://www.zabbix.com/documentation/4.0/zh/manual/installation/install_from_packages/rhel_centos

zabbix安装参考:
需要使用的链接:
需要的软件包:

yum的方式安装rpm软件包,yum会自动解决软件包依赖问题。但是httpd服务软件和mysql数据库软件需要手动先安装。

10.3.1.2.1. 网络时间同步

注意

如果时间没有和网络同步,yum安装会报错。

参考:

14: Peer cert cannot be verified or peer cert invalid

1[root@zzjlogin ~]# date
2Thu Sep  6 21:07:25 CST 2018
3[root@zzjlogin ~]# ntpdate pool.ntp.org
428 Sep 00:53:38 ntpdate[1577]: step time server 5.103.139.163 offset 1827966.915121 sec

10.3.1.2.2. 关闭selinux

注意

如果不关闭selinux也没有配置selinux。则安装以后zabbix会启动失败。会发现zabbix网页可以访问,但是提示zabbix服务没有启动。

永久关闭:

下面配置会让selinux的关闭重启系统后还是关闭状态。但是配置不会立即生效。

注意

通过 source /etc/selinux/config 也不能让修改的文件立即生效。所以需要下面的临时关闭的方式结合使用。

1[root@zzjlogin ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
2[root@zzjlogin ~]# grep SELINUX /etc/selinux/config
3# SELINUX= can take one of these three values:
4SELINUX=disabled
5# SELINUXTYPE= can take one of these two values:
6SELINUXTYPE=targeted
临时关闭:

下面配置是立即生效,但是系统重启后会失效。

1[root@zzjlogin ~]# getenforce
2Enforcing
3[root@zzjlogin ~]# setenforce 0
4[root@zzjlogin ~]# getenforce
5Permissive

10.3.1.2.3. 关闭防火墙

注意

防火墙一般都是关闭。如果不不关闭,也可以通过配置规则允许所有使用的端口被访问。

1[root@zzjlogin ~]# /etc/init.d/iptables stop
2iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
3iptables: Flushing firewall rules:                         [  OK  ]
4iptables: Unloading modules:                               [  OK  ]

关闭防火墙开机自启动

1[root@zzjlogin ~]# chkconfig iptables off

10.3.1.2.4. 系统准备命令集合

1ntpdate pool.ntp.org
2sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
3setenforce 0
4/etc/init.d/iptables stop
5chkconfig iptables off

注意

时间同步最好加入到定时任务。这样保证以后时间如果有错误的时候会自动更正。
  • echo "#time sysc by myhome at 2018-03-30" >>/var/spool/cron/root

  • echo "*/5 * * * * /usr/sbin/ntpdate pool.ntp.org >/dev/null 2&1" >>/var/spool/cron/root

10.3.1.2.5. LAMP安装

安装apache、php组件以及MySQL:

1[root@zzjlogin ~]# rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
2[root@zzjlogin ~]# yum install php56w php56w-gd php56w-mysql php56w-bcmath php56w-bcmath php56w-mbstring php56w-xml php56w-ldap -y
3
4[root@zzjlogin ~]# yum install mysql-devel mysql-server -y

检查安装结果:

 1[root@zzjlogin ~]# rpm -qa mysql*
 2mysql-5.1.73-8.el6_8.x86_64
 3mysql-libs-5.1.73-8.el6_8.x86_64
 4mysql-devel-5.1.73-8.el6_8.x86_64
 5mysql-server-5.1.73-8.el6_8.x86_64
 6[root@zzjlogin ~]# rpm -qa php httpd
 7httpd-2.2.15-69.el6.centos.x86_64
 8[root@zzjlogin ~]# rpm -qa php*
 9php56w-5.6.38-1.w6.x86_64
10php56w-bcmath-5.6.38-1.w6.x86_64
11php56w-cli-5.6.38-1.w6.x86_64
12php56w-gd-5.6.38-1.w6.x86_64
13php56w-mysql-5.6.38-1.w6.x86_64
14php56w-ldap-5.6.38-1.w6.x86_64
15php56w-pdo-5.6.38-1.w6.x86_64
16php56w-xml-5.6.38-1.w6.x86_64
17php56w-mbstring-5.6.38-1.w6.x86_64
18php56w-common-5.6.38-1.w6.x86_64

10.3.1.2.6. 配置PHP

注意

如果没有配置php下面信息。在配置完所有设置后。启动zabbix服务器,进行网页设置的时候会提示错误。提示页面会提示下面这些选项需要配置。

配置php配置文件:

1[root@zzjlogin ~]# sed -i 's#;date.timezone =#date.timezone = Asia/Shanghai#g' /etc/php.ini
2[root@zzjlogin ~]# sed -i 's#post_max_size = 8M#post_max_size = 32M#g' /etc/php.ini
3[root@zzjlogin ~]# sed -i 's#max_execution_time = 30#max_execution_time = 300#g' /etc/php.ini
4[root@zzjlogin ~]# sed -i 's#max_input_time = 60#max_input_time = 300#g' /etc/php.ini
5[root@zzjlogin ~]# sed -i 's#;always_populate_raw_post_data = -1#always_populate_raw_post_data = -1#g' /etc/php.ini

10.3.1.3. zabbix安装配置

10.3.1.3.1. 安装zabbix

  1. 安装zabbix官方源:

1[root@zzjlogin ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
2Retrieving http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
3Preparing...                ########################################### [100%]
4    1:zabbix-release         ########################################### [100%]
  1. 安装zabbix软件包:

注意

zabbix服务器也需要被监控,所以服务器端也安装zabbix客户端。

1[root@zzjlogin ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
  1. 把zabbix前端显示的页面放在apache网站目录:

1[root@zzjlogin zabbix]# cd /usr/share/zabbix
2[root@zzjlogin zabbix]# pwd
3/usr/share/zabbix
4[root@zzjlogin zabbix]# cp -ra * /var/www/html/

10.3.1.3.2. 配置数据库

  1. mysql数据库启动创建密码

启动数据库,并配置密码:

1[root@zzjlogin ~]# /etc/init.d/mysqld start
2
3[root@zzjlogin ~]# /usr/bin/mysqladmin -u root password '123'
  1. 登陆数据库,清理空账号信息,创建zabbix数据库,并创建授权访问数据库的用户:

  1[root@zzjlogin ~]# mysql -uroot -p
  2Enter password:
  3Welcome to the MySQL monitor.  Commands end with ; or \g.
  4Your MySQL connection id is 3
  5Server version: 5.1.73 Source distribution
  6
  7Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
  8
  9Oracle is a registered trademark of Oracle Corporation and/or its
 10affiliates. Other names may be trademarks of their respective
 11owners.
 12
 13Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 14
 15mysql> use mysql;
 16Reading table information for completion of table and column names
 17You can turn off this feature to get a quicker startup with -A
 18
 19Database changed
 20mysql> show databases;
 21+--------------------+
 22| Database           |
 23+--------------------+
 24| information_schema |
 25| mysql              |
 26| test               |
 27+--------------------+
 283 rows in set (0.00 sec)
 29
 30mysql> select user,host from user;
 31+------+-----------+
 32| user | host      |
 33+------+-----------+
 34| root | 127.0.0.1 |
 35|      | localhost |
 36| root | localhost |
 37|      | zzjlogin  |
 38| root | zzjlogin  |
 39+------+-----------+
 405 rows in set (0.00 sec)
 41
 42mysql> drop user ""@"localhost";
 43Query OK, 0 rows affected (0.00 sec)
 44
 45mysql> drop user ""@"zzjlogin";
 46Query OK, 0 rows affected (0.00 sec)
 47
 48mysql> drop user "root"@"zzjlogin";
 49Query OK, 0 rows affected (0.00 sec)
 50
 51mysql> select user,host from user;
 52+------+-----------+
 53| user | host      |
 54+------+-----------+
 55| root | 127.0.0.1 |
 56| root | localhost |
 57+------+-----------+
 582 rows in set (0.00 sec)
 59
 60mysql> select user,host,password from user;
 61+------+-----------+-------------------------------------------+
 62| user | host      | password                                  |
 63+------+-----------+-------------------------------------------+
 64| root | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
 65| root | 127.0.0.1 |                                           |
 66+------+-----------+-------------------------------------------+
 672 rows in set (0.00 sec)
 68
 69mysql> update user set password=password("123") where user="root" and host="127.0.0.1";
 70Query OK, 1 row affected (0.01 sec)
 71Rows matched: 1  Changed: 1  Warnings: 0
 72
 73mysql> select user,host,password from user;
 74+------+-----------+-------------------------------------------+
 75| user | host      | password                                  |
 76+------+-----------+-------------------------------------------+
 77| root | localhost | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
 78| root | 127.0.0.1 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
 79+------+-----------+-------------------------------------------+
 802 rows in set (0.00 sec)
 81
 82mysql> create database zabbix;
 83Query OK, 1 row affected (0.00 sec)
 84
 85mysql> show databases;
 86+--------------------+
 87| Database           |
 88+--------------------+
 89| information_schema |
 90| mysql              |
 91| test               |
 92| zabbix             |
 93+--------------------+
 944 rows in set (0.00 sec)
 95
 96mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
 97Query OK, 0 rows affected (0.00 sec)
 98
 99mysql> exit
100Bye

小技巧

  • mysql数据库授权zabbix用户的时候的访问IP localhost 是本地主机。此时只能通过localhost来登陆,不能通过127.0.0.1登陆,也不能通过系统IP登陆。

  • 如果mysql授权访问用户通过IP访问需要授权方式是:grant all privileges on zabbix.* to zabbix@192.168.161.132 identified by ‘password’;

注意

这些表信息是zabbix已经提供的,直接导入即可,如果不导入数据库,是不能访问zabbix的。

  1. zabbix数据库文件导入MySQL数据库:

1[root@zzjlogin ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.14/
2[root@zzjlogin zabbix-server-mysql-3.4.14]# ls
3AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
4[root@zzjlogin zabbix-server-mysql-3.4.14]# zcat create.sql.gz | mysql -uroot -p123 zabbix
  1. 修改zabbix服务器配置信息:

1[root@zzjlogin zabbix-3.4.13]# vim /etc/zabbix/zabbix_server.conf
2
3DBHost=localhost  数据库ip地址
4DBName=zabbix
5DBUser=zabbix
6DBPassword=password
7ListenIP=192.168.161.132        #zabbix server ip地址
  1. zabbix服务器启动

zabbix服务器启动需要先启动MySQL和httpd(apache/nginx)

启动mysql数据库:

1[root@zzjlogin zabbix-3.4.13]# /etc/init.d/mysqld start

启动httpd服务:

1[root@zzjlogin zabbix-3.4.13]# /etc/init.d/httpd start

启动zabbix服务器的zabbix客户端:

1[root@zzjlogin zabbix-server-mysql-3.4.14]# /etc/init.d/zabbix-agent start
2Starting Zabbix agent:                                     [  OK  ]

启动zabbix服务器的zabix服务端软件:

1[root@zzjlogin zabbix-server-mysql-3.4.14]# /etc/init.d/zabbix-server start
2Starting Zabbix server:                                    [  OK  ]
  1. 查看服务器是否启动

 1[root@zzjlogin zabbix-server-mysql-3.4.14]# ss -lntu
 2Netid State      Recv-Q Send-Q                          Local Address:Port                            Peer Address:Port
 3udp   UNCONN     0      0                                           *:68                                         *:*
 4tcp   LISTEN     0      128                                        :::22                                        :::*
 5tcp   LISTEN     0      128                                         *:22                                         *:*
 6tcp   LISTEN     0      100                                       ::1:25                                        :::*
 7tcp   LISTEN     0      100                                 127.0.0.1:25                                         *:*
 8tcp   LISTEN     0      128                                        :::10050                                     :::*
 9tcp   LISTEN     0      128                                         *:10050                                      *:*
10tcp   LISTEN     0      128                           192.168.161.132:10051                                      *:*
11tcp   LISTEN     0      50                                          *:3306                                       *:*
12tcp   LISTEN     0      128                                        :::80                                        :::*
13[root@zzjlogin zabbix-server-mysql-3.4.14]#

至此zabbix可以访问。然后通过浏览器输入zabbix服务器IP地址,然后通过网页配置zabbix即可。

10.3.1.3.3. 开机自启动

方法1:

1[root@zzjlogin ~]# chkconfig httpd on
2[root@zzjlogin ~]# chkconfig mysqld on
3[root@zzjlogin ~]# chkconfig zabbix-agent on
4[root@zzjlogin ~]# chkconfig zabbix-server on

方法2:

1[root@zzjlogin ~]# echo "/etc/init.d/mysqld start" >>/etc/rc.local
2[root@zzjlogin ~]# echo "/etc/init.d/httpd start" >>/etc/rc.local
3[root@zzjlogin ~]# echo "/etc/init.d/zabbix-agent start" >>/etc/rc.local
4[root@zzjlogin ~]# echo "/etc/init.d/zabbix-server start" >>/etc/rc.local

10.3.1.3.4. zabbix服务器安装配置命令集合

 1ntpdate pool.ntp.org
 2sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
 3setenforce 0
 4getenforce
 5/etc/init.d/iptables stop
 6chkconfig iptables off
 7rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
 8yum install php56w php56w-gd php56w-mysql php56w-bcmath php56w-bcmath php56w-mbstring php56w-xml php56w-ldap -y
 9yum install mysql-devel mysql-server -y
10
11sed -i 's#;date.timezone =#date.timezone = Asia/Shanghai#g' /etc/php.ini
12sed -i 's#post_max_size = 8M#post_max_size = 32M#g' /etc/php.ini
13sed -i 's#max_execution_time = 30#max_execution_time = 300#g' /etc/php.ini
14sed -i 's#max_input_time = 60#max_input_time = 300#g' /etc/php.ini
15sed -i 's#;always_populate_raw_post_data = -1#always_populate_raw_post_data = -1#g' /etc/php.ini
16
17yum install zabbix-get -y
18rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
19yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
20cd /usr/share/zabbix
21cp -ra * /var/www/html/
22
23/etc/init.d/mysqld start
24/usr/bin/mysqladmin -u root password '123'
25mysql -uroot -p
26
27use mysql;
28drop user ""@"localhost";
29drop user ""@"zzjlogin";
30drop user "root"@"zzjlogin";
31use mysql;
32update user set password=password("123") where user="root" and host="127.0.0.1";
33create database zabbix;
34grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
35grant all privileges on zabbix.* to zabbix@192.168.161.132 identified by 'password';
36flush privileges;
37exit
38cd /usr/share/doc/zabbix-server-mysql-*
39zcat create.sql.gz | mysql -uroot -p123 zabbix
40
41sed -i 's/# DBHost=localhost/DBHost=192.168.161.132/g' /etc/zabbix/zabbix_server.conf
42sed -i 's/# DBPassword=/DBPassword=password/g' /etc/zabbix/zabbix_server.conf
43sed -i 's/# ListenIP=127.0.0.1/# ListenIP=192.168.161.132/g' /etc/zabbix/zabbix_server.conf
44
45
46
47sed -i "277i ServerName 127.0.0.1:80" /etc/httpd/conf/httpd.conf
48
49/etc/init.d/mysqld start
50/etc/init.d/httpd start
51/etc/init.d/zabbix-agent start
52/etc/init.d/zabbix-server start
53
54echo "/etc/init.d/mysqld start" >>/etc/rc.local
55echo "/etc/init.d/httpd start" >>/etc/rc.local
56echo "/etc/init.d/zabbix-agent start" >>/etc/rc.local
57echo "/etc/init.d/zabbix-server start" >>/etc/rc.local

10.3.1.4. 图形安装配置

../../../../_images/zabbix001.png ../../../../_images/zabbix002.png ../../../../_images/zabbix003.png ../../../../_images/zabbix004.png ../../../../_images/zabbix005.png ../../../../_images/zabbix006.png ../../../../_images/zabbix007.png ../../../../_images/zabbix008.png

10.3.1.5. 监控服务器自己

../../../../_images/zabbix-config001.png

10.3.1.6. zabbix客户端安装配置

客户端环境:
  • 系统: 和服务器端一致(可以不一致)

  • 客户端软件:

 1[root@client ~]# rpm -ivh https://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
 2Retrieving https://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
 3Preparing...                ########################################### [100%]
 41:zabbix-release         ########################################### [100%]
 5
 6[root@client ~]# yum install zabbix-agent -y
 7Loaded plugins: fastestmirror, security
 8Setting up Install Process
 9Loading mirror speeds from cached hostfile
10* base: mirror.bit.edu.cn
11* extras: mirror.bit.edu.cn
12* updates: mirrors.tuna.tsinghua.edu.cn
13Resolving Dependencies
14--> Running transaction check
15---> Package zabbix-agent.x86_64 0:3.4.14-1.el6 will be installed
16--> Finished Dependency Resolution
17
18Dependencies Resolved
19
20=========================================================================================================================
21Package                        Arch                     Version                          Repository                Size
22=========================================================================================================================
23Installing:
24zabbix-agent                   x86_64                   3.4.14-1.el6                     zabbix                   362 k
25
26Transaction Summary
27=========================================================================================================================
28Install       1 Package(s)
29
30Total size: 362 k
31Installed size: 1.4 M
32Downloading Packages:
33warning: rpmts_HdrFromFdno: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
34Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
35Importing GPG key 0xA14FE591:
36Userid : Zabbix LLC <packager@zabbix.com>
37Package: zabbix-release-3.4-1.el6.noarch (installed)
38From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
39Running rpm_check_debug
40Running Transaction Test
41Transaction Test Succeeded
42Running Transaction
43Warning: RPMDB altered outside of yum.
44Installing : zabbix-agent-3.4.14-1.el6.x86_64                                                                      1/1
45Verifying  : zabbix-agent-3.4.14-1.el6.x86_64                                                                      1/1
46
47Installed:
48zabbix-agent.x86_64 0:3.4.14-1.el6
49
50Complete!

客户端配置:

1[root@client ~]# cp -a /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.`date '+%F'`
2[root@client ~]# sed -ir 's#^Server=127.0.0.1#Server=192.168.161.132#g' /etc/zabbix/zabbix_agentd.conf
3[root@client ~]# grep "Server=192.168.161.132" /etc/zabbix/zabbix_agentd.conf
4Server=192.168.161.132

注意

如果配置客户端主动向zabbix服务器注册需要添加: sed -ir 's#^ServerActive=127.0.0.1#ServerActive=192.168.161.132#g' /etc/zabbix/zabbix_agentd.conf zabbix服务器也需要添加对应的action。

启动客户端:

1[root@client ~]# /etc/init.d/zabbix-agent start
2Starting Zabbix agent:                                     [  OK  ]

开机自启动zabbix客户端:

方法1:

1[root@client ~]# chkconfig zabbix-agent on

方法2:

1[root@client ~]# echo '############################' >>/etc/rc.local
2[root@client ~]# echo '#add by zzj at 20180930' >>/etc/rc.local
3[root@client ~]# echo '/etc/init.d/zabbix-agent start' >>/etc/rc.local

10.3.1.6.1. zabbix客户端安装配置命令集合

 1rpm -ivh https://repo.zabbix.com/zabbix/3.4/rhel/6/x86_64/zabbix-release-3.4-1.el6.noarch.rpm
 2yum install zabbix-agent -y
 3cp -a /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.`date '+%F'`
 4
 5sed -ir 's#^Server=127.0.0.1#Server=192.168.161.132#g' /etc/zabbix/zabbix_agentd.conf
 6grep "Server=192.168.161.132" /etc/zabbix/zabbix_agentd.conf
 7
 8/etc/init.d/zabbix-agent start
 9echo '############################' >>/etc/rc.local
10echo '#add by zzj at 20180930' >>/etc/rc.local
11echo '/etc/init.d/zabbix-agent start' >>/etc/rc.local