环境信息:
系统:rhel6.2
一、Nginx安装:
下载:http://nginx.org/en/download.html
[root@primary apps]# yum install pcre* openssl* gcc
[root@primary apps]# tar -xf nginx-1.14.2.tar.gz?
[root@primary apps]# cd nginx-1.14.2
[root@primary apps]# mkdir /usr/local/nginx-1.14.0
[root@primary nginx-1.14.2]# ./configure --prefix=/usr/local/nginx-1.14.2 --with-http_ssl_module --with-http_stub_status_module --with-pcre
参数含义:
--with-http_stub_status_module:支持nginx状态查询
--with-http_ssl_module:支持https
--with-pcre:为了支持rewrite重写功能,必须制定pcre
[root@primary nginx-1.14.2]# make && make install
启动:
[root@primary nginx-1.14.2]# /usr/local/nginx-1.14.2/sbin/nginx
关闭:
[root@primary nginx-1.14.2]# /usr/local/nginx-1.14.2/sbin/nginx -s stop
重置:当你有修改配置文件的时候,只需要reload即可
[root@primary nginx-1.14.2]# /usr/local/nginx-1.14.2/sbin/nginx -s reload
二、PHP安装:
下载:http://php.net/downloads.php
安装依赖包:
[root@primary apps]# yum install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel freetype-devel -y
[root@primary apps]# tar -xjf php-5.6.36.tar.bz2
[root@primary apps]# cd /apps/php-5.6.36
编译:./configure --prefix=/usr/local/php-5.6.36 --with-config-file-path=/usr/local/php-5.6.36/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64
安装:make && make install
配置文件:
[root@zabbix php-5.6.36]# cp /apps/php-5.6.36/php.ini-production /usr/local/php-5.6.36/etc/php.ini
[root@zabbix php-5.6.36]# cp /usr/local/php-5.6.36/etc/php-fpm.conf.default /usr/local/php-5.6.36/etc/php-fpm.conf
[root@zabbix php-5.6.36]# vi /usr/local/php-5.6.36/etc/php.ini
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone=Asia/Shanghai
启动:
/usr/local/php-5.6.36/sbin/php-fpm
查看:
netstat -lnt | grep 9000
==========================================================================
若bcmath检查项failed,需要执行此步骤:
[root@zabbix bcmath]# cd /apps/php-5.6.36/ext/bcmath
[root@zabbix bcmath]# /usr/local/php-5.6.36/bin/phpize
[root@zabbix bcmath]# ./configure --with-php-config=/usr/local/php-5.6.36/bin/php-config && make && make install
[root@zabbix bcmath]# cp /usr/local/php-5.6.36/lib/php/extensions/no-debug-non-zts-20131226/bcmath.so /apps/php-5.6.36/ext/bcmath/
[root@zabbix bcmath]# vi /usr/local/php-5.6.36/etc/php.ini 最后加一行:
extension=bcmath.so
[root@zabbix ~]# pkill php
[root@zabbix ~]# /usr/local/php-5.6.36/sbin/php-fpm
==========================================================================
三、Mysql安装:
下载:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
创建用户:
userdel -rf mysql
groupadd mysql -g 512
useradd -u 512 -g mysql -s /sbin/nologin -d /home/mysql mysql
rpm -e mysql
创建basedir:
cd /apps
tar -xvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql5.7.18
chown -R mysql:mysql /apps/mysql5.7.18
ln -s /apps/mysql5.7.18 /usr/local/mysql
创建datadir:
mkdir -p /data/mysql/mysql3306
chown -R mysql:mysql /data/mysql/mysql3306
编辑参数文件:
vi /data/mysql/mysql3306.cnf
[client]
port=3306
socket=/tmp/mysql_3306.sock
default-character-set=utf8
[mysql]
port=3306
socket=/tmp/mysql_3306.sock
default-character-set=utf8
[mysqld]
port=3306
character-set-server=utf8
socket=/tmp/mysql_3306.sock
basedir=/apps/mysql5.7.18
datadir=/data/mysql/mysql3306
explicit_defaults_for_timestamp=true
#lower_case_table_names=1
back_log=150
max_connections=3000
max_connect_errors=10
table_open_cache=2048
external-locking=FALSE
max_allowed_packet=32M
sort_buffer_size=8M
join_buffer_size=8M
thread_cache_size=8
query_cache_size=512M
query_cache_limit=4M
transaction_isolation=REPEATABLE-READ
tmp_table_size=96M
max_heap_table_size=96M
###***slow query parameters
long_query_time=1
slow_query_log = 1
slow_query_log_file=/data/mysql/mysql3306/slow.log
###***binlog parameters
log-bin=mysql-bin
binlog_cache_size=4M
max_binlog_cache_size=8M
max_binlog_size=1024M
binlog_format=statement
expire_logs_days=30
###***relay-log parameters
#relay-log=/data/3307/relay-bin
#relay-log-info-file=/data/3307/relay-log.info
#master-info-repository=table
#relay-log-info-repository=table
#relay-log-recovery=1
#***MyISAM parameters
key_buffer_size=32M
read_buffer_size=2M
read_rnd_buffer_size=16M
bulk_insert_buffer_size=64M
myisam_sort_buffer_size = 16M
myisam_max_sort_file_size = 16M
myisam_repair_threads = 1
skip-name-resolve
###***master-slave replication parameters
server-id=2238
#slave-skip-errors=all
#***Innodb storage engine parameters
innodb_buffer_pool_size=512M
innodb_data_file_path=ibdata1:10M:autoextend
#innodb_file_io_threads=8
#innodb_thread_concurrency=16
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=16M
innodb_log_file_size=128M
innodb_log_files_in_group=3
innodb_max_dirty_pages_pct=90
innodb_buffer_pool_dump_pct=90
innodb_lock_wait_timeout=2
innodb_file_per_table=on
[mysqldump]
quick
max_allowed_packet=32M
[myisamchk]
key_buffer=16M
sort_buffer_size=16M
read_buffer=8M
write_buffer=8M
[mysqld_safe]
open-files-limit=8192
#log-error=/data/mysql/error.log
#pid-file=/data/mysql/mysqld.pid
初始化数据:
/apps/mysql5.7.18/bin/mysqld --defaults-file=/data/mysql/mysql3306.cnf --user=mysql --datadir=/data/mysql/mysql3306 --basedir=/apps/mysql5.7.18 --initialize
注意:记住生成的临时密码
启动数据库:
/apps/mysql5.7.18/bin/mysqld_safe --defaults-file=/data/mysql/mysql3306.cnf &
修改密码:
/apps/mysql5.7.18/bin/mysql -uroot -p -S /tmp/mysql_3306.sock
use mysql;
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('rootpasswd');
grant all privileges on *.* to root@'%' identified by 'rootpasswd';
flush privileges;
创建数据库及数据初始化:
[root@zabbix mysql]# /apps/mysql5.7.17/bin/mysql -uroot -proot -S /tmp/mysql_3306.sock
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> quit;
[root@zabbix mysql]# /apps/mysql5.7.17/bin/mysql -uzabbix -pzabbix -S /tmp/mysql_3306.sock
mysql> use zabbix;
mysql> source schema.sql
mysql> source images.sql
mysql> source data.sql
四、配置nginx和php:
配置站点:
mkdir -p /data/logs/nginx/ # 用于存放nginx日志
mkdir -p /data/site/zabbix.jyg.com/zabbix # 站点根目录
vi /data/site/zabbix/info.php
phpinfo();
?>
配置nginx.conf文件:
[root@zabbix site]# cat /usr/local/nginx-1.14.0/conf/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 128k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 32k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
gzip_disable "MSIE [1-6].";
server_names_hash_bucket_size 128;
client_max_body_size 100m;
client_header_buffer_size 256k;
large_client_header_buffers 4 256k;
server {
listen 80;
server_name zabbix.jyg.com;
access_log /data/logs/nginx/zabbix.jyg.com.access.log;
index index.php index.html index.html info.php;
root /data/site/zabbix.jyg.com/zabbix;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
}
配置讲解:
nginx将会连接回环地址9000端口执行PHP文件,需要使用tcp/ip协议,速度比较慢.建议大家换成使用socket方式连接。将fastcgi_pass 127.0.0.1:9000;改成fastcgi_pass unix:/var/run/phpfpm.sock;
重新加载配置文件:/usr/local/nginx-1.14.0/sbin/nginx -s reload
windows下修改hosts文件:C:\Windows\System32\drivers\etc\hosts
192.168.212.214 zabbix.jyg.com
五、Zabbix安装:
源码下载:https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/
创建用户和组:
[root@zabbix ~]# groupadd zabbix
[root@zabbix ~]# useradd -g zabbix zabbix
先安装可能缺少的软件:
[root@zabbix zabbix-3.4.11]# rpm -i libevent-2.0.21-6.gf.el6.x86_64.rpm
[root@zabbix zabbix-3.4.11]# rpm -i libevent-devel-2.0.21-6.gf.el6.x86_64.rpm
[root@zabbix zabbix-3.4.11]# yum install libaio gcc libxml* unixODBC-devel mysql-devel net-snmp-devel libxml2-devel libcurl-devel libevent-devel pcre*
[root@zabbix zabbix-3.4.11]# vi /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/mysql/lib
编译:./configure --prefix=/usr/local/zabbix-3.4.11/ --enable-server --enable-agent --with-mysql=/apps/mysql5.7.17/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2
安装:make && make install
启动:/usr/local/zabbix-3.4.11/sbin/zabbix_server
[root@zabbix zabbix-3.4.11]# cp -r /apps/zabbix-3.4.11/frontends/php/* /data/site/zabbix.jyg.com/zabbix/
[root@zabbix zabbix-3.4.11]# /usr/local/nginx-1.14.0/sbin/nginx -s reload
访问:http://zabbix.jyg.com/
===========================================================================
修改页面登录密码:
mysql> use zabbix
mysql> select userid,alias,name,surname,passwd,url from users;
+--------+-------+--------+---------------+----------------------------------+-----+
| userid | alias | name | surname | passwd | url |
+--------+-------+--------+---------------+----------------------------------+-----+
| 1 | Admin | Zabbix | Administrator | 2fce1b3e54b120afeff237ce08c7cd66 | |
| 2 | guest | | | d31d8cd98f00b2r4e9800978ecf8426e | |
+--------+-------+--------+---------------+----------------------------------+-----+
2 rows in set (0.00 sec)
mysql> update users set passwd=md5("passwd") where userid='1';
Query OK, 1 row affected (0.11 sec)
超级用户登录使用:Admin/passwd
===========================================================================
六:zabbix客户端安装:
被监控服务器安装zabbix客户端:
[root@galera01 apps]# groupadd zabbix
[root@galera01 apps]# useradd -g zabbix zabbix
[root@galera01 apps]# tar -xf zabbix-3.4.11.tar.gz
[root@galera01 apps]# yum install libaio gcc libxml* unixODBC-devel mysql-devel net-snmp-devel libxml2-devel libcurl-devel libevent-devel pcre*
[root@galera01 apps]# ./configure --prefix=/usr/local/zabbix-3.4.11/ --enable-agent
[root@galera01 apps]# make
[root@galera01 apps]# make install
[root@galera01 apps]# vi /usr/local/zabbix-3.4.11/etc/zabbix_agentd.conf
LogFile=/tmp/myzabbix_agentd.log
Server=192.168.212.214
#指定一个监听端口
ListenPort=10050
#ListenIP可设置也可不设置
#以下是主动模式
#就是server的IP地址和server监听的端口,端口暂时不修改
ServerActive=192.168.212.214
#可以用IP
Hostname=192.168.212.214
#不允许root运行
AllowRoot=0
#让用户为zabbix
User=zabbix
启动客户端:
[root@galera01 apps]# /usr/local/zabbix-3.4.11/sbin/zabbix_agentd