如何為云計算選擇和準備應用 |
發(fā)布時間: 2012/8/15 19:33:29 |
通過云服務,你能夠為客戶和員工帶來額外的價值,甚至建立起新的收益流。以下我們將介紹如何在現(xiàn)有應用中找到適當?shù)姆⻊眨屗鼈優(yōu)橛釉朴嬎阕龊脺蕚洹?/p> 得益于亞馬遜EC2、Salesforce和其它公有云服務取得的成功,許多企業(yè)了解了云計算的價值。實際上,越來越的企業(yè)開始嘗試云計算。為什么不呢?啟動一個公有云服務或許可以在最小限度修改現(xiàn)有基礎(chǔ)設(shè)施的情況下建立一個新的收益流,或是為客戶提供便捷的自助服務。不過,啟動一個云服務的過程未必一帆風順。企業(yè)IT經(jīng)理需要確定在苛刻的條件下哪些應用能夠轉(zhuǎn)移到云上。此外,他們必須要建立或修改服務接口或API,應對控制與安全方面帶來的新挑戰(zhàn),包括建立用于計費與收費的使用情況追蹤功能。你是否已經(jīng)為云業(yè)務做好了準備?你的哪些服務已經(jīng)成熟到可以變成云服務?你如何建立一個成功的商業(yè)案例?你如何創(chuàng)建一個成功的云服務,無論它們是簡單的還是復雜的?本文將提供一些建立云服務的通用指南,包括如何識別、判斷、遷移和檢驗新的和現(xiàn)有應用服務向真正云服務轉(zhuǎn)型。通過這些信息,你將對如何在企業(yè)內(nèi)部或外部建立一個彈性服務有一個大致了解。 步驟1:為云選擇正確的應用 每個公司都有一個人人都認為會成為優(yōu)秀云服務的應用。但是往往分析證明情況并不如人們所認為的那樣。 你需要創(chuàng)建一個商業(yè)案例,以證明不同于單個應用或多個應用的云服務具有優(yōu)勢。你需要考慮云服務實際上是什么?需要考慮技術(shù)現(xiàn)實,包括遷移成本和性能。換句話說,云服務的真正投資回報是什么? 為了確定可行性,你首先需要考慮應用的實際價值。理解云服務的使用案例,例如以下這些常見的案例: 1、外部客戶能夠獲取訂單信息,包括檢查訂單狀態(tài)、延遲和升級等。 2、通過向其它外部公司出租庫存控制云服務,公司能夠獲得額外利潤。 3、公司其他部門能夠有效獲取正在使用云服務的數(shù)據(jù),無論是人至機器還是機器至機器,這將促使數(shù)據(jù)品質(zhì)提升。 確定潛在的云服務能夠解決的問題是確定云服務價值的第一步。需要記住的是,在一些實例中,你需要移動整個應用。而在其它一些實例中,你僅需要通過Web服務協(xié)議提供一些簡單的服務。 一旦在配置云服務之后確定了“原因”和“內(nèi)容”,你需要確定怎么做,更重要的是,它的成本可能是多少。遷移成本取決于現(xiàn)有應用的狀態(tài)和應用架構(gòu),以及作為云服務,你希望它們具有應用的哪些功能,或是完全像應用一樣。 很明顯,評估方式很大程度上取決于應用類型和你準備提供的服務。以下常用的評估步驟列表將幫助你著手: 評估現(xiàn)有應用的狀態(tài) 評估當前用戶接口設(shè)計 評估當前的安全設(shè)計 確定基于使用情況的賬單如何計費 評估核心應用和其它再開發(fā)任務的修改程度 考慮可能使用服務的內(nèi)部或外部客戶數(shù)量,評估可能需要哪些額外的架構(gòu) 評估需要增加哪些云計算功能,例如自動配置或多租戶 評估研發(fā)服務接口的成本和投入 確定與現(xiàn)有安全系統(tǒng)的整合所需要的投入 草擬測試與階段實施計劃 評估部署成本,包括以后擴展所需要的基礎(chǔ)設(shè)施。 一個總的原則為,應用越老越復雜,向云遷移的成本也就越高,費效比也就越不合算。與此同時你還要考慮技術(shù)的可靠性,例如性能損失。在通過開放的互聯(lián)網(wǎng)訪問時,任何內(nèi)部應用都會都會出現(xiàn)性能下降。 在將應用修改作為云服務時,應當考慮以下因素: 遷移成本。這是修改應用,讓其滿足云計算服務要求所付出的代價。包括所有需要的新硬件和軟件,以及調(diào)整架構(gòu)和設(shè)計、研發(fā)成本、測試資源、部署成本等等。 風險成本。換句話說,如果將應用向云計算遷移失敗,會遭受經(jīng)濟損失。 長期維護成本。隨著時間的遷移,你需要在維護云服務方面花費多少資金。 商業(yè)價值。讓應用成為真正云服務的潛在收益已經(jīng)超過了預期收益,包括戰(zhàn)略價值,例如能夠為現(xiàn)有客戶群提升服務,可更好的挽留這些客戶。 簡而言之:云服務的價值=商業(yè)價值-(風險成本+遷移成本+長期維護成本)。這一公式的時間范圍為三年。 如果一個應用轉(zhuǎn)型為云計算服務具有,000,000的商業(yè)價值、,000,000的風險成本、,500,000的遷移成本和,000,000的長期維護成本,那么可以表述為: 云服務的價值/投資回報= ,000,000 - (,000,000 + ,500,000 + ,000,000) 因此,云服務的價值大約為,500,000.很明顯,這例子已經(jīng)很好的證明了其自身的價值,你的云服務轉(zhuǎn)型相當合算。 在進行決策時,你應當考慮表1中所列出的內(nèi)容: 圖1 在準備創(chuàng)建云服務時應當仔細考慮以下問題: 明確為業(yè)務帶來的優(yōu)勢。 所選應用有明確而經(jīng)濟的可行技術(shù)路徑以提供云服務。 能夠定義可用的使用案例。 能夠整合基于使用的計費系統(tǒng)以測量服務的使用量。 能夠創(chuàng)建合理的安全架構(gòu),保護關(guān)鍵的商業(yè)信息。 對數(shù)據(jù)和服務具有良好的管理方法。 步驟2:評估現(xiàn)有的應用架構(gòu) 一旦你計算出可行的投資回報,證明你云服務具有合理性,那么你就可以關(guān)注現(xiàn)有應用的架構(gòu)了。其中包括: 數(shù)據(jù) 服務 流程 網(wǎng)絡(luò) 用戶接口和API 安全性 管理性 擴展能力 這方面更多的取決于應用的老舊程度以及應用是如何設(shè)計的。在許多實例中,較新的應用被創(chuàng)建時使用的是針對于行為與數(shù)據(jù)的API.較老的應用可能根本沒有API.在一些案例中,較老的應用在向云服務遷移時需要花費額外的時間與精力。 當然,總是有辦法與老舊的應用進行溝通的,例如事務接口、直接數(shù)據(jù)訪問,甚至是屏幕抓取。但是這些方法常常存在性能與擴展性問題。是使用這些接口還是對架構(gòu)進行大幅修改應當考慮效率問題。 當你全面了解了應用架構(gòu),你將更加深刻地理解將核心應用服務轉(zhuǎn)變?yōu)樵品⻊盏淖罴逊绞。這包括了解數(shù)據(jù)庫的結(jié)構(gòu)和工作機制、數(shù)據(jù)庫訪問方式、業(yè)務邏輯的使用與執(zhí)行、與用戶接口的整合,以及核心業(yè)務流程的諸多組件等。 首先要將應用分解成功能基元,如數(shù)據(jù)、服務、流程、用戶接口等。一旦你全面了解了這些組件,你就能夠為應用重新創(chuàng)建邏輯架構(gòu),讓其適合云服務要求。其次是將新的邏輯架構(gòu)映射到物理架構(gòu)中,確定創(chuàng)建物理架構(gòu)所需要的工作。 步驟3:為創(chuàng)建云服務選擇最佳的方式 目標系統(tǒng)應當為真正的云計算系統(tǒng)。換句話說,他們應當提供現(xiàn)有應用所沒有的新功能。例如: 機器尋址。無需人參與的訪問、分配和使用云服務、機器至機器的能力 多租戶。能夠同時支持大量外部云服務用戶,確保性能一致,保證租戶不會相互干擾。 基于使用的計費。能夠監(jiān)控授權(quán)用戶的云服務使用情況,根據(jù)使用情況進行計費。 高級安全性。包括能夠管理安全使用方式和基于身份的方式。 為新的或現(xiàn)有的應用創(chuàng)建云服務有三個基本的方法。它們的規(guī)模分為小、中、大。 在小型云服務方案中,我們僅具體化應用的一小部分,通常是那些執(zhí)行如數(shù)據(jù)有效性操作的服務。幾乎只需要創(chuàng)建一個Web服務。這個Web服務有一個被良好定義的接口,以接受云服務客戶的數(shù)據(jù)、應用所連接的數(shù)據(jù)庫中的有效數(shù)據(jù),然后將狀態(tài)反饋給客戶。例如,客戶通過開放的互聯(lián)網(wǎng)使用Web服務確認一個訂單。為了說明問題,我們創(chuàng)建一個Validate_ Order()的服務。該服務會做以下工作: 啟動服務記錄服務 與客戶的使用情況 記錄時間 接受訂單號 確認訂單號 在數(shù)據(jù)庫中查找訂單號 反饋狀態(tài),有效或無效 記錄時間 關(guān)閉服務 當然,你需要保證你能夠通過多用戶/多租戶方法做這個。這意味著你必須為所有的用戶平均分配,保護用戶流程。此外,你還需要利用按使用量收費的計費系統(tǒng)追蹤使用情況,無論你是否對這一服務收費。 在部署這種小型解決方案中你能夠使用不同的技術(shù),包括在獨立處理空間內(nèi)運行的外部程序。這些外部程序不與核心應用掛鉤,可能只需要稍做修改,甚至不需要進行修改;蛟S服務可能與應用結(jié)合緊密,需要對核心程序進行一些修改。它們沒有固定的解決方案或是最佳實踐。你需要根據(jù)具體情況調(diào)整每一個云服務。 一旦你創(chuàng)建了這種服務,你需要與相關(guān)的WSDL相連,以及選擇了一個通信方法,這通常被稱為REST(表述性狀態(tài)轉(zhuǎn)移)?蛻魬斈軌蛲ㄟ^URL訪問服務,因此必須了解如何通過讀取WSDL調(diào)用服務,以及如何使用REST調(diào)用服務。 在中型云服務解決方案中,我們通常會面對許多不同的云服務,它們提供了許多不同類型的功能。你可以認為它們的規(guī)模是小型云服務解決方案的5至10倍。它們擁有更多可被云服務客戶訪問的并行云服務。這意味著你需要應對更多的并行和多租戶問題。 在大型云服務解決方案中,我們通常要應對數(shù)百,甚至是數(shù)千個被具體化和托管的云服務。這類云服務可能每天會被數(shù)千個用戶所使用。這些用戶的訪問方式和目的都不盡相同。我們所面對的挑戰(zhàn)并不是服務的具體化,而是這些云服務的并行管理,讓其長期處于良好的運行狀態(tài)。換句話說,核心目標是擴展性與穩(wěn)定性。 在中型與大型云服務解決方案中,你需要對核心應用進行更多系統(tǒng)性重新設(shè)計,包括修改核心數(shù)據(jù)庫和計算服務(見圖2)。你只能在兩種辦法中選擇一個。 1、附加軟件提供了云能力。實際上,中間件將原生的應用服務轉(zhuǎn)變?yōu)榱嗽品⻊,并通過產(chǎn)品預先設(shè)置的功能管理這些服務。目前市場上已經(jīng)出現(xiàn)了這類產(chǎn)品,它們通常被稱為“云能力軟件”。 2、徹底從頭重新編寫應用。重新編寫的應用將滿足云服務的需要,包括支持多租戶。這實際上是一個重新創(chuàng)建應用的機會,或許可以使用更新的編程語言或數(shù)據(jù)庫技術(shù)。與在老代碼上編寫相比,更新的編程語言或數(shù)據(jù)庫技術(shù)的成本會更低。 圖2 通過專門為這一目標設(shè)計的軟件,你能夠具體化云服務,或是通過重新編寫應用將服務具體化。最佳辦法取決于你的應用。 最后,在考慮應用架構(gòu)、云服務具體化與管理時,你需要考慮使用的標準。這里的大多數(shù)標準都與Web相關(guān),例如WSDL、SOAP、REST等。當然,部分標準是在云計算領(lǐng)域中新出現(xiàn)的,包括安全標準和管理標準。應當在項目開始前就考慮好適合你的云服務的最佳標準與解決方案。 步驟4:評估安全問題 在云計算的執(zhí)行中,安全性排在首位。在設(shè)置云服務的過程中,無論是公有云還是私有云,你都應當考慮安全措施。其中包括創(chuàng)建一個安全模型,選擇適當?shù)陌踩夹g(shù),全面了解存在的風險。 云服務的安全模型通常十分復雜,使用了大量先進的加密技術(shù)與基于身份的安全技術(shù)。 基于身份的安全技術(shù)意味著你可以追蹤人類用戶的身份、機器用戶、數(shù)據(jù)、服務等,讓你能夠細致地管理安全問題,確定誰能夠訪問特定的服務,以及他們能夠通過這些服務做什么。例如,我們知道特定身份的機器能夠調(diào)用服務,因為機器在允許調(diào)用服務之前已經(jīng)經(jīng)過了授權(quán)。身份管理安全軟件系統(tǒng)通常需要一資源庫以追蹤身份,需要能夠?qū)λ械膮⑴c者進行授權(quán)和認證。 加密是另一個標準的云服務安全機制?蛻艉头⻊仗峁┥虘斈軌蛟谛枰臅r候提供加密措施,確保服務提供商與客戶之間的會話是私密的。當加密數(shù)據(jù)從一個系統(tǒng)中傳輸?shù)搅硪粋系統(tǒng)中,我們稱之為動態(tài)加密。 此外,你還需要考慮保護內(nèi)部數(shù)據(jù)。強化的保護措施能夠確保外部伙伴無法接觸到你的核心應用或是訪問數(shù)據(jù)庫。當數(shù)據(jù)存儲在磁盤中時,數(shù)據(jù)被進行加密處理。當這些數(shù)據(jù)根據(jù)需要被提供給應用或云服務時,它們會被解密。 步驟5:確定成本模型和基于使用情況的計費方式 最后一步是找出如何追蹤你的云服務的使用情況,以及如何根據(jù)使用情況進行收費。許多商業(yè)軟件會為你追蹤云服務使用情況。這些商業(yè)套件為外部應用,它們可以與你的核心應用和云服務結(jié)合在一起。其中一部分軟件是常規(guī)的授權(quán)許可軟件,還有一部分是由公有云提供商提供的云服務。選擇哪一種取決于你偏愛的成本模式和云服務特點。由于技術(shù)很容易獲得,因此沒有必要自己創(chuàng)建。 其次是,決定如何對服務進行收費。部分公有云計算服務的收費方式與手機通信公司為手機服務收費相似。部分服務在企業(yè)內(nèi)部中傳輸也會收費。以下是幾種收費模式: 交納一定費用后不限量使用 根據(jù)時間收費 根據(jù)席位收費 根據(jù)流量收費 交納一定費用后不限量使用收費方式也追蹤服務的使用情況,但是客戶可以隨意使用。通常,這適合于你了解服務用戶,以及將提供服務作為一種附加優(yōu)勢。 如果你選擇根據(jù)時間計費,那么基于使用情況的計費系統(tǒng)將匯報使用情況,并為你生成賬單。賬單將根據(jù)預先約定的期間定期自動發(fā)送。 如果你選擇根據(jù)席位收費,那么費用總額為用戶賬號數(shù)量乘以每月使用率,或是測量每名用戶的使用情況,然后分別計費。如果你選擇后者,那么一定要確保套餐能夠滿足你的需求。 如果你選擇根據(jù)流量計費,那么云服務提供商將根據(jù)你傳輸給客戶的數(shù)據(jù)流量收費。通常,流量者是兆字節(jié)級。此外,數(shù)據(jù)使用量將被跟蹤。賬單將會被自動發(fā)送至云服務客戶手中。 現(xiàn)在是什么情況? 具體化應用數(shù)據(jù)和使用公有與私有云計算的速度將加快。實際上,創(chuàng)建云服務將為一些公司帶來新的營利機遇,同時為向公司內(nèi)外推廣企業(yè)應用核心價值提供了一個相對容易的方法。請記住,在開始轉(zhuǎn)向云計算之前應當仔細評估你的應用。一些貌似能夠成功轉(zhuǎn)向云服務的應用可能有時候最終會因為一些潛在的原因而無法轉(zhuǎn)型。另一方面,如果你對你的所有應用了如指掌,那么你會很容易找到一些你以前從未想過要遷移至云服務的應用,而這些應用可能更容易轉(zhuǎn)向云服務。 一切都由你自己做主。它們會為你帶來充足的營利空間,尤其是當你選擇部署一些能夠為公司提供特色功能的服務。 本文出自:億恩科技【1tcdy.com】 |