搭建LAMP+NFS(附加mysql共享NFS目錄練習總結)

練習一

環境布局

主機6 route A (10.1.32.14)作為DNS服務器

主機centos 7 class (10.1.32.3)作為Apache,PHP(模塊方式)服務器1(有discuz程序)

主機centos 7 server (10.1.32.13)作為Apache,php(模塊方式)服務器2(無discuz)

主機centos 6 class (10.1.32.4)作為NFS服務器

主機mini 7 (10.1.32.131)作為mysql服務器(同時作為訪問Apache,使用discuz的客戶端)

圖像 015.png 


試驗導圖:


圖像 017.png


試驗前置操作:

關閉所有主機的防火墻和SElinux,以防試驗時報各種錯誤!

 

實驗步驟:

1搭建DNS服務器:

思路:

      yum安裝bind包,編輯/etc/namd.conf 添加“discuz.com”域,并修改相關配置,然  

         后在/var/named/做相應文件的創建與配置。因為當用戶輸入www.discuz.com時要對應

         兩臺Apache(php)服務器上,以實現負載均衡效應,所以要配置兩個A記錄。

 

2搭建Apache,php服務器,mysql 服務器

思路:

yum快速部署Apache(兩臺服務器的apache用戶的id都是48),php;mysql到3

臺主機上,并開始階段性測試

1)測試兩臺web服務器的php模塊運行是否正常;

/var/www/html下創建index.php,添加phpinfo()函數,訪問無問題!

2)測試兩臺web服務器連接mysql是否正常;

  mysql服務器上授權兩臺web服務器的權限,注意,IP(hostname),用戶名,   密碼不要寫錯!此時可以創建discuz的數據庫,并一起授權,要不后面也要執行  

  這一步驟。  

 創建/var/www/html/conn.php 編輯mysql_connect()函數,測試通過!

    

  3)測試DNS服務器

     在客戶端機(10.1.32.131)上編輯/etc/resolv.conf 添加nameserver=10.1.32.14

            將客戶端機的DNS服務器指向這個主機,并在網卡配置文件里添加  

            DNS=10.1.32.14

            多次ping www.discuz.com 這個網站,發現它分別指向了10.1.32.3和10.1.32.13,     DNS服務器測試成功!

 

3 搭建NFS服務器

    思路:

yum 安裝nfs-utils,注意(排錯),如果系統沒有安裝rpcbind,或rpcbind服務未開啟,

那么nfs 將 開啟失??!創建/data/application/web,編輯/etc/exports ,添加相應路徑的主

機權限。添加用 apache,id要保證與web服務器的apache用戶一樣!否則會導致

后期用戶無權創建,修改文件!

 

4 掛載apache服務器(10.1.32.3)文件目錄到NFS服務器

1)在10.1.32.3這個web服務器下創建一個目錄/nfs-web/htdoc。用于存放discuz,

     web文件,上傳的圖片等,然后將此目錄掛載到NFS服務器(10.1.32.4):

           mount -t nfs 10.1.32.4:/data/application/web /nfs-web/htdoc

      掛載成功!

 

  2)修改/etc/httpd/conf/httpd.conf文件的DocumentRoot 為掛載目錄:

        /nfs-web/htdoc;然后驗證php模塊,mysql的各項功能是否正常。結果:一切正常!

     3)安裝discuz,創建并登錄一個用戶,這里用windows端測試。

1】登錄:

圖像 002.png 

 

數據庫數據確認:

 

  圖像 008.png

 

數據正常!

 

2】上傳頭像:

圖像 005.png 

圖像 006.png 

 

用戶頭像的保存路徑為NFS服務器的:

/data/application/web/discuz/uc_server/data/avatar/

 

圖像 009.png 

3】修改個人信息:

圖像 011.png 

 

至此為止,apache,PHP(10.1.32.3)–>NFS–>MySql 這一條線路就已經全部打通,此線路 測試完畢!接下來測試另一個apache,PHP(10.1.32.13)服務器。

 

5 掛載apache服務器(10.1.32.13)文件目錄到NFS服務器

思路:

因為共享NFS的/data/application/web/目錄,所以不用安裝discuz,直接掛載,使用共享目錄下的文件!然后登錄同一用戶,以此測試數據是否同步,多次刷新是否正常:

1】登錄

圖像 010.png 

 

2】上傳的頭像與用戶信息


圖像 013.png 

 

在任意一臺服務器上另一臺服務器均能得到正確數據,多次刷新也沒有問題,到此為止,試驗圓滿結束!

 

