Virtualization

如何使用雲託管網站?

  • October 3, 2011

目前,為了託管網站,我們正在使用在英國託管的專用 linux 盒子。但是管理它們是一場噩夢,備份、大量負載、停機等……

我正在研究由 RackSpace 開發的 OpenStack。是否可以使用我們在伺服器上託管的雲平台來託管網站?

我了解雲平台允許您擴展基礎架構,這正是我們所需要的。但是我們如何使用它來執行 MySQL 和 Apache?對於大多數 Wordpress 網站?

編輯:這些網站只是使用標準 LAMP 堆棧的普通 Wordpress 網站。

大多數“雲”提供商都會為您提供 IaaS。這意味著您可以獲得一組可以隨意管理的虛擬機。簡而言之,這些只是 VPS 服務,具有 API 的附加功能,可以在您需要時創建新伺服器。有時您可以將該 API 與一些簡單的指標(CPU 負載、流量等)聯繫起來,使其更容易一些。

但這不是魔術。如果沒有您的工作,它不會使您的網站具有可擴展性。您需要做的是設計您的系統,以便您可以添加更多(類似)機器來分配負載,並且它可以在其中一些機器失去的情況下倖存下來。

第一步是:

  • 一個“無共享”的網路應用程序:確保所有頁面盡可能無狀態。HTTP 請求之間的任何持久性都必須儲存在非本地。最初,這意味著所有“關鍵”的東西都必須放到數據庫中,而任何非關鍵的東西都必須放到 memcached 之類的東西上。
  • 負載平衡器,容錯分配器。由主機提供,或者您自己的(HAProxy、varnish、NginX)在您的應用程序前面執行(確保也使其冗餘)。
  • 一個複制的數據庫。例如,主/從中的 MySQL 和一些故障轉移機制,如果主失敗,則將“浮動”IP 號遷移到從屬。或主/主,也可以以延遲為代價為您提供一些額外的吞吐量。Amazon 還為您提供了一個與 MySQL 兼容的數據庫,其中包含您可能需要的所有冗餘。或者去一些完全不同的東西,比如riak、cassandra……事實上,這是最困難的部分;但是僅僅在兩個更大的實例上複製 MySQL 會有很長的路要走;特別是如果您在記憶體層上很聰明。

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