一、实验环境:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
[root@zabbixserver ~]
# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@zabbixserver ~]
# uname -r
3.10.0-327.el7.x86_64
[root@zabbixserver ~]
#
[root@zabbixserver ~]
# ifconfig eno16777736
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.98 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::20c:29ff:fef2:d583 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f2:d5:83 txqueuelen 1000 (Ethernet)
RX packets 150143 bytes 218651391 (208.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 30015 bytes 2046005 (1.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@zabbixserver ~]
#
|
二、安装软件包:
1
2
3
4
5
6
7
8
|
[root@zabbixserver tools]
# ll
total 65776
-rw-r--r-- 1 root root 523321 Jan 10 10:27 libmcrypt-2.5.7.
tar
.gz
-rw-r--r-- 1 root root 32167628 Nov 28 07:46 mysql-5.6.35.
tar
.gz
-rw-r--r-- 1 root root 910812 Oct 18 11:14 nginx-1.10.2.
tar
.gz
-rw-r--r-- 1 root root 18331135 Aug 6 2015 php-5.6.12.
tar
.gz
-rw-r--r-- 1 root root 15412400 Jan 10 12:01 zabbix-3.0.5.
tar
.gz
[root@zabbixserver tools]
#
|
三、安装步骤
(1)创建用户zabbix
1
2
3
4
|
[root@zabbixserver ~]
# useradd zabbix -s /sbin/nologin
[root@zabbixserver ~]
# id zabbix
uid=1000(zabbix) gid=1000(zabbix)
groups
=1000(zabbix)
[root@zabbixserver ~]
#
|
(2)安装执行编译MySQL的编译工具cmake,(从MySQL5.5以后编译用工具cmake)
1
2
|
[root@zabbixserver ~]
# yum -y install cmake cmake-devel
[root@zabbixserver ~]
#
|
(3)创建MySQL用户
1
2
3
4
|
[root@zabbixserver ~]
# useradd mysql -s /sbin/nologin
[root@zabbixserver ~]
# id mysql
uid=1001(mysql) gid=1001(mysql)
groups
=1001(mysql)
[root@zabbixserver ~]
#
|
(4)安装MySQL,用cmake编译,先安装依赖包openssl openssl-devel ncurses ncurses-devel
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
[root@zabbixserver ~]
# yum install -y openssl openssl-devel ncurses ncurses-devel
[root@zabbixserver ~]
# cd tools
[root@zabbixserver tools]
# tar xf mysql-5.6.35.tar.gz
[root@zabbixserver tools]
# cd mysql-5.6.35
[root@zabbixserver mysql-5.6.35]
#
[root@zabbixserver mysql-5.6.35]
# cmake \
-DCMAKE_INSTALL_PREFIX=
/usr/local/mysql
\
-DMYSQL_DATADIR=
/usr/local/mysql/data
\
-DSYSCONFDIR=
/etc
\
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=
/var/lib/mysql/mysql
.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_SSL=system
[root@zabbixserver mysql-5.6.35]
# make && make install
|
(5)配置MySQL
#修改MySQL安装目录权限
1
|
[root@zabbixserver mysql-5.6.35]
# chown -R mysql.mysql /usr/local/mysql/
|
#拷贝配置文件
1
|
[root@zabbixserver mysql-5.6.35]
# cp support-files/my-default.cnf /etc/my.cnf
|
#修改配置文件
1
2
3
4
5
6
7
8
9
10
11
|
[root@zabbixserver mysql-5.6.35]
# vim /etc/my.cnf
[client]
port = 3306
socket =
/usr/local/mysql/data/socket
[mysqld]
basedir =
/usr/local/mysql
datadir =
/usr/local/mysql/data
port = 3306
server_id = 1
socket =
/usr/local/mysql/data/socket
[root@zabbixserver mysql-5.6.35]
#
|
#初始化数据库生成数据库基本数据结构
1
|
[root@zabbixserver mysql-5.6.35]
# /usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
|
#拷贝MySQL数据库启动脚本,赋可执行权限并设置开机启动
1
2
3
4
5
6
|
[root@zabbixserver mysql-5.6.35]
# cp support-files/mysql.server /etc/init.d/mysqld
[root@zabbixserver mysql-5.6.35]
# chmod +x /etc/init.d/mysqld
[root@zabbixserver mysql-5.6.35]
# ll /etc/init.d/mysqld
-rwxr-xr-x 1 root root 10875 Jan 10 18:11
/etc/init
.d
/mysqld
[root@zabbixserver mysql-5.6.35]
#
[root@zabbixserver mysql-5.6.35]
# chkconfig mysqld on
|
#修改PATH变量
1
2
3
4
5
|
[root@zabbixserver mysql-5.6.35]
# echo 'export PATH=/usr/local/mysql/bin:$PATH'>>/etc/profile
[root@zabbixserver mysql-5.6.35]
# tail -1 /etc/profile
export
PATH=
/usr/local/mysql/bin
:$PATH
[root@zabbixserver mysql-5.6.35]
# source /etc/profile
[root@zabbixserver mysql-5.6.35]
#
|
#启动MySQL 测试是否登录
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
[root@zabbixserver mysql-5.6.35]
# /etc/init.d/mysqld start
Starting MySQL. SUCCESS!
[root@zabbixserver mysql-5.6.35]
# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection
id
is 1
Server version: 5.6.35 Source distribution
Copyright (c) 2000, 2016, Oracle and
/or
its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and
/or
its
affiliates. Other names may be trademarks of their respective
owners.
Type
'help;'
or
'\h'
for
help. Type
'\c'
to
clear
the current input statement.
mysql> \s
--------------
mysql Ver 14.14 Distrib 5.6.35,
for
Linux (x86_64) using EditLine wrapper
Connection
id
: 1
Current database:
Current user: root@localhost
SSL: Not
in
use
Current pager: stdout
Using outfile:
''
Using delimiter: ;
Server version: 5.6.35 Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket:
/usr/local/mysql/data/socket
Uptime: 8 sec
Threads: 1 Questions: 5 Slow queries: 0 Opens: 70 Flush tables: 1 Open tables: 63 Queries per second avg: 0.625
--------------
mysql>
|
#修改数据库密码,默认密码为空
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
mysql> SET PASSWORD FOR
'root'
@
'localhost'
= PASSWORD(
'root'
);
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
#删除不必要的用户
mysql>
select
user,host from user;
+------+--------------+
| user | host |
+------+--------------+
| root | 127.0.0.1 |
| root | ::1 |
| | localhost |
| root | localhost |
| | zabbixserver |
| root | zabbixserver |
+------+--------------+
6 rows
in
set
(0.00 sec)
mysql>
mysql> delete from user where user=
"root"
and host=
"::1"
;
Query OK, 1 row affected (0.00 sec)
mysql> delete from user where user=
""
and host=
"zabbixserver"
;
Query OK, 1 row affected (0.00 sec)
mysql>
select
user,host from user;
+------+--------------+
| user | host |
+------+--------------+
| root | 127.0.0.1 |
| | localhost |
| root | localhost |
| root | zabbixserver |
+------+--------------+
4 rows
in
set
(0.00 sec)
mysql> delete from user where user=
""
and host=
"localhost"
;
Query OK, 1 row affected (0.00 sec)
mysql>
select
user,host from user;
+------+--------------+
| user | host |
+------+--------------+
| root | 127.0.0.1 |
| root | localhost |
| root | zabbixserver |
+------+--------------+
3 rows
in
set
(0.00 sec)
mysql>
|
#创建zabbix访问MySQL的用户和存放zabbix的数据库zabbix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO
'zabbix'
@
'127.0.0.1'
IDENTIFIED BY
'zabbix'
WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
mysql> create database zabbix default charset utf8;
Query OK, 1 row affected (0.00 sec)
mysql>
select
user,host from user;
+--------+--------------+
| user | host |
+--------+--------------+
| root | 127.0.0.1 |
| zabbix | 127.0.0.1 |
| root | localhost |
| root | zabbixserver |
+--------+--------------+
4 rows
in
set
(0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
|
test
|
| zabbix |
+--------------------+
5 rows
in
set
(0.00 sec)
mysql>
|
(6)安装PHP
#安装依赖包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
[root@zabbixserver ~]
# yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-turbo-devel libpng-devel freetype-devel libmcrypt-devel
#创建启动PHP的用户和用户组,解压PHP压缩包进入压缩目录进行编译安装
[root@zabbixserver ~]
# useradd www -s /sbin/nologin
[root@zabbixserver ~]
# id www
uid=1002(www) gid=1002(www)
groups
=1002(www)
[root@zabbixserver ~]
#
[root@zabbixserver ~]
# cd tools
[root@zabbixserver tools]
# tar xf php-5.6.12.tar.gz
[root@zabbixserver tools]
# cd php-5.6.12
[root@zabbixserver php-5.6.12]
#
.
/configure
--prefix=
/usr/local/php
\
--with-config-
file
-path=
/usr/local/php/etc
\
--
enable
-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-iconv-
dir
\
--with-freetype-
dir
\
--with-jpeg-
dir
\
--with-png-
dir
\
--with-zlib \
--with-libxml-
dir
=
/usr
\
--
enable
-xml \
--disable-rpath \
--
enable
-bcmath \
--
enable
-shmop \
--
enable
-sysvsem \
--
enable
-inline-optimization \
--with-curl \
--
enable
-mbregex \
--
enable
-mbstring \
--with-mcrypt \
--
enable
-
ftp
\
--with-gd \
--
enable
-gd-native-ttf \
--with-openssl \
--with-mhash \
--
enable
-pcntl \
--
enable
-sockets \
--with-xmlrpc \
--
enable
-zip \
--
enable
-soap \
--without-pear \
--with-gettext \
--disable-fileinfo \
--
enable
-maintainer-zts
[root@zabbixserver php-5.6.12]
# make && make install
|
#配置PHP相关服务
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[root@zabbixserver php-5.6.12]
# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@zabbixserver php-5.6.12]
# cp php.ini-production /usr/local/php/etc/php.ini
[root@zabbixserver php-5.6.12]
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@zabbixserver php-5.6.12]
# chmod +x /etc/init.d/php-fpm
[root@zabbixserver php-5.6.12]
# ll /etc/init.d/php-fpm
-rwxr-xr-x 1 root root 2354 Jan 10 18:54
/etc/init
.d
/php-fpm
[root@zabbixserver php-5.6.12]
#
[root@zabbixserver php-5.6.12]
# chkconfig php-fpm on
[root@zabbixserver ~]
# service php-fpm start
Starting php-fpm
done
[root@zabbixserver ~]
# netstat -lnupt|grep php-fpm
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 51556
/php-fpm
: mast
[root@zabbixserver ~]
#
|
(7)安装Nginx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
[root@zabbixserver tools]
# tar xf nginx-1.10.2.tar.gz
[root@zabbixserver tools]
# cd nginx-1.10.2
[root@zabbixserver nginx-1.10.2]
# ./configure --prefix=/usr/local/nginx \
--pid-path=
/usr/local/nginx/nginx
.pid \
--error-log-path=
/usr/local/nginx/error
.log \
--http-log-path=
/usr/local/nginx/access
.log \
--with-http_ssl_module --with-mail \
--with-mail_ssl_module --with-stream \
--with-threads
[root@zabbixserver nginx-1.10.2]
# make && make install
[root@zabbixserver nginx-1.10.2]
# /usr/local/nginx/sbin/nginx -t
nginx: the configuration
file
/usr/local/nginx/conf/nginx
.conf syntax is ok
nginx: configuration
file
/usr/local/nginx/conf/nginx
.conf
test
is successful
[root@zabbixserver nginx-1.10.2]
# /usr/local/nginx/sbin/nginx
[root@zabbixserver nginx-1.10.2]
# netstat -lnupt|grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 54318
/nginx
: master
[root@zabbixserver nginx-1.10.2]
#
|
(8)安装zabbix
#安装依赖包
1
|
[root@zabbixserver tools]
# yum install -y net-snmp-devel libssh2-devel
|
#解压编译安装
1
2
3
4
5
6
7
8
|
[root@zabbixserver tools]
# tar xf zabbix-3.0.5.tar.gz
[root@zabbixserver tools]
# cd zabbix-3.0.5
[root@zabbixserver zabbix-3.0.5]
# ./configure --prefix=/usr/local/zabbix \
--
enable
-server --
enable
-agent \
--with-mysql --with-net-snmp \
--with-libcurl --with-libxml2 \
--with-ssh2
[root@zabbixserver zabbix-3.0.5]
# make && make install
|
#验证安装结果
1
2
3
4
5
6
7
8
|
[root@zabbixserver zabbix-3.0.5]
# /usr/local/zabbix/sbin/zabbix_server -V
zabbix_server (Zabbix) 3.0.5
Revision 62889 30 September 2016, compilation
time
: Jan 10 2017 19:04:09
Copyright (C) 2016 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http:
//gnu
.org
/licenses/gpl
.html>.
This is
free
software: you are
free
to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.
[root@zabbixserver zabbix-3.0.5]
#
|
#查看配置文件默认设置
1
2
3
4
5
6
7
|
[root@zabbixserver zabbix-3.0.5]
# egrep -v "^#|^$" /usr/local/zabbix/etc/zabbix_server.conf
LogFile=
/tmp/zabbix_server
.log
DBName=zabbix
DBUser=zabbix
Timeout=4
LogSlowQueries=3000
[root@zabbixserver zabbix-3.0.5]
#
|
#修改后为
1
2
3
4
5
6
7
8
9
10
|
[root@zabbixserver zabbix-3.0.5]
# egrep -v "^#|^$" /usr/local/zabbix/etc/zabbix_server.conf
LogFile=
/usr/local/zabbix/etc/log/zabbix_server
.log
PidFile=
/usr/local/zabbix/etc/zabbix_server
.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
Timeout=4
LogSlowQueries=3000
[root@zabbixserver zabbix-3.0.5]
#
|
#创建对应目录并修改属主和属组
1
2
3
|
[root@zabbixserver zabbix-3.0.5]
# mkdir -p /usr/local/zabbix/etc/log
[root@zabbixserver zabbix-3.0.5]
# chown -R zabbix.zabbix /usr/local/zabbix/*
[root@zabbixserver zabbix-3.0.5]
#
|
#导入zabbix数据到zabbix数据库,注意顺序,一定是schema.sql、images.sql、data.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
[root@zabbixserver zabbix-3.0.5]
# mysql -uzabbix -pzabbix -h127.0.0.1 zabbix < /root/tools/zabbix-3.0.5/database/mysql/schema.sql
[root@zabbixserver zabbix-3.0.5]
# mysql -uzabbix -pzabbix -h127.0.0.1 zabbix < /root/tools/zabbix-3.0.5/database/mysql/images.sql
[root@zabbixserver zabbix-3.0.5]
# mysql -uzabbix -pzabbix -h127.0.0.1 zabbix < /root/tools/zabbix-3.0.5/database/mysql/data.sql
[root@zabbixserver zabbix-3.0.5]
#
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>
mysql> show tables;
+----------------------------+
| Tables_in_zabbix |
+----------------------------+
| acknowledges |
| actions |
| alerts |
| application_discovery |
| application_prototype |
| application_template |
| applications |
| auditlog |
| auditlog_details |
| autoreg_host |
| conditions |
| config |
| dbversion |
| dchecks |
| dhosts |
| drules |
| dservices |
| escalations |
| events |
| expressions |
| functions |
| globalmacro |
| globalvars |
| graph_discovery |
| graph_theme |
| graphs |
| graphs_items |
| group_discovery |
| group_prototype |
|
groups
|
|
history
|
| history_log |
| history_str |
| history_text |
| history_uint |
| host_discovery |
| host_inventory |
| hostmacro |
| hosts |
| hosts_groups |
| hosts_templates |
| housekeeper |
| httpstep |
| httpstepitem |
| httptest |
| httptestitem |
| icon_map |
| icon_mapping |
| ids |
| images |
| interface |
| interface_discovery |
| item_application_prototype |
| item_condition |
| item_discovery |
| items |
| items_applications |
| maintenances |
| maintenances_groups |
| maintenances_hosts |
| maintenances_windows |
| mappings |
| media |
| media_type |
| opcommand |
| opcommand_grp |
| opcommand_hst |
| opconditions |
| operations |
| opgroup |
| opinventory |
| opmessage |
| opmessage_grp |
| opmessage_usr |
| optemplate |
| profiles |
| proxy_autoreg_host |
| proxy_dhistory |
| proxy_history |
| regexps |
| rights |
| screen_user |
| screen_usrgrp |
| screens |
| screens_items |
| scripts |
| service_alarms |
| services |
| services_links |
| services_times |
| sessions |
| slides |
| slideshow_user |
| slideshow_usrgrp |
| slideshows |
| sysmap_element_url |
| sysmap_url |
| sysmap_user |
| sysmap_usrgrp |
| sysmaps |
| sysmaps_elements |
| sysmaps_link_triggers |
| sysmaps_links |
| timeperiods |
| trends |
| trends_uint |
| trigger_depends |
| trigger_discovery |
| triggers |
|
users
|
| users_groups |
| usrgrp |
| valuemaps |
+----------------------------+
113 rows
in
set
(0.01 sec)
mysql>
|
#添加启动脚本赋予执行权限并修改
1
2
3
4
5
6
7
8
9
|
[root@zabbixserver zabbix-3.0.5]
# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd
[root@zabbixserver zabbix-3.0.5]
# cp misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server
[root@zabbixserver zabbix-3.0.5]
#
[root@zabbixserver zabbix-3.0.5]
# sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g" /etc/init.d/zabbix_server
[root@zabbixserver zabbix-3.0.5]
# sed -i "s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g" /etc/init.d/zabbix_agentd
[root@zabbixserver zabbix-3.0.5]
#
[root@zabbixserver zabbix-3.0.5]
# chmod +x /etc/init.d/zabbix_agentd
[root@zabbixserver zabbix-3.0.5]
# chmod +x /etc/init.d/zabbix_server
[root@zabbixserver zabbix-3.0.5]
#
|
#设置开机启动
1
2
3
|
[root@zabbixserver zabbix-3.0.5]
# chkconfig zabbix_server on
[root@zabbixserver zabbix-3.0.5]
# chkconfig zabbix_agentd on
[root@zabbixserver zabbix-3.0.5]
#
|
#设置zabbix支持Nginx+PHP组合访问
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
[root@zabbixserver zabbix-3.0.5]
# mkdir -p /data/web/site/www
[root@zabbixserver zabbix-3.0.5]
# cp -rfp frontends/php/* /data/web/site/www/ -R
[root@zabbixserver zabbix-3.0.5]
# chown -R root.root /data/web/site/www/
[root@zabbixserver zabbix-3.0.5]
#
[root@zabbixserver zabbix-3.0.5]
# cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
[root@zabbixserver zabbix-3.0.5]
# vim /usr/local/nginx/conf/nginx.conf
user root;
worker_processes 4;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application
/octet-stream
;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root
/data/web/site/www
;
index index.php index.html index.htm;
}
error_page 500 502 503 504
/50x
.html;
location =
/50x
.html {
root html;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
root
/data/web/site/www
;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
}
}
[root@zabbixserver zabbix-3.0.5]
# /usr/local/nginx/sbin/nginx -t
nginx: the configuration
file
/usr/local/nginx/conf/nginx
.conf syntax is ok
nginx: configuration
file
/usr/local/nginx/conf/nginx
.conf
test
is successful
[root@zabbixserver zabbix-3.0.5]
# /usr/local/nginx/sbin/nginx -s reload
[root@zabbixserver zabbix-3.0.5]
#
|
#清除防火墙策略
1
2
3
4
|
[root@zabbixserver zabbix-3.0.5]
# iptables -F
[root@zabbixserver zabbix-3.0.5]
# iptables -X
[root@zabbixserver zabbix-3.0.5]
# iptables -Z
[root@zabbixserver zabbix-3.0.5]
#
|
通过浏览器输入http://10.0.0.98进入安装zabbix界面
点击“Next step”
遇到上述错误是因为PHP配置文件/usr/local/php/etc/php.ini的中的默认参数不能满足zabbix要求,这里我们做如下调整:
1
2
3
4
5
6
7
8
9
|
post_max_size = 32M
max_execution_time = 300
max_input_time = 300
date
.timezone =
"Asia/Shanghai"
always_populate_raw_post_data = -1
[root@zabbixserver etc]
# service php-fpm restart
Gracefully shutting down php-fpm .
done
Starting php-fpm
done
[root@zabbixserver etc]
#
|
然后刷新页面即可,然后下一步
输入密码"zabbix",下一步
输入"127.0.0.1"之后直接下一步
接着下一步
再下一步
按照提示下载zabbix.conf.php文件放置于/data/web/site/www/conf目录下即可
1
2
3
4
5
6
7
8
9
10
11
|
[root@zabbixserver etc]
# cd /data/web/site/www/conf
[root@zabbixserver conf]
# rz
rz waiting to receive.
Starting zmodem transfer. Press Ctrl+C to cancel.
100% 415 bytes 415 bytes
/s
00:00:01 0 Errors
[root@zabbixserver conf]
# ll
total 12
-rw-r--r-- 1 root root 1036 Sep 30 05:42 maintenance.inc.php
-rw-r--r-- 1 root root 415 Jan 10 10:48 zabbix.conf.php
-rw-r--r-- 1 root root 411 Sep 30 05:42 zabbix.conf.php.example
[root@zabbixserver conf]
#
|
刷新页面,点击“finish”完成zabbix服务端的安装
编译安装zabbix常用参数
(1)同时安装sever和agent,并支持数据放入MySQL数据库中,可使用类似如下命令
./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-ipv6 --with-net-snmp --with-libcurl --with-ssh2
(2)如果仅安装server,并支持将数据放入MySQL数据中,可使用类似如下配置命令:
./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-libcurl
(3)如果仅仅安装proxy。并支持将数据放入MySQL数据库中,可使用类似如下命令
./configure --prefix=/usr/local/zabbix --enable-proxy --with-mysql --with-net-snmp --with-mysql --with-ssh2
a.创建数据库并授权(可以是本机数据库或者远程数据库)
create database zabbix_proxy;
grant all on zabbix_proxy.* to 'zabbix'@'localhost' identified by 'zabbix';
flush privileges;
b.导入zabbix默认数据文件
mysql -hhostname -uuser -ppassword zabbix_proxy < /root/tools/zabbix-3.0.5/database/mysql/schema.sql #proxy端只需要导入这个文件
c.修改配置文件zabbix_proxy.conf
Server=IP #zabbix服务端IP
Hostname=zabbix_proxy #必须和WEB页面添加代理时设置的名称一致
LogFile=/var/log/zabbix/zabbix_proxy.log
DBHost=localhost #数据库IP
DBName=zabbix_proxy #数据库名
DBUser=zabbix #数据库用户名
DBPassword=zabbix #数据库密码
(4)如果仅安装agent,可使用类似如下配置命令
./configure --prefix=/usr/local/zabbix --enable-agent
注意:在安装PHP时会出现一些错误,下面是一些常见错误解决方法
安装php遇到问题解决办法:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决办法
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
#解压
tar -zxvf libmcrypt-2.5.7.tar.gz
#进入目录
cd libmcrypt-2.5.7
#编译(默认安装到/usr/local/lib/)
./configure --prefix=/usr/local/libmcrypt
#执行安装
make && make install
configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no
解决方法一:
查看php官方文档解决. 在configure 里面加上 --with-libdir=lib64
解决方法二:
编辑/etc/ld.so.conf
根据系统,加入include /etc/ld.so.conf,
然后执行ldconfig,使其重新加载一次;(如果出错改为vi /etc/ld.so.conf >> include /usr/local/libmcrytp/lib/)
configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no
解决方法是:
echo /usr/local/mysql/lib >> /etc/ld.so.conf.d/mysql-x86_64.conf
ldconfig -v
本文转自027ryan 51CTO博客,原文链接:http://blog.51cto.com/ucode/1890923,如需转载请自行联系原作者