實驗內容:
(1) nfs server導出/data/application/web,在目錄中提供wordpress;
(2) nfs client掛載nfs server導出的文件系統至/var/www/html;
(3) 客戶端(lamp)部署wordpress,并讓其正常訪問;要確保能正常發文章,上傳圖片;
(4) 客戶端2(lamp),掛載nfs server導出的文件系統至/var/www/html;驗正其wordpress是否可被訪問; 要確保能正常發文章,上傳圖片;
這里用于實驗的3臺主機:
#服務端主機IP為:172.16.100.32 提供目錄共享,提供mysql數據庫
#客戶端主機IP為:172.16.100.31 掛載目錄
#客戶端主機IP為:172.16.100.33 掛載目錄
首先服務端主機安裝nfs-utils
[root@localhost ~]# yum install nfs-utils 默認應該是安裝的
#然后創建一個需要導出的目錄
[root@localhost ~]# mkdir -pv /data/application/web
#編輯配置文件/etc/exports
[root@localhost ~]# vim /etc/exports
#表示要導出共享的目錄 以及哪個ip地址的客戶端可以掛載,這里是172.16網段的所有客戶端, 并且有讀寫權限


#在服務端上創建用戶并且賦予權限;
[root@localhost ~]# useradd apache 查看ID號
[root@localhost ~]# setfacl -m u:apache:rwx /data/application/web
#查看一下apache的ID
[root@localhost ~]# id apache
uid=1003(apache) gid=1003(apache) groups=1003(apache) 記住ID號 等會要去客戶端改
#重啟服務,生產環境中不建議重啟 ,這里有一個命令可以導出所有
[root@localhost ~]# exportfs -ar
#然后客戶端即可掛載使用了;用命令mount -t 相當于mount.nfs
[root@centos7 ~]# mount -t nfs 172.16.100.32:/data/application/web /var/www/html
#格式: 掛載主機的IP以及服務端共享出來的目錄路徑 后面是掛載至客戶端的哪個目錄下
#可以用mount命令查看是否掛載成功以及詳細的信息;
[root@centos7 ~]# mount
172.16.100.32:/data/application/web on /var/www/html type nfs4 (rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=172.16.100.31,local_lock=none,addr=172.16.100.32)
#但是現在客戶端上的用戶還沒有對這個/var/www/html目錄擁有寫權限;
#apache的ID號必須和服務端擁有權限用戶的ID號一樣,這樣才能映射服務端用戶ID到客戶端用戶ID所能擁有的權限;
#其實還有一個方法,可以指定運行httpd的用戶和組 在主配置文件里面改下即可

暫時不用這個方法
#先把pache的ID號改成和服務端一樣的ID號 這樣就有掛載過來目錄的權限了
[root@localhost ~]# usermod -u 1003 apache
[root@localhost ~]# groupmod -g 1003 apache
#如果想查看服務端有哪些目錄可以掛載以及已經掛載了哪些可以用命令showmount -e 查看;
[root@centos7 html]# showmount -e 172.16.100.32
Export list for 172.16.100.32:
/data/application/web 172.16.0.0/16
#下面我們在服務端上提供wordpress文件;然后讓其客戶端配置并能讓其正常訪問;
安裝httpd服務
#在mariadb中創建數據庫以及用戶名密碼為wordpress提供;
先進mysql 然后如下
mysql> GRANT ALL ON wpdb.* TO 'wpuser'@'172.16.%.%' IDENTIFIED BY 'wppass';
mysql> FLUSH PRIVILEGES;
mysql> CREATE DATABASE wpdb;
#修改wordpress配置文件
[wu@centos7 ~]$ vim /var/www/html/wordpress/wp-config.php
// ** MySQL 設置 - 具體信息來自您正在使用的主機 ** //
/** WordPress數據庫的名稱 */
define('DB_NAME', 'wpdb');
/** MySQL數據庫用戶名 */
define('DB_USER', 'wpuser');
/** MySQL數據庫密碼 */
define('DB_PASSWORD', 'wppass');
/** MySQL主機 */
define('DB_HOST', '172.16.100.32'); 這里指向的是服務端主機IP
/** 創建數據表時默認的文字編碼 */
define('DB_CHARSET', 'utf8');
/** 數據庫整理類型。如不確定請勿更改 */
define('DB_COLLATE', '');
下面就驗證一下是否可以訪問以及正常使用




成功了;
#下面我們繼續第2臺客戶機,和第一臺的主機步驟一樣下面我就簡單寫下步驟;
[root@localhost yum.repos.d]# yum install httpd php php-mysql 安裝rpm包
#先把pache的ID號改成和服務端一樣的ID號 這樣就有掛載過來目錄的權限了
[root@localhost ~]# usermod -u 1003 apache
[root@localhost ~]# groupmod -g 1003 apache
[root@localhost yum.repos.d]# systemctl start httpd 啟動服務
[root@localhost yum.repos.d]# systemctl start mariadb 啟動服務
#掛載服務端導出的目錄;用命令mount -t 相當于mount.nfs
[root@localhost ~]# mount -t nfs 172.16.100.32:/data/application/web /var/www/html
#格式: 掛載主機的IP以及服務端共享出來的目錄路徑 后面是掛載至客戶端的哪個目錄下
#可以用mount命令查看是否掛載成功以及詳細的信息;
[root@localhost ~]# mount
172.16.100.32:/data/application/web on /var/www/html type nfs4 (rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=172.16.100.33,local_lock=none,addr=172.16.100.32)
#因為共享的目錄里面提供了wordpress以及里面的配置第一臺客戶端已經配置好了,所以這里就不需要重新配置了;
#然后即可登錄測試是否可登錄第2臺客戶機,是否可以發博文,數據存儲是否可用;


#登錄成功,因為第一臺客戶機登錄的時候已經安裝了并且這個文件是共享的所以一進來可以看到客戶機1發的文章

#下面我們在發一篇文章如果可以發圖片則大功告成;


成功;
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。