Zabbix-分布式监控平台部署-2.LNMP部署

Zabbix-分布式监控平台部署-2.LNMP部署

章节说明

本章节是使用RHEL7.6操作系统、基于LNMP平台,源码编译方式部署Zabbix5.0分布式监控平台的第二章,主要介绍的是LNMP平台的部署。其中Nginx和PHP使用源码编码方式安装,MySql使用二进制方式安装。

Nginx安装

  1. 安装Nginx所需依赖软件
yum -y install pcre pcre-devel openssl-devel
  1. 创建Nginx所需用户
useradd -s /sbin/nologin -M nginx
  1. 编译安装Nginx
cd /opt/soft/
tar zxf nginx-1.18.0.tar.gz

cd nginx-1.18.0/
>./configure --prefix=/usr/local/nginx --user=nginx \
--with-http_stub_status_module --with-http_ssl_module --with-stream

make && make install 
  1. 创建Nginx系统服务
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target
  1. 启动Nginx服务
systemctl enable nginx.service
systemctl start nginx.service

MySql安装

我选择的是用二进制方式安装MySql

  1. 创建MySql所需用户
useradd -s /sbin/nologin mysql
  1. 创建MySql所需目录
mkdir -p /data/mysql/{data,logs,binlog}
  1. 二进制方式安装
cd /opt/soft/
tar zxf mysql-5.7.28-el7-x86_64.tar.gz 
mv mysql-5.7.28-el7-x86_64 /usr/local/mysql
  1. 修改系统环境变量并授权目录
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile
chown -R mysql:mysql /usr/local/mysql /data/
  1. 创建MySql配置文件
vim /data/mysql/my.cnf
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql/data
log-error = /data/mysql/logs/error.log
server_id = 6
port = 3306
log_bin = /data/mysql/binlog/mysql-bin
binlog_format = row
gtid-mode = on
enforce-gtid-consistency = true
socket = /data/mysql/my.sock

[client]
socket = /data/mysql/my.sock
  1. 文件相关配置
rm -rf /etc/my.cnf /etc/my.cnf.d/
ln -s /data/mysql/my.cnf /etc/my.cnf
ln -s /usr/local/mysql/lib/libmysqlclient.so.20.3.15 /usr/lib64/libmysqlclient.so.20
  1. 初始化数据库
/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/my.cnf --initialize
  1. 创建MySql系统服务
vim /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySql
After=network.target

[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE=5000

[Install]
WantedBy=multi-user.target
  1. 启动MySql系统服务
systemctl enable mysqld.service
systemctl start mysqld.service 
  1. 查看MySql默认密码并修改密码
grep password /data/mysql/logs/error.log
//最后的就是初始密码

mysql -uroot -p
mysql> alter user user() identified by '1qaz3edc';
mysql> alter user 'root'@'localhost' identified by '';
mysql> grant all privileges on *.* to 'root'@'%'  identified by '1qaz3edc;

PHP安装

  1. 安装PHP所需依赖包
yum install -y libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel \
libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel \
freetype freetype-devel gmp gmp-devel \
libmcrypt libmcrypt-devel readline readline-devel \
libxslt libxslt-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel \
ncurses curl gdbm-devel db4-devel libXpm-devel libX11-devel \
gd-devel gmp-devel expat-devel xmlrpc-c  \
libicu-devel libmcrypt-devel   libzip gcc-c++ \
libsqlite3x-devel  sqlite-devel oniguruma oniguruma-devel
  1. 源码编译安装PHP
cd /opt/soft/
tar zxf php-7.4.11.tar.gz

cd php-7.4.11/
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc \
--enable-ctype --enable-mysqlnd --with-mysql-sock=/data/mysql/my.sock \
--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-zlib --enable-xml \
--disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem \
--enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring \
--enable-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets \
--with-ldap-sasl --with-xmlrpc --enable-soap --with-gettext --enable-fpm \
--with-freetype --with-jpeg

make && make install
  1. 修改php.ini文件
pwd
/opt/soft/php-7.4.11
cp php.ini-production /usr/local/php/etc/php.ini

vim /usr/local/php/etc/php.ini 
//在文件末尾添加这5行即可
post_max_size = 64M
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1
  1. 创建php-fpm.conf文件
vim /usr/local/php/etc/php-fpm.conf
[global]
[www]
user = nginx
group = nginx
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
  1. 修改系统环境变量
echo "export PATH=$PATH:/usr/local/php/bin:/usr/local/php/sbin">> /etc/profile
source /etc/profile
  1. 创建PHP系统服务
vim /usr/lib/systemd/system/php-fpm.service
[Unit]
Description=php-fpm
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
PrivateTmp=true

[Install]
WantedBy=multi-user.target
  1. 启动PHP系统服务
systemctl start php-fpm.service 
systemctl enable php-fpm.service 

PHP与Nginx配置

  1. 修改Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
//删除原来的,直接复制以下配置,全部替换即可。
worker_processes  1;
events {
    worker_connections  10240;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    access_log  logs/zabbix.access.log;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.php index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        location ~ .*\.(php|php5)?$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi.conf;
        }
    }
}
  1. 创建测试页进行LNMP成功新验证
vim /usr/local/nginx/html/index.php
<?php
    phpinfo();
?>
vim /usr/local/nginx/html/test.php
<?php
    $link=mysqli_connect("192.168.42.134","root","1qaz3edc");
    if(!$link) echo "Error !";
    else echo "Ok!";
    mysqli_close();
?>
  1. web访问测试
    分别访问主机及test.php页,能出现下两图表示LNMP平台搭建成功。
    php测试mysql测试
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值