練習二

試驗環境:

兩臺mysql的服務器,一臺NFS服務器。

思路與解答:

NFS服務器上開啟nfs服務,創建文件/mysql/data,編輯配置文件/etc/exposts,賦予兩臺mysql服務器對此目錄具有讀寫權限。添加用戶mysql。先在其中一臺服務器上安裝mysql,創建/mydata,并將此目錄掛載到NFS服務器的/mysql/data下,修改/etc/my.cnf,將datadir的目錄位置改為已掛載的/mydata下。

保證mysql用戶的id與NFS服務器的mysql用戶的id一致。賦予mysql用戶對/mydata的rwx權限。啟動mysql服務,失敗!但進入/mydata下,卻發現,已經創建了部分文件,但查看日志,報錯說在創建ibdata1這個文件時失敗,原因是沒有權限,但是反復查看,mysql用戶應該是有權限的,因此懷疑是SElinux的作用,于是關閉SElinux,再啟動,成功!

再在另一臺服務器上安裝mysql服務,執行和上述同樣的操作,成功。然后分別測試兩臺mysql服務器在不同狀態下的啟動于關閉,沒有問題!一臺服務器創建的數據庫和表,另一臺也能同步到。但在表內的數據同步出現了問題!如:mysql服務器A插入了一條數據后,mysql服務器B不能立即同步,也就是看不到A插入的數據。當A再插入第二條數據后,B會同步出A插入的第二條數據,第一條數據在B里看不到,但在A里是完整的。反復測試仍不能解決…推測是表的同步機制或共享文件機制方面的問題。

 

 

原創文章,作者:菩提本無樹,如若轉載,請注明出處:http://www.www58058.com/54233

(0)
菩提本無樹菩提本無樹
上一篇 2016-10-25
下一篇 2016-10-25

相關推薦

  • 制作本地yum源(以redhat5.8通過復制光盤文件到本地)

    為什么要制作本地yum源 1、RPM安裝方式很多情況下不能有效解決復雜的包依賴關系。 2、而剛安裝完成系統的YUM一般是通過聯網使用。 3、如果是未注冊的redhat5.0以上系統,則不能聯網使用yum。 我們可以改變yum庫的指向,使其指向本地自己制作的yum倉庫,從而輕松實現本地yum方式查詢、安裝應用軟件了。 下面據此給大家介紹其操作方法(以Redha…

    Linux干貨 2016-04-11
  • 淺談DNS基本原理以及實現方法(一)

     DNS(Domain Name System,域名系統),是目前互聯網上最不可或缺的服務器之一,我們在互聯網從訪問一個網站,到發送一封電子郵件,再到定位域中的域控制器,無時無刻不再使用著DNS為我們提供的服務,那為什么我們會需要這樣一個服務那?帶著這樣一個疑問讓我們先來認識一下什么是DNS吧  DNS最核心的工作就是域名解析,也就是把計…

    Linux干貨 2015-12-15
  • 在Centos系統上安裝EPEL擴展源以及安裝htop工具

        Htop是一個強大的進程管理前端工具,但這是一個擴展工具,一般在Centos系統源中并沒有,所有我們需要到fedora-epel源中下載。         EPEL即Extra Packages for Enterprise Lin…

    Linux干貨 2016-02-14
  • Nginx+resin調優文檔[原創]

    為什么不選擇Apache/mod+resin?       前面一直使用該模式,mod_caucho暴露源碼的bug一直未得到徹底的解決。因此切換到Nginx+resin平臺。硬件上要求除了內存一定要足夠大(建議>4G),無其它要求(當然也不能太破,呵呵)。操作系統強烈要求安裝64位,32位操…

    Linux干貨 2015-03-27
  • bash功能特性三 命令的引用、展開和補全

    一、bash的補全功能     1、命令補全     根據內建命令或外部命令的查找方式,查找以用戶指定的字符串開頭的命令,如果用戶指定的開頭字符串能惟一標識某命令,則tab鍵可以補全此命令,否則,則兩次tab鏈可顯示所有以指定字符串開頭的命令。   &nbsp…

    Linux干貨 2015-04-15
  • day5總結筆記

    本文內容: 索引節點 硬鏈接與軟鏈接 重定向 用戶組 useradd命令 索引節點: 索引節點包含了一個表,包含了有關文件的元數據,包含:     文件類型,權限,UID,GID 鏈接數(指向這個文件名路徑名稱個數)      該文件的大小和不同的時間戳。&n…

    系統運維 2016-08-08
欧美性久久久久