阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 7 LNMP环境搭建Zabbix3.0

173次阅读
没有评论

共计 6118 个字符,预计需要花费 16 分钟才能阅读完成。

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

CentOS 7 源码编译安装 PHP5.6 和 Nginx1.7.9 及 MySQL(搭建 LNMP 环境) http://www.linuxidc.com/Linux/2015-12/126200.htm

CentOS 7 源码安装最新版 LNMP 环境 http://www.linuxidc.com/Linux/2015-04/116058.htm

预先安装:

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.*"

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

CentOS 7 LNMP 环境搭建 Zabbix3.0

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

第三部分  安装 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

 
user nobody nobody;
worker_processes 2;
error_log /usr/local/nginx/logs/nginx_error.log crit;
pid /usr/local/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;

events
{
    use epoll;
    worker_connections 6000;
}

http
{
    include mime.types;
    default_type application/octet-stream;
    server_names_hash_bucket_size 3526;
    server_names_hash_max_size 4096;
    log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
    '$host"$request_uri"$status'
    '"$http_referer""$http_user_agent"';
    sendfile on;
    tcp_nopush on;
    keepalive_timeout 30;
    client_header_timeout 3m;
    client_body_timeout 3m;
    send_timeout 3m;
    connection_pool_size 256;
    client_header_buffer_size 1k;
    large_client_header_buffers 8 4k;
    request_pool_size 4k;
    output_buffers 4 32k;
    postpone_output 1460;
    client_max_body_size 10m;
    client_body_buffer_size 256k;
    client_body_temp_path /usr/local/nginx/client_body_temp;
    proxy_temp_path /usr/local/nginx/proxy_temp;
    fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
    fastcgi_intercept_errors on;
    tcp_nodelay on;
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 8k;
    gzip_comp_level 5;
    gzip_http_version 1.1;
    gzip_types text/plain application/x-Javascript text/css text/htm application/xml;

server
{listen 80;
    server_name localhost;
    index index.html index.htm index.php;
    root /usr/local/nginx/html;

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass 127.0.0.19000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
    }

}

}

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.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

2. 安装 Zabbix

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

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.0.1/
zcat create.sql.gz |mysql -uroot -ppass 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

CentOS 7 LNMP 环境搭建 Zabbix3.0

常见错误排除

问题,运行 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

一些 Zabbix 相关教程集合

CentOS 7.2 安装部署 Zabbix 3.0.4 详解  http://www.linuxidc.com/Linux/2016-11/137671.htm

Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装  http://www.linuxidc.com/Linux/2015-05/117657.htm

安装部署分布式监控系统 Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm

Zabbix 基本配置及监控主机 http://www.linuxidc.com/Linux/2016-12/138504.htm

CentOS 7.0 x64 下 Zabbix 3.0 安装笔记  http://www.linuxidc.com/Linux/2016-11/137044.htm

CentOS 下 Zabbix 3.0.4 安装部署 http://www.linuxidc.com/Linux/2017-01/139087.htm

CentOS 6.3 下 Zabbix 监控 MySQL 数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm

64 位 CentOS 6.2 下安装 Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm

ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-02/140134.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计6118字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中