雲端運算與JAVACloud Computing鄭安富雲端運算(Cloud Computing)雲端運算不是技術,它是概念。為什麼?因為cloud computing 本身就不代表任何一項資訊科技的技術,它是一種電腦運算的概念,而一種概念就會有許多不同的方式去實踐,這個時候才會有不同的技術衍生出來。雲端運算(Cloud Computing)雲端運算(cloud computing)最基本的概念,是將龐大的運算作業拆成千百個較小的作業,交給遠端、多台伺服器同時運算。透過這項技術,網路服務提供者可以在數秒之內,處理數以千計、萬計的資訊,並提供和「超級電腦」一樣強大效能的網路服務,以符合眾多網友的需求。Google搜尋服務、Gmail、YouTube、Google Docs、Google Talk、iGoogle、Google Calendar都充分應用到這項技術。如今Google也秉著開放精神,要將這項技術的開放原始碼軟體和學術界分享。雲端運算(Cloud Computing)顧名思義,雲端運算乃一將各式網路服務架構於網際網路雲上之概念,而這項常被基礎設施即服務(Infrastructure as a Service, IaaS)、軟體即服務(Software as a Service, SaaS)一同提起的概念,其實從90年代開始,就陸續以分散式運算(Distributed Computing)、網格運算(Grid Computing)和公用運算(Utility Computing)之名稱先後問世。萬變不離其宗的是,這些概念主要都是指透過一台以上的主機,藉由網際網路的連結,而可整合原先獨立的運算資源,以加速網路服務的運作,進而提升各種工作任務的效能。雲端運算(Cloud Computing)雲端起源超級電腦(Super computer)為了滿足大量運算處理的需求,需大型伺服器提供24小時、365天全天運作的基礎能力,以及超大儲存空間。雲端起源如果你沒有如NASA一樣有超級電腦作龐大運算?雲端起源網格運算(Grid computing)可以把運算需求分散到很大量的普通電腦上。叢集運算(Cluster computing)重視提供不中斷的服務、資料的備授能力以及高可擴充性。雲端運算(Cloud computing)具備多點叢集運算的架構。而建構在此架構上的服務可以稱作雲端服務。雲端起源那你不彷化整為零,將超級主機化成雲端千萬個人電腦做分別運算。尋找外星人計畫SETI@home雲端運算與檔案伺服差異那我十年前就架設Web Server、FTPServer、Game Server....等等伺服叢集運算、資料分享,這樣我就是雲端的先驅者?SharePointServices那使用端想要開啟使用EXCEL2010試算表可不可以不用安裝?上網就可以使用及檔案共用?使用端使用端雲端架構目前雲端運算服務產業主要有三大商業模式:架構即服務(IaaS): IaaS廠商包括IBM藍雲計畫Blue Cloud、Amazon.com虛擬運算服務AWS軟體即服務(SaaS): SaaS廠商包括Salesforce.com CRM、Oracle Siebel On Demand平台即服務(PaaS): PaaS廠商包括微軟Windows Azure與Google App Engine。雲端架構基礎設施即服務(Infrastructure‐as‐a‐Service)可在短短的幾分鐘之內,提供一部虛擬機器給有複雜需求的開發者,讓他們按著自己的需求進行開發與部署。雲端架構軟體即服務(Software‐as‐a‐Service)提供給使用者的是一種隨選且完整的應用程式,使用者無法對其進行調整,只能在外觀與工作流程上的設定上做一些微小的改變,不過並非所有的應用軟體都適合透過此服務來提供。雲端架構平台即服務(Platform‐as‐a‐Service)提供給應用程式的開發者一個建構、部署與管理的環境,讓開發者可以創造出新的服務並快速地將其部署在網路上。雲端特色條件1 基於虛擬化技術快速部署資源或獲得服務。2 實作動態的、可伸縮的擴充套件。3 按需提供資源、按使用量付費。4 透過網際網路提供、面向海量資訊處理。5 使用者可以更方便地參與。雲端運算簡介雲端類型公共雲端外部雲端(External Cloud) 服務供應商提供極精細的IT服務資源動態配置,並透過Web應用或Web服務,提供網路自助式服務。不需知道伺服器的確切位置,或什麼等級伺服器,所有IT資源皆有遠端方案商提供。中小型企業:最佳IT運算與成本效益的解決方案。有能力自建資料中心的大型企業:安全與信任上的顧慮。雲端類型私有雲端內部雲端(Internal Cloud) 提供更高的安全掌握性,同時內部IT資源在管理、調度、擴展、分派、存取控制與成本支出上都更具精細度、彈性與效益。在可見的未來取代資料中心,成為資料中心未來蛻變轉型的終極樣貌。雲端類型混合雲端企業同時擁有公共與私有兩種型態雲端。企業不但可提升內部IT使用效率,也可藉由對外的公共雲端服務獲利。今後企業IT建置的主流模式。代表:亞馬遜(Amazon)。提供簡易儲存服務(Simple Storage Service;S3)及彈性運算雲端(Elastic Compute Cloud;EC2)服務。雲端應用YouTube防毒軟體商用‐龐大的數據計算線性規劃、統計分析科學生物科學:DNA建構提高效率、降低成本現況概述目前雲端運算的儲存服務存在各種技術繁雜而多樣儲存方案,且不同儲存設備供應商間的儲存環境存在相容的問題,所以儲存虛擬化推廣有其難度。標準化雲端運算介面API介面激增的因素:IaaS基層架構具有可程式的介面。許多雲端方案供應商免費授權其專利API 。雲端運算所要求API標準:中立。以最低的風險和被保證的穩定性來建置。開放網格論壇(OGF)成立專責介面標準化的工作小組。IaaS應用-雲端儲存應用CDI公司PACS的雲端應用CenterforDiagnosticImages(CDI)公司結合旗下50間影像中心組成醫學影像存檔與通信系統(PACS)。2002年,CDI將旗下各型資料庫的醫學影像資訊系統(RIS)整合在唯一RIS環境。2003年,導入了EMC合夥公司Acuo的DICOMServiceGrid,將影像傳輸標準整合為醫學數位影像與通信標準(DICOM)。CDI公司PACS的雲端應用2005年,CDI將儲存設備換成兩套以內容來定址的EMCCentera儲存系統,此系統開放易於管理的線上存檔,也可依CDI公司資料量多寡調整所需儲存空間。由於舊有PACS皆已改為DICOM標準,加上先前合作的Acuo是EMC合夥公司,使CDI公司的軟硬體建構及使用標準可以緊密配合,讓影像資料順利從舊有PACS轉到雲端上的PACS。現況概述目前雲端運算的儲存服務存在各種技術繁雜而多樣儲存方案,且不同儲存設備供應商間的儲存環境存在相容的問題,所以儲存虛擬化推廣有其難度。標準化雲端運算介面API介面激增的因素:IaaS基層架構具有可程式的介面。許多雲端方案供應商免費授權其專利API。雲端運算所要求API標準:中立。以最低的風險和被保證的穩定性來建置。開放網格論壇(OGF)成立專責介面標準化的工作小組。雲端運算介面開放網格論壇團隊開放雲端運算介面標準(OCCI)。圖、OCCI 介面架構圖雲端儲存雲端儲存核心管理系統應用中介層目前由網路產業協會(SNIA)致力國際間儲存標準制定及API開發作業,用以集中搜尋、監控並管理不同廠牌及標準的儲存設備。雲端儲存標準介面(CDMI)由SNIA草擬的CDMI可以強化雲端儲存與資料管理的協同作業。CDMI不只提供具備CRUD基本操作概念的資料物件介面,同時也可以用來管理被雲端運算基礎架構所傳送的容器。圖、雲端儲存參考模型小結標準化的介面協定將有助於未來不同平台的醫療資訊系統交流資訊,同時醫生與病患也可在雲端服務上共築另類溝通管道,進而提升醫療品質。IT資源配置的彈性需仰賴各種不同平台的協同工作,而國家標準的制定將有助於整個雲端運算相關產業的應用發展。PaaS介紹PaaS (Platform as a Service)PaaS(平台即服務)常見的PaaS服務平台1 Microsoft Azure2 Google App Engine3 Amazon Web Services4 Salesforce.com Google App Engine簡介1支援JAVA2支援PythonGoogle App Engine提供的功能動態網頁服務永久儲存查詢自動擴充使用「Google 帳戶」傳送電子郵件全功能的開發環境排程工作Google App Engine對開發人員的好處1 安全性、可靠性2 立即可用3 無須基礎架構4 加入社群Google App Engine 結合APIURL 擷取郵件Memcach 影像操縱排程工作統整Google App Engine用途:提供給程式設計或軟體開發廠商使用,包括Java、Python語言程式以及連結Bigtable 資料庫的運用。優點:提供一個免費的雲端測試運作環境,若是初始創業的人可以利用這個平台測試市場的反應。缺點:只提供支援有限的語言程式以及特定的資料庫服務,未來要移轉或自行建置程式或系統會有門檻跟難度。實例:程式開發人員的天堂選擇PaaS公司:Heroku使用情境:個人想要建立默拉克風災支援情報網,但缺凡管理人力與硬體資源。初始訴求:能夠支援Ruby on Rails,並可提供高流量承載與彈性擴充機制。實際成效:可依照預測流量來擴充硬體資源,不必擔心像過去自建或租賃的主機的方式,一旦流量過高就會把網站充掛。支出成本:花費一個月2000台幣。小結對於開發人員或者是企業來說,選擇使用雲端運算服務,所看上的還是雲端服務提供的硬體資源與擴充彈性,以及企業最在意的安全問題。當這些問題隨著雲端運算發展越來越成熟時,相信也能夠獲得更好的服務,解決企業更多的需求問題,相信雲端運算一定是未來新的IT架構願景。SaaS介紹SaaS簡述軟體即服務是Software‐as‐a‐service,簡稱SaaS,隨著網際網路技術的發展和應用軟體的成熟,而在21世紀開始興起的一種完全創新的軟體應用模式。由於不需要安裝在客戶端的電腦,所以部署、維護、更新都相當容易。SaaS操作軟體不再是軟體,而是以服務的方式存在,且只要連上網路就能使用。消除了企業購買、構建和維護基礎設施和應用程式的需要。SaaS特性1.零週期2.零風險3.免維護4.安全性高5.動態更新6.靈活使用7.低投入SaaS作法前端利用網頁瀏覽器當平台,後端利用Web伺服器當平台。如何將既有的程式SaaS化?SaaS平台:企業讓桌面軟體立刻變成SaaS,員工只要登入該企業的domain,就會自動啟用OS層級的虛擬制。「隨選軟體」(SoD,Software on Demand)SoD成效以SoD的方式進行SaaS,最明顯的好處有:1.可以使用熟悉的軟體2.充分運用客戶端的運算資源3.操作上比原生(native)程式順暢。4.大多數的桌面應用,往往自給自足,不需要和伺服器互動,用SoD比用傳統的SaaS更適合。5.除了提高啟動速度,網路不通時,也可以照樣執行。6.資料可以儲存在本地端或伺服器端。SoD缺點但是SoD依然有缺點:1.客戶端必須登入特定的domain 。2.目前的SoD有作業系統的限制(只限特定作業系統)。3.有的軟體授權方式可能不允許將軟體安裝在伺服器上,然後發派到許多客戶端電腦上執行。On‐Demand技術On‐Demand 技術顧名思義就是把數位內容如電影、音樂、書籍