<div style="font-size:16px;">
<p>实现LNMP</p>
<p>实现环境:</p>
<p>服务</p>
<p>版本</p>
<p>系统</p>
<p>CentOS7.6</p>
<p>Mysql</p>
<p>5.6.34</p>
<p>Nginx</p>
<p>1.14.2</p>
<p>PHP</p>
<p>7.1.30</p>
<p>HAProxy</p>
<p>1.8.20</p>
<p>Keepalived</p>
<p>1.3.5</p>
<p>NFS</p>
<p>1.3.0</p>
<p>主机</p>
<p>IP</p>
<p>Mysql_master</p>
<p>192.168.37.108</p>
<p>Mysql_slave</p>
<p>192.168.37.105</p>
<p>Nginx+PHP</p>
<p>192.168.37.103</p>
<p>Nginx+PHP</p>
<p>192.168.37.104</p>
<p>HAProxy+Keepalived</p>
<p>192.168.37.101</p>
<p>HAProxy+Keepalived</p>
<p>192.168.37.102</p>
<p>VIP</p>
<p>192.168.37.240</p>
<p>NFS_server</p>
<p>192.168.37.107</p>
<p align="center"><img alt="9e35ab1ae9dbdda7f08117123eb235fd.png" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-901c27be76bd020c8c4c745c281481dc.png"></p>
<p>1 搭建数据库 (192.168.37.108)</p>
<p>1.1 安装Mysql</p>
<p>使用脚本一键完成</p>
<p>将数据库软件包,脚本,配置文件my.cnf放在同一个目录中执行</p>
<p>#!/bin/bash</p>
<p>DIR=`pwd`</p>
<p>NAME="mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz"</p>
<p>FULL_NAME=${DIR}/${NAME}</p>
<p>DATA_DIR="/data/mysql"</p>
<p>yum ×××tall vim gcc gcc-c++ wget autoconf net-tools lrzsz iotop lsof iotop bash-completion -y</p>
<p>yum ×××tall curl policycoreutils openssh-server openssh-clients postfix -y</p>
<p>yum ×××tall libaio -y</p>
<p>if [ -f ${FULL_NAME} ];then</p>
<p>echo "安装文件存在"</p>
<p>else</p>
<p>echo "安装文件不存在"</p>
<p>exit 3</p>
<p>fi</p>
<p>if [ -h /usr/local/mysql ];then</p>
<p>echo "Mysql 已经安装"</p>
<p>exit 3</p>
<p>else</p>
<p>tar xvf ${FULL_NAME} -C /usr/local/src</p>
<p>ln -sv /usr/local/src/mysql-5.6.34-linux-glibc2.5-x86_64 /usr/local/mysql</p>
<p>if id mysql;then</p>
<p>echo "mysql 用户已经存在,跳过创建用户过程"</p>
<p>fi</p>
<p>useradd mysql -s /sbin/nologin</p>
<p>if id mysql;then</p>
<p>chown -R mysql.mysql /usr/local/mysql/* -R</p>
<p>if [ ! -d /data/mysql ];then</p>
<p>mkdir -pv /data/mysql && chown -R mysql.mysql /data -R</p>
<p>/usr/local/mysql/scripts/mysql_×××tall_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql/</p>
<p>cp /usr/local/src/mysql-5.6.34-linux-glibc2.5-x86_64/support-files/mysql.server /etc/init.d/mysqld</p>
<p>chmod a+x /etc/init.d/mysqld</p>
<p>cp ${DIR}/my.cnf /etc/my.cnf</p>
<p>ln -sv /usr/local/mysql/bin/mysql /usr/bin/mysql</p>
<p>/etc/init.d/mysqld start</p>
<p>else</p>
<p>echo "MySQL数据目录已经存在,"</p>
<p>exit 3</p>
<p>fi</p>
<p>fi</p>
<p>fi</p>
<p>1.2 创建wordpress数据库并授权</p>
<p>[root@s8 src]#mysql</p>
<p>mysql> CREATE DATABASE wordpress;</p>
<p>mysql> GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress"@"192.168.37.%" IDENTIFIED BY "123456";</p>
<p>mysql> show databases;</p>
<p>+--------------------+</p>
<p>| Database |</p>
<p>+--------------------+</p>
<p>| information_schema |</p>
<p>| mysql |</p>
<p>| performance_schema |</p>
<p>| test |</p>
<p>| wordpress |</p>
<p>+--------------------+</p>
<p>5 rows in set (0.00 sec)</p>
<p>1.3 测试数据库连接</p>
<p>在wordpress服务器或者HAProxy服务器用授权帐号测试远程连接是否正满</p>
<p>[root@s0 ~]#mysql -uwordpress -p123456 -h192.168.37.108</p>
<p>MySQL [(none)]> show databases;</p>
<p>+--------------------+</p>
<p>| Database |</p>
<p>+--------------------+</p>
<p>| information_schema |</p>
<p>| test |</p>
<p>| wordpress |</p>
<p>+--------------------+</p>
<p>2 安装PHP 分别在两主机上完成相同的操作(192.168.37.103/104)</p>
<p>2.1 编译安装php</p>
<p>创建PHP,Nginx共同使用的系统帐号</p>
<p>[root@s4 ~]#useradd -s /sbin/nologin -u 1001</p>
<p>安装依赖包</p>
<p>[root@s3 src]#yum -y ×××tall wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel json automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel</p>
<p>[root@s3 src]#pwd</p>
<p>/usr/local/src</p>
<p>[root@s3 src]#tar xvf php-7.1.30</p>
<p>[root@s3 src]#cd php-7.1.30/</p>
<p>[root@s3 php-7.1.30]#./configure --prefix=/apps/php --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-pear --with-curl --with-png-dir --with-freetype-dir --with-iconv --with-mhash --with-zlib --with-xmlrpc --with-xsl --with-openssl --with-mysqli --with-pdo-mysql --disable-debug --enable-zip --enable-sockets --enable-soap --enable-inline-optimization --enable-xml --enable-ftp --enable-exif --enable-wddx --enable-bcmath --enable-calendar --enable-shmop --enable-dba --enable-sysvsem --enable-sysvshm --enable-sysvmsg</p>
<p>[root@s3 src]make -j 2</p>
<p>[root@s3 src]make ×××tall</p>
<p>PHP安装时间较 |
|