1.1本实例运行环境说明: 操作系统版本:CentOS 7 首先,要先搭建Zabbix运行环境:LNMP(Linux + nginx+ MySQL + PHP(5.4以上)) CentOS 7 Ningx 1.9.10 Php7 Mysql 5.6 1.2安装包下载1.2.1官网安装包更新地址: http://www.zabbix.com/download.php
2.2 3.0 下载: cd /usr/local/src wget http://jaist.dl.sourceforge.net/ ... zabbix-3.0.0.tar.gz
2.3安装依赖包: yum install net-snmp-devel OpenIPMI-developenssl-devel fping-devel libcurl-devel perl-DBI gcc
2.4添加zabbix用户 useradd -d /usr/local/zabbix-3.0.0/lib/zabbix-s /sbin/nologin zabbix
2.安装及配置2.1源码包编译安装cd /usr/local/src tar xzvf zabbix-3.0.0.tar.gz cd zabbix-3.0.0 cd ./configure --prefix=/usr/local/zabbix--enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp--with-libcurl --with-libxml2 make install
2.2配置zabbix程序目录拥有权chown –R zabbix.zabbix /usr/local/zabbix
2.3添加端口vim /etc/services zabbix-agent 10050/tcp # Zabbix Agent zabbix-agent 10050/udp # Zabbix Agent zabbix-trapper 10051/tcp # Zabbix Trapper zabbix-trapper 10051/udp # Zabbix Trapper
2.4建立数据库及结构导入启动 mysql: service mysqld start mysql -uroot –p
建立zabbix数据库: mysql> create database zabbix characterset utf8 collate utf8_bin; mysql> grant all on zabbix.* to'zabbix'@'127.0.0.1' identified by '123' with grant option; #mariadb 数据库使用:mysql> grant all privileges on zabbix.* tozabbix@localhost identified by 'zabbix'; mysql> source/usr/local/src/zabbix-3.0.0/ mysql> flush privileges; mysql> exit;
从 zabbix 源码目录导入sql脚本: mysql –uroot –p密码 zabbix < /usr/local/src/zabbix-3.0.0/database/mysql/schema.sql mysql –uroot –p密码 zabbix < /usr/local/src/zabbix-3.0.0/database/mysql/data.sql mysql –uroot –p密码 zabbix < /usr/local/src/zabbix-3.0.0/database/mysql/images.sql
2.5修改zabbix配置文件cd /usr/local/zabbix/etc vi /usr/local/zabbix/etc/zabbix_server.conf DBName=zabbix #数据库名称 DBUser=zabbix #数据库用户名 DBPassword=123456 #数据库密码 ListenIP=127.0.0.1 #数据库ip地址
2.6添加zabbix服务启动及开机启动2.6.1从源码目录复制启动脚本到/etc/init.d/ cp /usr/local/src/zabbix-3.0.0/misc/init.d/fedora/core5/zabbix_server /etc/init.d/ cp /usr/local/src/zabbix-3.0.0/misc/init.d/fedora/core5/zabbix_agend /etc/init.d/
2.6.2设置运行权限 chmod 700 /etc/init.d/zabbix_*
2.6.3修改启动脚本程序目录正确路径 vim/etc/init.d/zabbix_server 修改: ZABBIX_BIN="/usr/local/sbin/zabbix_server" 为: ZABBIX_BIN="/usr/local/srcx/sbin/zabbix_server" vim/etc/init.d/zabbix_agentd 修改: ZABBIX_BIN="/usr/local/sbin/zabbix_agentd" 为: ZABBIX_BIN="/usr/local/src/sbin/zabbix_agentd"
2.6.4启动服务并设置开机启动 /etc/init.d/zabbix_server start /etc/init.d/zabbix_agentd start
2.6.5设置开机启动 chkconfig –level 2345 zabbix_server on chkconfig –level 2345 zabbix_agentd on
3. zabbix web 管理界面配置3.1 部署web 目录3.1.1从解压目录拷贝web代码 cp -rf /usr/local/src/zabbix-3.0.0/frontends/php /data/wwwroot/zabbix 代码目录 zabbix web 项目目录 3.1.2配置web目录权限归属为nginx运行用户www Chown –R www:www /data/wwwroot/zabbix
3.2 php配置3.2.1修改php/etc/php-fpm.d/www.conf.default或/etc/php.ini,下面值是最低要求: php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 # php_value date.timezone Europe/Riga
3.2.2修改php.ini vim /usr/local/php/etc/php.ini -----------------------------------------> date.timezone = Asia/Shanghai post_max_size = 16M max_execution_time = 300 max_input_time = 300
3.2.3启动php-fpm service php-fpm start 3.3修改nginx配置文件vi/usr/local/nginx/conf/vhost/zabbix.test.com.conf 输入: server { listen 80; server_name zabbix.test.com; #访问域名 access_log/data/wwwlogs/zabbix/zabbix.test.com_nginx.log combined; index index.html index.htm index.php; include /usr/local/nginx/conf/none.conf; root /data/wwwroot/zabbix; #web根目录
location ~ [^/]\.php(/|$) { #fastcgi_pass remote_php_ip:9000; fastcgi_passunix:/dev/shm/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; } location ~.*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ { expires 30d; access_log off; } location ~ .*\.(js|css)?$ { expires 7d; access_log off; } } 启动nginx service nginx start
3.4 web界面配置打开nginx 配置的域名链接http://zabbix.test.com/setup.php,按如下配置:
LNMP 平台 php7 ,zabbix 安装可能会出现的问题 always-populate-raw-post-data = -1,解决方案: vim /目录/zabbix/include/classes/setup/CFrontendSetup.php,找到下面代码、关于always-populate-raw-post-data;
添加 $current = -1;
public functioncheckPhpAlwaysPopulateRawPostData() { $current =ini_get('always_populate_raw_post_data'); $current = -1; return array( 'name' => _('PHPalways_populate_raw_post_data'), 'current' =>($current != -1) ? _('on') : _('off'), 'required' =>_('off'), 'result' =>($current != -1) ? self::CHECK_FATAL : self::CHECK_OK, 'error' => _('PHPalways_populate_raw_post_data must be set to -1.') ); }
再回到页面刷新,正常:
输入要连接的数据库地址及zabbix数据库名:
可默认,下一步:
显示确认信息,下一步:
提示安装成功:
输入默认用户:Admin,密码:zabbi,点击”Sign in”登录,进入zabbix 界面:
登录后页面:
到时此,zabbix 安装完成。
|