|
zabbix安装配置详解(一)
一、nginx安装
1.必要软件准备:
为了支持rewrite功能,我们需要安装pcre:
#yum install pcre-*
需要ssl的支持,如果不需要ssl支持,请跳过这一步:
#yum install openssl*
增加:
#yum install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel \
freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel
glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs \
e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel \
openldap openldap-devel nss_ldap openldap-clients openldap-servers mysql-devel -y
2.安装nginx:
#./configure \
--prefix=/usr/local/nginx-1.11.3 \
--with-http_ssl_module \
--with-http_spdy_module \
--with-http_stub_status_module \
--with-pcre
出现报错:
取消--with-http_spdy_module选项
#./configure \
--prefix=/usr/local/nginx-1.11.3 \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-pcre
编译安装成功 开启防火墙端口后测试
记得启动Nginx
注解:
--with-http_stub_status_module:支持nginx状态查询
--with-http_ssl_module:支持https
--with-http_spdy_module:支持google的spdy,想了解请百度spdy,这个必须有ssl的支持
--with-pcre:为了支持rewrite重写功能,必须制定pcre
二、编译安装php
1.下载php源码包
#http://cn2.php.net/get/php-7.0.10.tar.gz/from/this/mirror 2.安装依赖包,确保安装之前有安装gd,png,curl,xml等等lib开发库。如果不确定,执行以下命令:
#yum install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel -y 3.编译安装PHP-7.0.10
以下参数支持,ftp,图片函数,pdo等支持,因为使用了php自带的mysqlnd,所以不需要额外安装mysql的lib库了.如果你是64位系统,参数后面加上--with-libdir=lib64,如果不是可以跳过。
#./configure \
--prefix=/usr/local/php-7.0.10 \
--with-config-file-path=/usr/local/php-7.0.10/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
#make && make install
备注:如果PHP不需要curl和ftp的支持,可以将以上的--with-curl --enable-ftp去掉. 如果你是专业的linux从业人员,你完全可以看着help来选择你的安装参数,如果你不是的话,我建议你直接复制黏贴我的配置参数.这样可以少走一些弯路.
4.配置php:
#cp php.ini-production /usr/local/php-7.0.10/etc/php.ini
#cp /usr/local/php-7.0.10/etc/php-fpm.conf.default /usr/local/php-7.0.10/etc/php-fpm.conf
#cd /usr/local/php-7.0.9/etc/php-fpm.d
#cp www.conf.default www.conf
5.启动php-fpm:
#/usr/local/php-7.0.10/sbin/php-fpm
三、整合nginx和php
1.配置nginx的配置文件nginx.conf 内容如下:
先注释掉http段server{}的内容,再在http其中增加
server {
listen 80;
server_name localhost;
#access_log /data/logs/access.log main;
index index.php index.html index.html;
root /data/zabbix;
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;
}
}
2.测试:
#mkdir -p /data/zabbix
#cd /data/zabbix
#vim info.php
写入内容:
:wq 保存退出
浏览器地址栏输入:http://IP/info.php
四、安装mysql【此处使用yum安装】
1.安装
#yum install mysql mysql-server -y 2.启动
#service mysqld start 3.设置mysql的密码
#mysqladmin -uroot password 'root' 4.进入mysql
#mysql -uroot -p root 5.创建zabbix数据库
create database zabbix default charset utf8; 【default charset utf8:设置数据库为utf8,防止中文乱码】
6.使用数据库 查看数据库
use zabbix; show databases;
7.导入zabbix数据库文件
source /home/zabbix-3.0.4/database/mysql/schema.sql
source /home/zabbix-3.0.4/database/mysql/data.sql
source /home/zabbix-3.0.4/database/mysql/images.sql
8.退出数据库
quit
五、安装zabbix
1.安装:
#./configure \
--prefix=/usr/local/zabbix-3.0.4/ \
--enable-server \
--enable-agent \
--enable-proxy \
--with-mysql \
--with-net-snmp \
--with-libcurl \
--with-libxml2
提示报--with-net-snmp错
执行 yum install net-snmp.x86_64 net-snmp-devel.x86_64 安装后修复
#make
#make install
2.创建zabbix的用户组
#groupadd zabbix 3.在zabbix用户组中创建zabbix用户
#useradd -g zabbix zabbix 4.配置zabbix web管理界面
#cp -r /home/zabbix-3.0.4/frontends/php /data/zabbix 5.配置zabbix
【1】
#vim /usr/local/zabbix-3.0.4/etc/zabbix_server.conf
配置以下内容:
DBName=zabbix
DBUser=root
DBPassword=root
DBPort=3306
【2】
#cd /data/zabbix/php/conf
#cp zabbix.conf.php.example zabbix.conf.php
6.启动zabbix-server
#/usr/local/zabbix-3.0.4/sbin/zabbix_server 六、zabbix界面安装配置
1.【缺少组件,配置php.ini】
#vim /usr/local/php-7.0.10/etc/php.ini
配置内容如下:
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone PRC
配置后需重新启动php-fpm
2.【页面配置报错,提示不能连接数据库】
页面配置是报错,无法连接到数据库,原因读取不了mysql.sock文件
解决:ln -s /var/lib/mysql/mysql.sock /tmp/
也可以修改配置文件的mysql.sock的路径
七、最后附上界面图
浏览器输入http://192.168.xx.xx/zabbix,发现下面的报错
Error connecting to database: Access denied for user 'zabbix' @ 'localhost' to database 'zabbixdb'
问题分析:
数据库的配置肯定正确的,那么问题就可能是zabbix的配置文件不正确,而涉及的配置文件当时只知道有zabbix_server.conf
排查过程:
1.检查zabbix_server.conf配置文件,发现数据库配置也是正确的,但就是报上面的错误
2.最后通过网上搜索,发现
/data/zabbix/php/conf/zabbix.conf.php
文件里面也有数据库的配置不正确(见下面红色字体),修改后,可以正常显示zabbix页面
确定
$DB['DATABASE']
$DB['USER']
$DB['PASSWORD']
本文转载自:
http://www.cnblogs.com/chenjw-note/articles/5802120.html
|
|
|