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安装参考:
zabbix3.4官方文档:https://www.zabbix.com/documentation/3.4/zh/start
zabbix官方下载地址:https://www.zabbix.com/download
- 需要使用的链接:
- 需要的软件包:
yum的方式安装rpm软件包,yum会自动解决软件包依赖问题。但是httpd服务软件和mysql数据库软件需要手动先安装。
10.3.1.2.1. 网络时间同步
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/rootecho "*/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
安装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%]
安装zabbix软件包:
注意
zabbix服务器也需要被监控,所以服务器端也安装zabbix客户端。
1[root@zzjlogin ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
把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. 配置数据库
mysql数据库启动创建密码
启动数据库,并配置密码:
1[root@zzjlogin ~]# /etc/init.d/mysqld start
2
3[root@zzjlogin ~]# /usr/bin/mysqladmin -u root password '123'
登陆数据库,清理空账号信息,创建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的。
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
修改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地址
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[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. 图形安装配置
10.3.1.5. 监控服务器自己
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