LAMP架構之DNS+NFS


一、架構拓撲

wKiom1VR_33wUzJKABaYDOZj82M323.bmp

 

二、架構說明

  客戶端通過DNS解析後將拿到www.bbs.com域名的IP地址,通過DNS配置兩條資源記錄以實現調整輪詢來達到負載均衡,後端通過NFS存儲共存Discuz程序,以達到數據一致性,用戶的數據存儲在MySQL服務器中,MySQL數據是分離的,這樣可以減少前端Web服務器的壓力。

 

三、架構的規劃

主機

IP地址提供服務

客戶端

172.16.190.9-

DNS服務器

192.168.0.190

解析www.bbs.com

Web-01服務器

172.16.9.28

提供www.bbs.com服務

Web-02服務器

172.16.9.29

提供www.bbs.com服務

NFS服務器

172.16.9.35

提供共存存儲站點程序

MySQL服務器172.16.9.41提供站點數據存儲


四、搭建LAMP平臺

  這裏就不多介紹LAMP平臺的搭建,請參考LAMP相關的博文。

 

五、NFS服務器的配置

1)創建用戶共存的目錄

# mkdir /share/web/discuz -p

2)解壓Discuz程序包到discuz目錄中

[root@NFS discuz]# unzipDiscuz_X3.2_SC_UTF8.zip

3)編輯/etc/exports文件創建NFS共存屬性

[root@NFS ~]# vim /etc/exports
    /share/web/discuz/upload172.16.9.0/16(rw,sync,no_root_squash)

4)啓動NFS服務

[root@NFS ~]# service rpcbind start
Starting rpcbind:                             [  OK  ]
[root@NFS ~]# service nfs start
Starti                                     [  OK  ]
Starting NFS quotas:                           [  OK  ]
Starting NFS mountd:                           [  OK  ]
Starting NFS daemon:                           [  OK  ]
Starting RPC idmapd:                          [  OK  ]


5)檢查共存目錄

[root@NFS ~]# showmount -e 172.16.9.35
Export list for 172.16.9.20:
/share/web/discuz/upload 172.16.9.0/16

 

六、配置DNS服務

  DNS的的詳細配置請參考“DNS應用:http://wuday.blog.51cto.com/2623944/1638804

$TTL 86400
@   IN  SOA ds1.bbs.com.    admin.bbs.com. (
            20150501201
            9H
            2H
            7D
            1D)
    IN  NS  ds1
    IN  NS  ds2
    IN  MX 10   mx1
    IN  MX 20   mx2
ds1 IN  A   192.168.0.190
ds2 IN  A   192.168.0.191
mx1 IN  A   192.168.5.21
mx2 IN  A   192.168.5.26
www IN  A   172.16.9.29
www IN  A   172.16.9.28


 

七、配置Web服務器

  在Web服務器上的配置Web-01Web-02上的配置都一樣的,這裏只貼出Web服務的虛擬機配置

1)配置虛擬主機

<VirtualHost *:80>
   ServerAdmin [email protected]
   DocumentRoot "/web/bbs"
   ServerName www.bbs.com
   ServerAlias bbs.com
   ErrorLog "logs/bbs.com-error_log"
   CustomLog "logs/bbs.com-access_log" combined
   <Directory "/web/bbs">
     AllowOverride None
     Options None
      Require all granted
  </Directory>
</VirtualHost>

2)創建目錄並掛載NFS

# mkdir -p /web/bbs
# showmount -e 172.16.9.35           #查看NFS共享存儲情況
Export list for 172.16.9.35:
/share/web/discuz/upload 172.16.9.0/16
# mount -t nfs 172.16.9.35:/share/web/discuz/upload/web/bbs/   #掛載NFS共享存儲


3)更改站點目錄屬主、屬組

# cd /web/bbs/
# chown -R apache.apache ./*

4)啓動Httpd服務

# service httpd start

 

八、MySQL服務器的配置

1)創建數據並授權

> CREATE DATABASE discuzbbs;
> GRANT ALL ON discuzbbs.* TO'disbbs'@'172.16.9.%' identified by 'disbbs@pass';
> FLUSH PRIVILEGES;

 

九、安裝配置使用Discuz程序

  在本地網絡中把DNS指向192.168.0.190,在瀏覽器輸入www.bbs.com就能訪問了,當第一次使用Discuz要進行安裝,安裝這裏就不詳細的介紹,請參考我相關LAMP的博文。

 

小結:

此架構有很多的地方還需要改進:

   1DNS無法判斷Web服務器是否訪問壓力過大;

   2DNS無法判斷Web服務器是否宕機;

   3NFS存儲是否宕機

   4)對於大併發NFS是無法承受的等等;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章