概述:在CentOS 7 64位操作系统环境下搭建LNMP(Linux+Nginx+MySQL+PHP)来运行Zabbix 3.4 监控程序

预先安装:

yum install -y autoconf make automake imake cmake gcc gcc-c++ libaio libaio-devel bzr bison expat-devel libtool ncurses5-devel gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel
yum install pcre*
yum install openssl* yum install epel-release
yum clean all
yum repolist

第一部分:安装MySQL 5.7

1. 首先下载MySQL Yum repository,CentOS 7对应的下载链接如下

wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

2. 下载完成之后安装下载好的rpm文件

yum localinstall mysql57-community-release-el7-7.noarch.rpm

3.  安装完成之后验证MySQL YUM repository

yum repolist enabled | grep "mysql.*-community.*"

如下图所示,表示验证成功:

4. 安装最新版的MySQL

yum install mysql-community-server

5. 安装完成之后启动并查看MySQL状态:

service mysqld start
service mysqld status

6. 手动验证MySQL安装的版本:

mysql --version

7. 安装MySQL 5.7之后,MySQL会生成一个随机密码在/var/log/mysqld.log文件中,使用如下命令查看密码:

grep 'temporary password' /var/log/mysqld.log

8. 记录密码之后,运行 mysql_secure_installation初始化MySQL,初始化过程中会提示输入随机密码

mysql_secure_installation

9. 使用新设置的密码连接MySQL:

mysql -u root -p

10. 至此,MySQL 5.7安装完成。

第二部门  安装Nginx

1. 首先下载Nginx的最新稳定版,本示例使用的版本是1.10,下载之后解压压缩包:

tar zxvf nginx-1.10.1.tar.gz

2. 进入解压之后的Nginx目录,运行configure

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre

3. 编译安装

make
make install

4. 测试Nginx

/usr/local/nginx/sbin/nginx -t

5. 防火墙开放80端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

第三部分  安装PHP

1. 首先安装开发软件包:

yum -y groupinstall  "Development Tools"

2. 下载PHP最新稳定版,解压安装包,本示例使用的是PHP 5.6.25

tar -zxvf php-5.6.25.tar.gz

3. 切换到PHP目录,运行configure:

 ./configure -prefix=/usr/local/php -with-config-file-path=/usr/local/php/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

4.

make
make install

5. 复制安装包中的php.ini-production到 /usr/local/php/etc/php.ini

cp php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default.conf  php-fpm.conf

6. 测试PHP安装是否成功。

/usr/local/php/sbin/php-fpm -t

7. 测试成功之后启动PHP

cp /usr/local/src/php-5.3.27/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
service php-fpm start
 

8. 添加到开机启动

chkconfig php-fpm on

9. 检查是否启动

ps aux |grep php-fpm
netstat -ant |grep 9000

第四部分 配置Nginx运行PHP

1. 修改Nginx配置文件如下

vim /usr/local/nginx/conf/nginx.conf
 

2. 创建PHP测试网页

vim /usr/local/nginx/html/test.php
<?php
phpinfo();
?>

3. 在浏览器中输入localhost/test.php,测试php页面

4. 配置PHP参数,Zabbix的硬件要求

vim /usr/local/php/etc/php.ini
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1

5. 重启PHP

service php-pfm stop
service php-pfm start

第五部分 安装Zabbix

1. 下载安装zabbix的YUM源

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm

2. 安装Zabbix

yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-get zabbix-agent

3. 安装之后进入MySQL数据库,创建Zabbix数据库

create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to 'zabbix'@'%' identified by 'zabbixpass';
flush privileges;

4. 导入Zabbix到数据库

cd /usr/share/doc/zabbix-server-mysql-3.41/
zcat create.sql.gz | mysql -u root -p zabbix

5. 配置zabbix用户

groupadd zabbix
useradd -g zabbix -s /bin/false zabbix

6. 配置Zabbix服务器端

vim /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbixpass cd /usr/share/
cp -r zabbix /usr/local/nginx/html
chown -R zabbix:zabbix /etc/zabbix
chown -R zabbix:zabbix /usr/share/zabbix
chown -R zabbix:zabbix /usr/lib/zabbix

7. Zabbix加入开机启动并启动

systemctl enable zabbix-server
systemctl start zabbix-server

8. 在浏览器中测试Zabbix

常见错误排除

问题,运行Zabbix时出现“

FastCGI sent in stderr: "PHP message: PHP Warning:  require_once(/etc/zabbix/web/maintenance.inc.php):   failed to open stream: Permission denied in /app/nginx/html/zabbix/include/classes/core/ZBase.php on line 292
PHP message: PHP Fatal error:  require_once(): Failed opening required '/etc/zabbix/web/mainte

解决方法:

chmod -R 755 /etc/zabbix/web

