CentOS 7 LNMP环境搭建 Zabbix3.4
概述:在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的更多相关文章
- 阿里云(ECS)Centos服务器LNMP环境搭建
阿里云( ECS ) Centos7 服务器 LNMP 环境搭建 前言 第一次接触阿里云是大四的时候,当时在校外公司做兼职,关于智能家居项目的,话说当时俺就只有一个月左右的 php 后台开发经验(还是 ...
- 在阿里云Centos下LNMP环境搭建
首先,需要安装C语言的编译环境,因为Nginx是C语言编写的.通常大多数Linux都会默认安装GCC,如果没有的话,可以如下安装. 安装make: yum -y install gcc automak ...
- LNMP环境搭建:Nginx安装、测试与域名配置
Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理.缓存服务软件 2.编译安装Nginx (1)安装Nginx依赖函数库pcre pcre为“perl兼容正则表达 ...
- CentOS 下 LNMP 环境配置
安装配置 Nginx 安装配置 MySQL 安装配置 PHP Nginx 与 PHP-FPM 集成 环境配置验证 LNMP 环境代表 Linux 系统下 Nginx + MySQL + PHP 网 ...
- 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 ...
- LNMP环境搭建哈哈
经过一番折腾,终于将LNMP环境搭建完成了.本文介绍的LNMP环境是在windows的Oracle VM VirtualBox中的Centos虚拟机上搭建的,各个软件的版本为:Centos7 + Ng ...
- Linux下-LNMP环境搭建博客网站(全过程)
通常我们所说的LNMP是指一个网站基本的组织框架,即Linux系统支持,Nginx静态服务,Mysql数据库支持以及PHP动态编程语言支持.目前Mysql数据库被Oracle数据库分析公司收购,其创始 ...
- Centos 基础开发环境搭建之Maven私服nexus
hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件 ...
- LNMP环境搭建
LNMP环境搭建 Linux + Nginx + MySQL + PHP PHP是一种脚本语言,当前中国乃至世界上使用PHP语言开发的网站非常普遍 Nginx是一个web服务软件,和apache是一类 ...
随机推荐
- Vue项目【饿了么App】mock数据【data.json】
1.前后端分离式开发,约定好数据字段接口! 2.前端mock静态数据,开发完毕后,与后端进行数据联调! 3.vue.config.js 配置 devServer const appData = req ...
- 【HDOJ6662】Acesrc and Travel(树形DP,换根)
题意:有一棵n个点的树,每个点上有两个值a[i],b[i] A和B在树上行动,A到达i能得到a[i]的偷税值,B能得到b[i],每次行动只能选择相邻的点作为目标 两个人都想最大化自己的偷税值和对方的差 ...
- LR分析Analysis火车票
一.分析结果 1 研究 Vuser 的行为(F:\JMeter\0Tutorial-SCR\机票预订\机票_analysis-session) 筛选该图,仅查看所有 Vuser 同时运行的时间段 右键 ...
- [CSP-S模拟测试]:reverse(数位DP)
题目描述 我们定义: $\overline{d_k...d_2d_1}=\sum \limits_{i=1}^kd_i\times {10}^{i-1}=n(d_i\in [0,9]\ and\ d_ ...
- (转)深入详解Java线程池——Executor框架
转:https://yq.aliyun.com/articles/633782?utm_content=m_1000015330 在Java中,使用线程来异步执行任务.Java线程的创建与销毁需要一定 ...
- Ubuntu 18.04 截图工具 Shutter(可以标记重点)-安装及使用
Shutter 是一个功能丰富的屏幕截图程序.您可以屏幕的某个特定区域.特定的窗口. 或者是整个屏幕,甚至一整个网站截图.可以对截图应用各种效果,标记重点,然后上 传到一个图片托管网站——所有的任务在 ...
- 升级至webpack4.x踩坑记(热更新局部更新失败的问题修复)
零.前言 webpack升级的时候,会碰到各种个样的问题,大多数网上都能查到解决方案最简单的方案. 思路如下: 1.把css-loader,xxxloader等依赖都升级到最新 2.根据webpack ...
- linux暴露端口可以被外部访问
linux暴露端口可以被外部访问,把端口号换成要暴露的端口:/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT Centos 7 开启端口Cen ...
- jmeter之ServerAgent监控资源
对linux服务器的服务进行压测时,服务器的运行情况可以通过添加插件来观察,而不用使用top命令实时的去看 1.资源准备 2.环境准备 3.资源监控 1.资源准备 可通过该网址下载jmeter所有插件 ...
- State Hook
1 useState函数的第一个参数,是state变量的初始值. 2 每次渲染时,多个State Hook的顺序.数量都是一样的.(不能多.不能少) 3 state变量是只读的 4 state变量发生 ...