瞭解雲計算六(分佈式服務部署)

這一篇我們一起了解一下分佈式服務部署方案:

方案2:分佈式服務部署

1、部署方式

在投資界,有一句至理名言,“不要把雞蛋都放在一個籃子裏”。說的是投資需要分散風險,以免因孤注一擲的失敗造成巨大的損失。在服務器架設方面,一般也需要滿足這個原則。方案1由於把所有的服務都放到一個服務器上,帶來的風險是巨大的。當這個服務器出現問題,所有的服務都癱瘓了。
針對這個問題,很自然地會想到分佈式系統的處理方法,也就是方案2。既然架設在一臺服務器上危險的,那麼把這3個服務分散至3臺不同物理服務器上。
採用分佈式模型,會帶來很多優點:
- 安全:由於服務都分散至了3臺機器,3個服務之間是相互隔離的,並且每臺機器可以針對性設置防火牆。當一臺機器被攻擊的時候,別的服務可以不受影響,不會出現所有服務都崩潰的情況。因此,可以說,在安全性方面,相比簡單模型方案1而言,分佈式的方案2已經有了明顯的改觀。
- 可靠性:每個服務不同的可靠性問題,在分佈式架構下都可以得到解決。比如http需要的高可用服務,只需要額外加一臺備用服務器,當http服務器出現問題的時候,就使用備用服務器。MySQL服務可以採用高可用集羣的部署方式,ftp文件存儲服務,可以替換爲分佈式存儲服務,或者直接採用雲存儲作爲存儲服務。

2、存在的問題

採用分佈式架構之後,可以解決安全、可靠性、擴張等等問題。但是,擴展、部署和維護都會直接面對大量的物理服務器,其難度也相應增加。
- 擴展難度: 當用戶增加,訪問量開始上升的時候,對系統管理員、維護人員來說,又要進行採購設備、配置硬件、安裝系統、配置軟件等一系列重複而又繁瑣的工作。
此外,還存在潛在的浪費。比如對於持續高訪問量的網站而言,只需要連續不斷地增加服務器,可稱之爲添油戰術。但是有的網站的訪問量,在特定的時期會出現爆發式增長。採用添油戰術的情況下,平時的低訪問量,將造成大量的服務器閒置和浪費。
- 部署難度:部署這麼一套分佈式系統,實在是比較麻煩的事情。可以想象的是,開發人員的開發環境、測試環境和生產環境都需要不斷地重複驗證。在此期間,需要經歷多少次反覆。交付客戶之後,還需要保證客戶能夠維護這樣一套複雜的系統。
- 維護難度: 在分佈式系統中,當發現某臺物理服務器出現故障的時候,補救措施一種是在原機器上進行修復;一種是找一臺新的物理服務器,重新安裝操作系統和服務軟件。在此期間,需要經歷漫長的修復過程。

總結:

如果覺得以上這些理論不容易理解,那麼還是回到生活中:一個人想開一個超市,採購、運貨、賣貨、收銀都由不同的人去完成。
擴展而言,就是當某個職位的人手比較少的時候,需要找新的人進行相應職位的培訓。而且還需要考慮到人員過剩的情況。
部署而言,就是各個崗位需要找齊相應的人,並且進行相應的培訓。還要保證這些人員之間可以進行比較好的合作。那麼涉及的崗位越多,壓力也就越大。
維護而言,就是當某個人身體出現問題的時候,需要等待這個員工恢復健康,或者是另找一個人頂替。
儘管這個方案存在一系列問題,不過已經基本能夠滿足開一個小超市的需要了。

下一篇我們瞭解基於虛擬化的服務部署方案…

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