云計算的開放架構設計
1.5 IaaS能力開放的安全性考慮
對于商業(yè)系統(tǒng)用戶來說,系統(tǒng)的高效訪問、可靠性、易用性是其中一個方面,但最終決定是否使用云計算作為企業(yè)基礎服務的是能力開放的安全性。
?。?) 特權使用者的管理
特權使用者,例如運營商的管理員,由于具有絕對的權力,必須嚴格監(jiān)管。
?。?) 法規(guī)的遵守
雖然云計算公司是通過運營商提供服務,但法律法規(guī)還需要提供服務的公司遵守并承擔,而非運營商本身。因此客觀要求不僅是服務公司必須滿足相關的法規(guī)要求,為其提供服務的運營商也必須滿足相關的要求才能夠避免法律風險。
?。?) 資料所在地理位置的管控
隱私保護權在各個國家和地區(qū)有所不同,作為無邊界的網絡服務,必須有能力滿足特定地理位置下用戶的隱私規(guī)則,以保證符合服務地的法規(guī)。有些國家和地區(qū)對敏感數據的物理存儲地址也有限定,服務提供商必須能夠滿足這些要求。
?。?) 數據的隔離
云服務面向很多用戶,因此必須保障數據的有效隔離,必要時要有能夠提供數據物理隔離的能力。
?。?) 故障情況下數據的恢復能力
故障發(fā)生時,如何能夠快速恢復服務與數據,并有效備份數據,是必須考慮的。
?。?) 對調查的支援能力
某些法律,如《薩班斯法案》中,要求所有的數據操作都有可追溯性。如果面臨審計或法律調查,服務提供商要能夠有效提供相關的操作數據。
?。?) 永久可用性
云服務的供應商不一定可以永久地提供服務,例如HP最近就停止了網絡相冊服務。在服務終止時,將數據和服務由一個運營商遷移到另一個運營商或自己的數據中心是一個非常重要的安全性因素。
2.1 基于虛擬化的業(yè)務云托管與部署
這種應用場景主要是互聯(lián)網數據中心(IDC)的運營[5],典型的如Amazon的彈性計算云(EC2),能夠支持各種不同的操作系統(tǒng)以及開發(fā)環(huán)境。這種類型的平臺一般向用戶提供了如下特性:
靈活性
系統(tǒng)一般容許用戶對運行實例的類型、數量、占用的資源量甚至地理位置進行相對自由的定制,并可以根據用戶需求隨時調整。
低成本
使用運營商提供的這種服務以后,小型企業(yè)就不必自行購置昂貴的機器設備及網絡設備,可根據服務的容量及時間進行收費。
安全性
運營商一般會提供一整套的安全措施,如基于安全外殼協(xié)議(SSH)的訪問鑒權、防火墻設置等,同時容許用戶對他們的應用自行監(jiān)控。
易用性
運營商除了提供基礎的虛擬機服務以外,還會提供其他一些基礎服務,如對象存儲、數據庫、消息管道等。應用程序不必額外搭建這些基礎設施就能夠直接使用。
容錯性
系統(tǒng)一般都提供一定的網絡及存儲容錯機制,一旦發(fā)生故障,能夠保障數據的可靠及盡可能穩(wěn)定的用戶服務。
對外提供的訪問接口主要有3類:
虛擬機遠程訪問接口。主要是通過統(tǒng)一驗證的SSH服務及可靠數據協(xié)議(RDP)服務提供。
管理服務接口。提供用戶自行監(jiān)控虛擬服務集群的狀態(tài)及創(chuàng)建、刪除、調整虛擬節(jié)點。
業(yè)務服務訪問接口。完全由客戶在虛擬機內運行的服務提供,但系統(tǒng)可以提供統(tǒng)一的安全訪問服務。
2.2 業(yè)務能力開放
業(yè)務開放平臺能夠提供網絡或業(yè)務執(zhí)行的模塊接口。開發(fā)者能夠通過調用開放應用程序編程接口(API)所提供的各種功能[6],快速集成不同的模塊,以建立新的網絡應用。目前這類服務有很多,最著名的是Google的地圖服務。電信企業(yè)也能夠開放和電信相關的一些業(yè)務,例如手機的位置查詢服務、短信群發(fā)服務等;淘寶也根據自身需要,開放了與很多用戶商品和交易相關的API。
為了讓這些不同的服務與資料快速集成,很多公司還同時提供Mashup快速開發(fā)工具,例如Yahoo 的Pipe、Google 的Mashup Editor 以及微軟的Popfly。
在業(yè)務能力開放平臺,一般還需要設立開發(fā)者沙箱[7],用于協(xié)助開發(fā)者在開發(fā)階段模擬真實系統(tǒng)操作,同時又不干擾真實系統(tǒng)的運營。圖6是業(yè)務能力開放平臺的一套典型部署結構。
業(yè)務能力開放平臺對于客戶端的接入必須要有訪問控制功能,一方面是客戶方的鑒權與認證,只有經過合法認證的客戶方才能夠使用業(yè)務服務;另一方面不同級別客戶的訪問權限及調用頻率需要驗證,以防錯誤的客戶方或惡意的程序導致服務異?;驍祿惓?。
2.3 在線服務托管模式
在線業(yè)務托管平臺是企業(yè)資源計劃(ERP)、客戶關系管理(CRM)或通用的服務提供商通過開放平臺,容許第三方在托管平臺上開發(fā)自己的服務并對外提供服務。這些第三方開發(fā)的服務有各自明確的用戶、獨立的需求,但是需要使用平臺方提供的基礎資源進而對外服務。典型的如Google的App Engine、Saleforce 的force.com及ebay與淘寶的托管平臺。第三方服務共享平臺的資源、用戶和數據,專心開發(fā)需求解決方案,有效地補充了平臺所不具備的各種能力。例如目前eBay 有45%的商品是通過第三方應用上架。
各平臺包含標準的服務框架、數據訪問接口以及特定的編程語言支持。部署在平臺上以后,平臺可以自動根據訪問的熱度等分配計算資源,進行平滑擴展。
2.4 開放服務接口的版本管理與動態(tài)升級
對外服務不可避免地會涉及到接口的版本管理與升級策略,為保證服務的持續(xù)性,我們必須保證能夠在不中斷服務的情況下進行版本升級,保障不同版本客戶端之間的兼容性與可用性。圖7說明了如何進行向前兼容的服務接口設計及升級流程。
評論