雲端運算是什麼?

由 Derek 發表於 十月 3, 2011 / 尚無評論

 

雲端一詞,最近越來越熱門了。剛好有機會可以了解「什麼是雲端」。

以下內容是參考了「 AWS 雲端企業實戰聖經」,所整理出來的。 若想更深入了解,可自行直接購買。

 
雲端運算如何定義 :
 

 
最近在資訊界越來越常聽到「雲端」這兩個字被套用在很多服務上。但是卻有個問題,使用的人越來越多,相對的對於「雲端」的解釋上也就會有所不一樣了。
 
雲端運算(Cloud Computing)並非技術,而是一種概念,是基於電腦技術的運用,發展而成的一種網路交流型態,「雲端」就是指「網路」,雲端運算就是利用網路溝通多台電腦的運算工作,或是透過網路連線取得由遠端主機提供的服務等。雲端運算技術最早是由Amazon所提出的,為了因應網路購物平台而生,之後Google、Microsoft先後跟進。
 
就以我知道的來說,對「雲端運算」的定義為 :
 
依使用者需求( on-demand ),以網際網路為基礎,來提供大量的運算能力,分享資源及服務。
 
所謂「依使用者需求」,指的是能「即時」依使用者的要求,去改變服務或資源的大小。雲端運算服務提供者( cloud compurting service provider ) 一定要提供API、GUI或命令列工具,可直接控制。
 
 
 
 
雲端運算服務提供者必須要能提供大量的運算能力。基本上是遠超過我們會需要的資源,也就是要擁有無限的擴充能力。要使用雲端服務最基本的至少要有穩定的網際網路,否則是無法實現。大家常說的雲端運算的「雲」指的就是網際網路。而在雲端的部份也是有分私有雲( private cloud )或公有雲( internal cloud )。

私有雲( private cloud ) :
 
 所謂的私有雲指的是自己建制私人的雲端環境,因此也就不一定要使用到網際網路了。又可稱為內部雲( internal cloud )。

公有雲( internal cloud ) :

所謂的公有雲指的就是在公開的網際網路環境中,所建制的雲端運算服務。如:Google、Microsoft、Amazon


雲端運算層級分類:
一般來說雲端可分為三個層級。從低到高依序為: IaaS (基礎建設服務)、PaaS (平台服務)、 SaaS (軟體服務)

IaaS ( Infrastructure as a Service ) :
 
IaaS (基礎建設服務)簡單來說就是透過網際網路,以服務的方式提供運算能力、儲存裝置、網路、及其他的建設(DNS、防火牆、Load Balancers等服務),在之前此種服務也稱為HaaS(Hardware as a Service 硬體服務)。
 
在使用IaaS上會有很大的自由,可以滿足使用者高可用性、可擴展性及靈活性的需求。在IaaS上可以安裝你所需要的軟體,開發者可量身打造所需要的環境及構。IaaS服務提供者是以虛擬化( virtualization ) 技術提供運算能力的。
 
而在使用IaaS的好處是不用先付一筆受權費,用多少,給多少。

一般的laaS會依下列的項目來收費:
1. 運算能力使用量 (CPU、RAM的資源大小乘上小時數來計算)
2. 資料傳輸量 (分傳入及傳出的資料量)
3. 儲存裝置使用量 (佔用空間、讀寫次數、資料傳入及傳出的資料量)

IaaS一般來說具有「短暫性」的特質。所以只要一關機,或是失效時,資料就會消失不見了。所以在架構上會需要和其它具「永續性」的服務來合作,通常這也是使用雲端的服務。



PaaS ( Platform as a Service)
 
PaaS為一種服務型的主機平台。是由服務型軟體(Saas)衍生出來的一種服務型態,使用者不用自已建置執行軟體的主機和OS等平台,透過網路利用提供PaaS服務業者的平台。而且能夠省去主機的維護和障礙對應的人力和時間。

PaaS比較特別的是,在使用上較受限於服務提供者。因此像是程式語言、目錄結構、設定檔、API在開發、佈署上都必須要合乎此平台的規格。才可使用。在PaaS上是沒有所謂電腦的概念,而是平台上的應用程式的概念。相對的若是此平台沒有提攻你所需要的功能也無法使用。由於環境都是PaaS提供者綁定的,所以在日後的轉移上就會比較麻煩了。

大部份的PaaS提供者都會提供開發套件( SDK )、整合開發工具( IDE )、來幫助開發應用程式。也會負責處理monitoring、scaling、disaster、recovering,所以管理者負擔會比IaaS小。


