Load-Balancing

使用 apache2-mpm-itk 進行負載平衡

  • August 14, 2011

我正在為我正在從事的一個項目做一些研究,但對於負載平衡和 mpm-itk 該怎麼做我有點難過。

我目前有一個執行 apache2-mpm-itk 的 Web 伺服器 (webA),它將使用者文件儲存在/sites/<sitename>. 所以,如果我點擊www.siteA.tld它,它會從/sites/siteA使用者 siteA 中拉出並執行。

這適用於單個伺服器,但如果我現在將 haproxy 放在前面,並直接到 webA 和 webB,那麼只有命中 webA 的請求才有效。(顯然,因為我還沒有同步這些盒子。)

問題是,同步這些機器的最佳方式是什麼?

  1. 使用 rsync 同步/sites/*文件夾?(但是使用者帳戶呢??)
  2. 使用 NFS 儲存/sites/*文件夾,並以某種方式同步使用者?
  3. 其他一些與 mpm-itk 配合得更好的酷方法?!

我想我真正想要的是如何保持使用者帳戶同步,以便 mpm-itk 仍然可以在任何一個盒子上工作。

編輯:它不一定是mpm-itk,但我可以以任何方式將apache作為單獨的使用者執行,負載平衡,並使使用者帳戶在多台機器之間保持同步。

如果要使用 mpm-itk,則必須確保兩台機器上的 /etc/passwd 和 /etc/group 文件的內容相同。這意味著您要複製的文件具有相同的 UID 和 GID。至少對於mpm使用的部分。只要您同步上述內容,然後將網站基礎文件夾的內容複製到新機器上(通過 rsync 或其他任何方式),您想要的事情就可以很容易地完成。它可能涉及一些腳本和用左手撓右耳的感覺,但它實際上會起作用。

另一方面,如果您真的想使用水平縮放,我會推薦以下兩種方法之一:

a) DRBD 以類似於網路 RAID1 的方式複制分區 - 您所需要的只是同步使用者內容

b) 嘗試分佈式文件系統。GlusterFS 已經足夠成熟,應該不難設置。

以上任何一項都會讓您更接近您想要實現的縮放比例。

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