NFS服务

1、nfs server导出/data/application/web,在目录中提供wordpress;

2、nfs client挂载nfs server导出的文件系统至/var/www/html;

3、客户端1(lamp)部署wordpress,并让其正常访问;要确保能正常发文章,上传图片;

4、客户端2(lamp),挂载nsf server导出的文件系统至/var/www/html;验证其wordpress是否可被访问;要确保能正常发文章,上传图片

部署环境(CentOS 7.7.1980):

nfs server IP:192.168.10.101  提供共享目录,提供mariadb数据库

nfs客户端1 IP:192.168.10.102      nfs client,httpd,php,php-mysql

nfs客户端2 IP:192.168.10.103        nfs client,httpd,php,php-mysql

一、创建nfs服务端共享目录及mariadb数据库

服务端安装nfs-utils程序包

# yum install nfs-utils -y

然后创建一个需要导出的目录/data/application/web

# mkdir -pv /data/application/web

编辑/etc/exports,定义哪个共享目录,允许哪些人访问,具备哪些权限(man exports可以查看配置帮助)。此处设置为no_root_squash,不压缩root用户

开启nfs服务,会附带启动rpc辅助类服务

 # systemctl start nfs.service

  下载安装MariaDB数据库

# yum -y install mariadb-server

初始化配置mariadb

# vim /etc/my.cnf.d/server.cnf

启动MariaDB

# systemctl start mariadb

对Mysql进行安全加固

# mysql_secure_installation

连入Mysql

# mysql -uroot -h127.0.0.1 -plhp@ssw0rd

在mariadb中创建数据库以及用户名密码为wordpress提供;

MariaDB [(none)]> GRANT ALL ON wpdb.* TO 'wpuser'@'192.168.10.%' IDENTIFIED BY 'wppassword';

刷新授权表

MariaDB [(none)]> FLUSH PRIVILEGES;

创建数据库wpdb

MariaDB [(none)]> CREATE DATABASE wpdb;

二、客户端挂载共享目录并部署wordpress

安装httpd服务,nfs服务(挂载服务端使用)

# yum install httpd nfs-utils  -y

在客户端1挂载共享目录,使用mount -t ,相当于mount.nfs

# mount -t nfs -rw 192.168.10.101:/data/application/web /var/www/html     

mount选项挂载为rw,以保持和nfs服务端定义的权限一致,避免用户产生权限不一致的错觉

安装php,php-mysql,此处使用Moudule方式安装lamp

# yum install php php-mysql -y

由于上一步安装的php,php-mysql版本太低,无法匹配我下载的wordpress使用,这里我又重新下载了新版本

(1)更换RPM源

#CentOs 7.X:

rpm -Uvh  https://mirror.webtatic.com/yum/el7/epel-release.rpm

rpm -Uvh  https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

(2)删除原来安装的php相关包

# yum remove php*

(3)安装php,php-mysql;php 7.0/7.1/7.2 分别表示为 70w/71w/72w

# yum install -y php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-fpm php71w-gd php71w-mbstring php71w-mysqlnd php71w-opcache php71w-pdo php71w-xml php71w-ldap

(4)重启httpd

# systemctl restart httpd

创建测试页/var/www/html/phpinfo.php

vim /var/www/html/phpinfo.php

关闭防火墙和selinux

# systemctl stop firewalld

# systemctl disable firewalld

# setenforce 0

访问测试

安装wordpress服务,使其在客户端能正常访问

上传WordPress-master.zip至客户端1:/var/www/html

解压并改名

cd /var/www/html/

unzip WordPress-master.zip

mv WordPress-master  wordpress

编辑 wp-config.php

cd wordpress/

cp wp-config-sample.php wp-config.php

vim wp-config.php

将数据库信息填入以下位置

浏览器访问,在写博客前已经尝试创建了wordpress账号和帖子,所以访问时已经连接wpuser用户。默认使用root用户安装后,/var/www/html下的权限为744,需要更改运行httpd的用户以及nfs挂载映射的用户的权限()。此处为了方便实验,直接将挂载点和共享目录的文件权限设置为777。

三、客户端挂载共享目录

安装httpd服务,nfs服务(挂载服务端使用)

# yum install httpd nfs-utils -y

在客户端1挂载共享目录,使用mount -t ,相当于mount.nfs

# mount -t nfs -rw 192.168.10.101:/data/application/web /var/www/html     

mount选项挂载为rw,以保持和nfs服务端定义的权限一致,避免用户产生权限不一致的错觉

更换RPM源

#CentOs 7.X:

rpm -Uvh  https://mirror.webtatic.com/yum/el7/epel-release.rpm

rpm -Uvh   https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安装php,php-mysql; php 7.0/7.1/7.2 分别表示为 70w/71w/72w

# yum install -y php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-fpm php71w-gd php71w-mbstring php71w-mysqlnd php71w-opcache php71w-pdo php71w-xml php71w-ldap

启动httpd

# systemctl restart httpd

关闭防火墙和selinux

# systemctl stop firewalld

# systemctl disable firewalld

# setenforce 0

访问测试(由于挂载了共享目录,不需要重新部署wordpress和测试页)

客户端1已经部署过了,所以直接测试可以发文字图片即可

你可能感兴趣的:(NFS服务)