剛好PTT上有人在討論雲端運算是否在玩真的,故著手寫了這篇文章簡介雲端的概念
真的,雲端沒那麼複雜,且看以下分曉~~
#定義雲端(Cloud Computing)
當然,雲端運算並不是什麼新技術,
它融合了Grid Computing(網格運算)、Utility Computing(公用運算)、Web2.0、SaaS
但實際上到目前為止,也還有沒人能夠說出一個完全讓所有人能信服的定義
但多數大師都同意,雲端運算是個Business Term(商業術語),是個IT領域新的商業模式
這商業模式,架構在「運算資源是可被切割的」情況下
說個小故事:
大約十年以前,電腦的運算資源是很難被分割的,一台電腦就是給一個人用
要多人共用一台電腦? 可以,但數量非常有限,且非常的貴(IBM z/OS)
過去稱這種電腦叫Mainframe(大型主機)
那時,有個小公司誕生了,它的名子叫 VMWare
沒人知道十年後,它的技術概念會成為雲端最大的推手、也是最重要的核心
這概念的名子叫Virtualization(虛擬化)
現今雲端運算最重要的就是虛擬化,
可以確定的是,它是讓「運算資源可被分割給多人用」最重要的技術之一
另一個重要的概念就是「雲深不知處」
也就是說,使用者不需要知道所使用的服務在網路上的哪裡,
甚至連軟體開發者,也不需知道所用的"機器"實際上在哪個國家、哪個城市。
實際上,雲端上的"機器"是可以隨時被搬來搬去,使用者也不受影響,就如同筋斗雲一般~
這都要歸功於虛擬化的實現
#雲端架構(Cloud Architecture)
1.SaaS (Software as a Service)
將軟體做為服務來提供給使用者,舉凡Google上的各種應用都是
PTT或許可以說是Client-Server、是SaaS、也可以說是網路應用,但 還不是雲端運算
雲端目前最重要的核心在於虛擬化;有了它,電腦的運算資源才得以被輕易的分割
PTT並非架在虛擬化平台上,也不允許主機被遷移
長期在用PTT服務的各位一定經歷過人數過多、或是台大停電就連不上的事情
在雲端運算的概念中,這種情況"理論上"都可以避免
(說是理論上,是因為人為錯誤的問題很難避免,ex: 2011年4月底Amazon AWS的大出包)
2.PaaS
平台即服務,這裡的平台不是指Windows、Linux、iOS這些作業系統
PaaS所指的Platform(平台),是針對軟體開發人員說的
它提供一個方便軟體人員做開發、佈署、維護網路軟體的平台
只要用PaaS所提供的SDK(軟體開發工具)、用所相容的語言(Java, .NET, Python...etc)
就開發出符合雲端平台的軟體產品,並輕易的使用雲端的運算資源
像是微軟的Azure,Google提供的各種API都是一種PaaS
最近中華電信有個雲端開發大賽,用的就是他們做的PaaS平台
所以,請別再說台灣廠商沒能力做了 (做不做得起來是另一回事)
3.IaaS
基礎架構即服務,但,絕對不光只有實體機器!
回到一開始說的小故事,虛擬化用來切割運算資源,在哪切?
就在IaaS這一層
IaaS必須能自動化調配、控管所有的運算資源,給需要的虛擬機器(Virtual Machine)
虛擬機器,就是用虛擬化技術做出來的一個"虛擬的電腦、掛著真實的OS"
簡單來說,各位可以去Amazon EC2買一台裝Windows的虛擬機器
你可以遠端連上去,見到Windows的桌面、用Windows的程式,甚至會以為它是台真的機器
事實上,VM只不過是用了實體機器(稱之為Host)的一小部分資源罷了
所以,之前工研院所做的Cloud OS就是在做這件事:控管雲端上的運算資源
最有名的,還是Amazon EC2
目前各家雲端運算都還在建置中,故這IaaS這塊是最被看重的
如果只是做Server,沒有IaaS就只稱雲端廠商
不好意思,這只是台具有Hypervisor的Server而已
大家都可以做,沒什麼特別的
#與賺錢相關
說了這麼多技術的東西,聊一點卦好了
‧某大老說雲端會掀起伺服器的換機潮?
這是千真萬確的,虛擬化需要實體伺服器的CPU支援Hypervisor這項技術
在過去的伺服器可沒有,要走虛擬化,就只能乖乖換掉那些古董級的伺服器
‧雲端伺服器不需要太好?
這也是真的,有了IaaS,VM可以在伺服器間動態的搬移
一台實體機器掛了,IaaS會將在上面的VM搬走,然後繼續服務
對於使用來說,頂多是服務中斷個1、2分鐘而已
但是,另外雲端的另外2個主要硬體,就非常非常重要了(掛了可能會讓雲端服務倒一片)
一個叫Switch(交換器)、另一個叫Storage(儲存設備)
相信各位一定能想像的到誰能受惠:)
‧雲端跟版友的關係??
雲端運算整體概念,對軟體使用者的感受是最小的
但,只要搞清楚整天在喊雲端雲端的那些廠商,誰是真雲、誰是喊假的
就能找出真正的受惠股
甚至會寫軟體的朋友,可以利用雲端服務剛開始沒什麼軟體的時候,
做出能讓人喜歡用的軟體服務,下個無名可能就是你
‧台灣有誰在做雲端運算
除了資策會、中華電、工研院
至少還有一間我不能說,讓我們請問寶傑!
#Q&A
‧網路服務就是雲端運算?
否!網路服務不一定是雲端;如果只有SaaS,但仍是架在實體伺服器上,就不能算是雲端運算
舉個例子:機車一開始是延襲腳踏車的概念、造型,再裝上引擎
但能夠說腳踏車也是機車的一種嗎?
‧虛擬化就是雲端運算?
否!任何人都能下載到免費的VirtualBox, VMware,在自己的電腦上做出虛擬化的OS
這樣就能說是雲端了嗎?
雲端運算最後仍要有商業模式,虛擬化只是其技術核心,但不是全部。
‧雲端運算非得要虛擬化?
目前如此,但Intel有個技術叫Many-Core,是用實體的方式將運算資源做切割
或許有朝一日實體的運算資源切割也會成為雲端核心之一,但是
目前雲端還是得靠虛擬化技術。
By MARKBEX 辛卯年五月四日
(欲轉載本文請告知)
留言列表