要求:

构建NFS共享服务,利用nfs来提供远程共享资源,web服务通过远程共享资源来构建一个基于LAMP环境的站点(WordPress),要求此站点可以正常发布文章和图片)


环境:

192.168.1.101----->Web

192.168.1.110----->Mariadb

192.168.1.113----->PHP

192.168.1.114----->NFS


一、部署LAMP环境

#web服务的部署(192.168.1.101)

(1)安装服务:yum -y install httpd

(2)配置虚拟主机和php代理

[root@bogon ~]# vim /etc/httpd/conf.d/vhost.conf

DirectoryIndex index.php
<VirtualHost 192.168.1.101:80>
        ServerName wp.magedu.com
        DocumentRoot /data/web  ###此处目录等会依靠nfs远程共享一个WordPress
        ProxyRequests off
        ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.1.113:9000/data/web/$1 
        <Directory "/data/web">
                Options None
                AllowOverride None
                Require all granted
        </Directory> 
</VirtualHost>


(3)启动服务测试httpd是否正常 

[root@bogon ~]# mkdir -p /data/web/
[root@bogon ~]# vim /data/web/index.html (测试内容为test)

[root@bogon ~]# httpd -t
Syntax OK
[root@bogon ~]# systemctl start httpd 
[root@bogon ~]# curl http://wp.magedu.com
test


#mariadb服务部署(192.168.1.110)

(1)安装程序:yum -y install mariadb-server 

(2)启动服务、建立数据库和用户授权操作

[root@pxe130 ~]# systemctl start mariadb
[root@pxe130 ~]# mysql 
MariaDB [(none)]> create database wpdb;  ###这是为了WordPress准备
MariaDB [(none)]> grant all on wpdb.* to 'wpuser'@'192.168.%.%' identified by 'wppass';


#php服务部署(192.168.1.113)

(1)安装程序:yum -y install php-fpm php-mysql 

(2)配置php

[root@pxe132 ~]# vim /etc/php-fpm.d/listen.allowed_clients = 192.168.1.101

(3)php服务器上建立文件进行测试php和http及mariadb的连通性

[root@pxe132 ~]# mkdir -p /data/web 
[root@pxe132 ~]# vim /data/web/index.php

<?php
$conn = mysql_connect('192.168.1.110','wpuser','wppass');
        if ($conn)
                echo "mysql is ok";
        else
                echo "mysql is bad";
phpinfo();
?>

(4)启动服务

[root@pxe132 ~]# systemctl start php-fpm
[root@pxe132 ~]# ss -tnl 
State       Recv-Q Send-Q      Loca Peer Address:Port              
LISTEN      0      128      192.168.1.113:9000

基于LAMP平台利用NFS远程共享资源实现站点构建_nfs远程共享资源

ok,现在lamp环境以及准备好了。。



二、部署NFS环境,提供远程共享资源

(1)安装服务:yum -y install nfs-utils

(2)配置nfs服务为web站点提供资源

[root@bogon ~]# vim  /etc/exports
/data/application/web  192.168.1.0/24(rw,sync)

(3)建立nfs共享路径

[root@bogon ~]# mkdir -p /data/application/web

(4)在nfs共享路径下面提供并配置好一个WordPress服务

[root@bogon ~]# unzip wordpress-4.3.1-zh_CN.zip 
[root@bogon ~]# mv wordpress /data/application/web/
[root@bogon ~]# cd /data/application/web/wordpress/
[root@bogon web]# cp wp-config-sample.php wp-config.php 
[root@bogon web]# vim wp-config.php 

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');

/** MySQL数据库用户名 */
define('DB_USER', 'wpuser');

/** MySQL数据库密码 */
define('DB_PASSWORD', 'wppass');

/** MySQL主机 */
define('DB_HOST', '192.168.1.110');

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');

(4)启动nfs服务

[root@bogon wordpress]# service nfs start 
启动 NFS 服务:                                            [确定]
关掉 NFS 配额:                                            [确定]
启动 NFS mountd:                                          [确定]
启动 NFS 守护进程:                                        [确定]
正在启动 RPC idmapd:                                      [确定]
[root@bogon wordpress]# ss -tnl 
State       Recv-Q Send-Q                Local Address:Port         Peer Address:Port 
LISTEN      0      64                       :::42365                      :::*     
LISTEN      0      64                       :::2049                       :::*     
LISTEN      0      64                       *:2049 ##nfs监听地址

(5)查看下我们提供的共享资源

[root@bogon ~]# showmount -e 192.168.1.114
Export list for 192.168.1.114:
/data/application/web 192.168.1.0/24


三、远程挂载共享资源调试

(1)分别在php和httpd服务器上故障nfs提供的共享目录

[root@bogon web]# mount -t nfs 192.168.1.114:/data /data/application/web/

(2)重新分别加载httpd和php-fpm服务

[root@pxe132 ~]# systemctl restart php-fpm.service
[root@bogon web]# systemctl restart httpd

(3)测试

基于LAMP平台利用NFS远程共享资源实现站点构建_nfs远程共享资源_02