SaaS (Software as a Service)
簡單來說SaaS就是供應商將開發好的應用程式,透過網路的方式提供給一般使用者使用。和直接安裝在使用者電腦的軟體是不一樣的,SaaS服務只要透過瀏覽器( browser )就可使用。所以使用者的電腦是不需要安裝相關軟體。而在SaaS服務上最常見的收費方式就是以月費方式收費。


雲端運算的優勢 :
 
首先來看一下傳統所提供服務有那幾種 :
 
虛擬主機 (virtual private server) :
簡單來說就是,服務提供者使用虛擬化技術,將一台實體主機分割成很多台虛擬主機,然後在提供 給使用者。儘管再怎麼分割,由於還是使用同一台實體主機。因此在資源上像是CPU、記憶體、硬碟、頻寬等都會有所限制,且大多是共享的。而使用者也不會有太大的控制權。

專屬主機 (dedicated server) :
所謂的專屬主機,指的是服務提供者提供一台實體主機,同時也會把作業系統和軟體都設定好,讓 使用者擁有完整的主機資源和所有權限。同時服務提供者也會額外提供一些服務像是監控 (monitoring)、備份(backup services)、套件安裝(OS /software patches)。

主機代管 (colocation center) :
使用者自行提供已安裝設定好的主機給服務提供者。而服務提供者只需要提供,網路、不斷電裝置、 冷卻設備和一些基本的設施。整體對使用者來說,主機代管的方式成本比較高,但相對的彈性和自由度就比較好。

 
雲端運算與傳統服務的差別 :
 
費用
傳統 :
不論是虛擬主機、專屬主機或是主機代管在費用上大多是以「年」為單位。即使申請後沒在使用費用一樣照算,就算要退費也是會扣除一些手續費用。

雲端 :
 IaaS和PaaS的計費週期通常是小時,SaaS則是以月為單位。有使用的時後才收費,沒使用的話則不收費。

設備新增及問題處理
傳統 :
在傳統服務上不論是設備的新增或是問題的處理上,都需要透過「人」來處理。假設要新增機器的話,虛擬主機需要先向服務者申請新的服務,然後等管理員去設定新增後才可使用,專屬主機的話也是需要有專人去安裝軟體、設定硬體之後在至機房上機佈署。至於主機代管,也是需要使用者先自行購買主機、設定、安裝、上機。這些流程大多是以「天」來計算的。

雲端 :  
Amazon、Google、Microsoft為現在較大的雲端服務提供者。都有完整的操作經驗。在處理問題上會節省很多時間。通常都會有自動恢復的機制,在換上新的硬體後就會自動回復了。因為雲端的使用者是不需要擔心設備的問題。重新的配置資源就可以了,節省時間及管理成本。

也因為提供雲端服務者具有更大的經濟規模。所以在價格方面會比一般業者來的更有競爭力,資料安全性也會有更多的成本可投入,因此也會比一般業者好。



雲端運算優點 :

1. 「便利自動化」: 自動化,減少人事成本,可快速反應變化。
2. 「方便實現延展性」: 可依照需求來增加或減少要使用的資源,
3. 「有效率的開發流程」: 容易複製正式環境到測試環境使用
4. 「可測試性」: 隨時有足夠的機器供測試,更可快速建制測試環境
5. 「高可用性」: 在備份設定上不需自行建制,可使用雲端服務提供的異地備援。




雲端運算的三大考量 
 
網路穩定性考量 :
對雲端運算來說最重要的應該就是網路,不論是那一種服務都必須依靠網路,因此網路的穩定性就很重要了。

資料安全性考量 :
這邊所說的安全性,指的是資料損毀的可能性。而在雲端的儲存資料分為兩種「長期性儲存」和「暫時性儲存」。所謂「暫時性儲存」一但關機後資料就沒了,而「長期性儲存」雲端服務會建立多複本存在不同的硬碟上,增加資料的安全性。

資料機密性考量 :
在未來會使用雲端服務的企業會越來越多,因為在資訊安全也是雲端運算最大的疑慮。就自身來說在資料傳輸過程中,可使用SSL來做加密後在上傳到雲端。而就以雲端服務廠商( Amazon、Google、Microsoft )來說,由於都是屬於較大的雲端服務提供商。所以能投入較多的資金來對機房或是網路資安來多作防範。但主要還是要看使用者是否相信自己所選擇的服務提供商。
 
 
 

 

關於作者

一個半路殺出來的傻小子,憑著一股傻勁努力的學習、嘗試、分享。希望能用自己微薄之力,替IT界和資訊界盡一點心力。單憑一己之力始終還是有限,歡迎和我有相同理念的夥伴一同加入一同努力。

評論

此文章尚無評論。

發表評論

*