本文共 6005 字,大约阅读时间需要 20 分钟。
LNMP环境下安装zabbix3.2.11
安装环境:centos6.5zabbix_server:192.168.100.3zabbix_agent:192.168.100.41、安装前准备工作
1.确保服务器可以连接外网或者能下载相应的软件包即可。nginx安装官网下载地址: php安装官网下载地址: mysql安装官网下载地址:zabbix安装官网下载地址:mysql也可以使用mariaDB替代,功能和mysql几乎一致,只是mariaDB是完全开源的。mariaDB下载地址:我这里的版本组合如下:
MySQL5.1.40php-5.6.33nginx/1.12.2zabbix-3.2.112、MYSQL安装
mysql官网下载地址:选择x64源码安装包进行下载:将安装文件放在/usr/local/src/下
卸载和删除mysql原有的相关内容:
userdel -r mysqlgroudel mysqlfind / -name "mysql" -exec rm -rf {} \;
新建mysql用户、用户组:
groupadd mysqluseradd -s /sbin/nologin -g mysql mysql
解压文件,并赋予文件夹相关权限:
cd /usr/local/srctar -zxvf mysql-5.1.40-linux-x86_64-glibc23.tar.gzmv mysql-5.1.40-linux-x86_64-glibc23 /usr/local/mysqlchmod -R 755 /usr/local/mysqlchown -R mysql.mysql /usr/local/mysql
创建单独的数据安装文件:
mkdir -p /data/mysqlchmod -R 755 /data/chown -R mysql.mysql /data/mysql
开始安装数据库:
cd /usr/local/mysql./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
echo $?
返回0表示安装成功。拷贝启动配置文件
cp support-files/mysql.server /etc/init.d/mysqldchmod 755 /etc/init.d/mysqld
修改启动脚本
vi /etc/mysql.dmysqld
查找到datadir变量的值,修改这个变量的值,这样后续的文件就存储在自己指定的目录。datadir=/data/mysql
把启动脚本加入系统服务项,并设定开启自启动,启动mysql
chkconfig --add mysqldchkconfig mysqld onservice mysqld start;
添加环境变量:
echo "export MYSQL_PATH=/usr/local/mysql" >> ~/.bash_profileecho "export PATH=$PATH:$MYSQL_PATH/bin" >> ~/.bash_profilesource .bash_profile
修改root密码:
mysqladmin -uroot password 123456
登录mysql服务器:
mysql -uroot -p123456
3、编译安装PHP
将php-5.6.33.tar.gz安装包解压至usr/local/src目录tar -xf php-5.6.33.tar.gz -C /usr/local/srccd /usr/local/src/php-5.6.33/
开始编译安装,安装参数参考下面说明:
PHP配置参数zabbix对PHP参数、PHP模块有特殊要求,如下模块要特别留意加上bcmath --enable-bcmathmbstring --enable-mbstringsockets --enable-socketsgd --with-gdlibxml --with-libxml-dir=/usr/localxmlwriter 同上xmlreader 同上ctype 默认支持session 默认支持gettext 默认支持以下是我PHP的配置参数./configure --prefix=/usr/local/php-5.6.33 --with-config-file-path=/usr/local/php-5.6.33/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 --enable-bcmath
编译完成后执行 echo $? 返回如果是0表示编译成功,继续后面的安装操作:make && make install
此时php-5.6.33已经安装在 /usr/local/php-5.6.33目录下。复制php运行配置文件 cp -rf /usr/local/src/php-5.6.33/php.ini-production /usr/local/php-5.6.33/etc/php.inicp -rf /usr/local/php-5.6.33/etc/php-fpm.conf.default /usr/local/php-5.6.33/etc/php-fpm.conf
继续修改/usr/local/php-5.6.33/etc/php.ini文件中如下几个参数,否则后面zabbix不能通过。
max_execution_time = 300memory_limit = 128Mpost_max_size = 16Mupload_max_filesize = 2Mmax_input_time = 300always_populate_raw_post_data = -1date.timezone = Asia/Shanghai
启动php-fpm:
/usr/local/php-5.6.33/sbin/php-fpm
检查php-fpm是否正常工作,通过下面的命令查看9000端口是否已经监听。
netstat -ano|grep :9000
4、安装zabbix
安装依赖包:yum install net-snmp-devel libxml2-devel libcurl-devel
将下载好的 zabbix-3.2.11.tar.gz 解压至 /usr/local/src/目录
tar -xf zabbix-3.2.11.tar.gz -C /usr/local/src/cd /usr/local/src/zabbix-3.2.11./configure --prefix=/usr/local/zabbix-3.2.11/ --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2make && make install
此时zabbix-server上面上已经同时安装了zabbix_server和zabbix_agent
mysql> grant all privileges on *.* to zabbix@'localhost' identified by 'zabbix';mysql> create database zabbix default charset utf8;
按照顺序导入3个sql:
mysql -uzabbix -pzabbix zabbix < schema.sqlmysql -uzabbix -pzabbix zabbix < images.sqlmysql -uzabbix -pzabbix zabbix < data.sql
cd /usr/local/zabbix-3.2.11/etc/
DBName=zabbixDBUser=zabbixDBPassword=zabbixDBPort=3306
这里zabbix_agent.conf其实可以不用修改,用默认的启动就好,其他的主机需要修改这个文件。
创建zabbix用户:groupadd zabbix useradd -g zabbix zabbix
启动zabbix_server/zabbix_agent:
/usr/local/zabbix-3.2.11/sbin/zabbix_server/usr/local/zabbix-3.2.11/sbin/zabbix_agent
6.安装nginx1.12.2
安装pcre,用来支持rewriteyum -y install pcre*
安装 openssl yum -y install openssl*
将nginx-1.12.2-tar.gz解压至/usr/local/src目录
tar -xf nginx-1.12.2-tar.gz -C /usr/local/src/cd /usr/local/src/nginx-1.12.2./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_spdy_module --with-http_stub_status_module --with-pcremake && make install
如果没有报错,表示nginx已经安装至 /usr/local/nginx目录
编译参数说明:--with-http_stub_status_module:支持nginx状态查询--with-http_ssl_module:支持https--with-http_spdy_module:支持google的spdy,想了解请百度spdy,这个必须有ssl的支持--with-pcre:为了支持rewrite重写功能,必须制定pcre7.修改nginx配置,拷贝前段文件至nginx的根目录
mkdir /data/logs/nginxmkdir /data/site/zabbixcp -rf /usr/local/src/zabbix-3.2.11/frontends/php/* /data/site/zabbix
修改nginx配置文件 vim /usr/local/nginx/conf/nginx.conf
server { listen 80; server_name localhost; index index.html index.php index.html ; root /data/site; #charset koi8-r; #access_log logs/host.access.log main; location / { try_files $uri $uri/ /index.php?$args; }location ~ .*\.(php)?${expires -1s;try_files $uri =404;fastcgi_split_path_info ^(.+\.php)(/.+)$;include fastcgi_params;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_pass 127.0.0.1:9000;}
测试nginx配置文件: /usr/local/nginx/sbin/nginx -t
启动nginx :/usr/local/nginx/sbin/nginx
平滑重启nginx:/usr/local/nginx/sbin/nginx -s reload 8.界面配置zabbix
确保上面的服务都启动以后,浏览器访问开始设置zabbix遇到相应的问题再进行调试。9.zabbix监控中文乱码问题
将windows下的字体复制一份到zabbix的fonts目录,然后修改相应的php脚本即可。C:\Windows\Fonts\simkai.ttf(楷体)上传到服务器zabbix网站目录fonts目录下cd /data/site/zabbix/sed -i 's/DejaVuSas/simkai/g' ./include/defines.inc.php
修改完毕后不用重启服务即可查看生效情况。
参考文献:
Linux安装:NGINX安装:PHP安装+NGINX配置: (安装前一定要看1.1 PHP安装参数)MYSQL安装:转载于:https://blog.51cto.com/xushaojie/2072876