Scale Up類型的雲端運算應用
在上一篇 雲端運算的技術簡介-(1)中,簡單的介紹了Hadoop類型的雲端技術,本週則要介紹另一類的雲端技術,這類技術相較於前次介紹的類型,在運用上廣泛常見的多。舉例來說:從網路服務管理角度來看,最好是一個伺服器只用一種網路服務,這樣環境最單純,但從成本上來看,這是很難達成的目標,所以,在早期我們都會將多個網路服務或應用系統都放在相同的硬體環境上,慢慢地,這樣的環境就越來越複雜,也越來越難管理,只要部署新的服務,就有可能不小心又動到其他網路服務了。
但隨著多核心技術的成熟,我們發現系統有越來越多的閒置計算能力沒有用到,這就給了模擬環境如VMware、Xen這類虛擬機器軟體發展的空間,透過虛擬機器軟體模擬,我們可以在相同的硬體空間,創造並模擬出各自獨立的作業環境而不相互影響,同時解決了成本與簡化管理的問題,所要做的就僅是犧牲部份多餘的運算能量就可以了。如果我們將這樣的觀念再擴大去思考,將所有的網路運算服務集中在一起,放在遠端去管理,那就是另一類Scale-Up架構類型的雲端運算了。
技術架構簡單說明
談好了其應用的基本概念,該來談談其技術的基本架構觀念了,下圖就是其主要架構觀念
(1) 最底層為實體硬體層,也就是我們所能看到的CPU、記憶體、I/O…等等。
(2) 上去一層為Virtual Infrastructure,該層主要目地在分配與管理上方虛擬機器所會運用到的下方實體硬體資源。
(3) 再上去一層,則為各虛擬機器所模擬出來的作業環境,每一個虛擬機器,都可以有各自不同的作業系統與應用系統,也由於相互間各自獨立,所以使用者不需擔心,系統設定會相互影響。
(4) 不過,也由於有中間層Virtual Infrastructure的存在,所以,系統會依虛擬技術的不同(如Vmware、Xen…),而耗損不同程度的總體效能,但隨著多核心CPU的問世,有了多餘運算能力,這類問題也變得漸漸不重要了。
從Scale-Up到Scale-Out的雲端運算技術
說到這裡,希望可以協助各位網友了解到,現在我們在談的雲端運算,其實可以大略區分為兩大類技術架構,而除了在架構上有差別之外,應用情境上也有所差別。在這裡我舉一個網站發展例子,供各位參考,希望可以讓各位更了解Scale-Up與Sacle-Out在應用上的差別。
一個新創的網路服務,可能初期並沒有太多的使用者,所以為了節省成本,我們可能會在外面租用一個Hosting環境,而該Hosting環境可能就是採用如VMware或Xen所打造的虛擬機器環境,這樣的環境很可能就是Scale-Up的架構。之後,隨著網路使用者變多,可能一台伺服器已經不夠用了,我們決定將該服務收回來在企業內的機房內架構,並透過L4 Switch進行多台伺服器負載平衡。最後,該服務實在太成功了,如Google或Facebook般展開全球服務,所需要的資料量已經龐大到無法交由單一伺服器進行運算,所以,我們決定將需要龐大運算能量的服務,改寫為能適應Scale-Out的向量運算,當然這代表的是許多底層程式的大翻動,不過這樣的好處是,未來不論使用者與資料量如何增加,對我們而言只要不斷加硬體就可以克服,徹底解決未來運算能量不足的問題。
留言列表