Apache-2.2

跨兩節點 apache 集群鏡像數據的最佳方式

  • August 5, 2011

我正在建構一個新的伺服器結構,我計劃在它們後面有兩個 apache 主力和一個 sql 數據庫。我想知道在 apache 伺服器之間鏡像數據的最佳方式是什麼。使用者數據應該限制在這些伺服器上,因為大部分數據都在 S3 中。

從到目前為止我所做的初步研究中,我已經閱讀了有關 GlusterFS 和 DRBD 的資訊,但是一個簡單的 rsync 腳本可以解決問題嗎?

老實說,我不建議在 apache 機器之間進行實時複製。讓他們擁有自己的程式碼,或者每隔一段時間從“主”伺服器進行 rsync。實時(或接近)是大量文件檢查,99% 的時間都不需要。

我個人建議有三層。

負載平衡/Web 伺服器(您的 http/php 程序)

文件伺服器(需要在所有 Web 節點之間共享的程式碼/文件)

數據庫伺服器(您的後端數據庫)

比必須在伺服器之間進行完全複製要簡單得多。

如果你沒有能力擁有一個專用的文件伺服器(NFS/ect),讓“Web2”掛載“Web1的使用者上傳”,兩個網路伺服器都可以讀寫共享區域,除非你更新,否則不需要同步等網站程式碼。

Web1
/var/www/website/www
/var/www/website/_files

web2
/var/www/website/www
/var/www/website/_files (NFS mouned to Web1)
/var/www/website/_files.bak (rsync copy from web1 incase web1 explodes)

兩台伺服器在儲存方面都接近實時,它們是冗餘的,您不必添加任何復雜的同步廢話。

編輯:

http://www.migrate2cloud.com/blog/how-to-setup-nfs-server-on-aws-ec2

有關於如何在 EC2 實例上使用 NFS 的指南。

引用自:https://serverfault.com/questions/298219