CentOS 7 LNMP环境搭建 Zabbix3.4的更多相关文章

  1. 阿里云(ECS)Centos服务器LNMP环境搭建

    阿里云( ECS ) Centos7 服务器 LNMP 环境搭建 前言 第一次接触阿里云是大四的时候,当时在校外公司做兼职,关于智能家居项目的,话说当时俺就只有一个月左右的 php 后台开发经验(还是 ...

  2. 在阿里云Centos下LNMP环境搭建

    首先,需要安装C语言的编译环境,因为Nginx是C语言编写的.通常大多数Linux都会默认安装GCC,如果没有的话,可以如下安装. 安装make: yum -y install gcc automak ...

  3. LNMP环境搭建:Nginx安装、测试与域名配置

    Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理.缓存服务软件 2.编译安装Nginx (1)安装Nginx依赖函数库pcre pcre为“perl兼容正则表达 ...

  4. CentOS 下 LNMP 环境配置

    安装配置 Nginx 安装配置 MySQL 安装配置 PHP Nginx 与 PHP-FPM 集成 环境配置验证   LNMP 环境代表 Linux 系统下 Nginx + MySQL + PHP 网 ...

  5. LNMP环境搭建之编译安装指南(php-5.3.27.tar.gz)

    测试环境:CentOS release 6.5 (Final) 软件安装:nginx   mysql-5.5.32-linux2.6-x86_64.tar.gz   php-5.3.27.tar.gz ...

  6. LNMP环境搭建哈哈

    经过一番折腾,终于将LNMP环境搭建完成了.本文介绍的LNMP环境是在windows的Oracle VM VirtualBox中的Centos虚拟机上搭建的,各个软件的版本为:Centos7 + Ng ...

  7. Linux下-LNMP环境搭建博客网站(全过程)

    通常我们所说的LNMP是指一个网站基本的组织框架,即Linux系统支持,Nginx静态服务,Mysql数据库支持以及PHP动态编程语言支持.目前Mysql数据库被Oracle数据库分析公司收购,其创始 ...

  8. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  9. LNMP环境搭建

    LNMP环境搭建 Linux + Nginx + MySQL + PHP PHP是一种脚本语言,当前中国乃至世界上使用PHP语言开发的网站非常普遍 Nginx是一个web服务软件,和apache是一类 ...

随机推荐

  1. 第三代DRDS分布式SQL引擎全新发布

    DRDS (阿里云分布式关系型数据库服务,https://www.aliyun.com/product/drds)于 4 月 30 号发布了 5.3 版本,这是一个年度大更新.主要带来了以下特性: 性 ...

  2. FastDFS整合nginx模块报错

    之前在本地虚拟机用的都是5.1的版本和1.12的nginx,在服务器上尝试一下高版本的6.1 一直报错各种,例如: undeclared (first use in this function) 尝试 ...

  3. Android逆向之旅---解析编译之后的Resource.arsc文件格式

    一.前言 快过年了,先提前祝贺大家新年快乐,这篇文章也是今年最后一篇了.今天我们继续来看逆向的相关知识,前篇文章中我们介绍了如何解析Android中编译之后的AndroidManifest.xml文件 ...

  4. PHPExcel 横向循环输出

    在PHPExcel中,我用到了一个循环,代码如下 for($i=4;$i<$num;$i++) { if($i>30) { $j="A".chr($i+34).&quo ...

  5. log4j file 路径

    默认以System.getProperty("user.dir")为准 用LOGGER.warn(System.getProperty("user.dir")) ...

  6. MAC下MySQL初始密码忘记怎么办

    解决MAC下MySQL忘记初始密码的方法分享给大家,供大家参考,具体内容如下 第一步: 点击系统偏好设置->最下边点MySQL,在弹出页面中,关闭服务 第二步:进入终端输入:cd /usr/lo ...

  7. promise以及async、await学习总结

    Promise/async.await帮我们解决了什么 它给我们提供了一种新的异步编程解决方案,同时避免了困扰已久的回调地狱 // 异步的处理可能会产生这样的回调地狱(第二个异步操作和第一个异步的结果 ...

  8. django搭建一个小型的服务器运维网站-用户登陆与session

    目录 项目介绍和源码: 拿来即用的bootstrap模板: 服务器SSH服务配置与python中paramiko的使用: 用户登陆与session; 最简单的实践之修改服务器时间: 查看和修改服务器配 ...

  9. 文件的上传与下载实现(react、express,create-react-app脚手架)

    项目结构为前后端分离,中间布了一层node. 文件上传 要求:将文件信息等发送到后台. html代码 <input type="file" name="file&q ...

  10. IP地址的分类及各类IP的最大网络数、网络号范围和最大主机数

    总结自谢希仁老师的<计算机网络>第五版 每一类网络地址都由两部分组成:网络号net-id+主机号host-id.IP地址的分类可以参看下图: 可以看到各个类别的区别,同时,所有的类别都是3 ...