逆水行舟
API在云上扮演著至關(guān)重要的角色,它讓應(yīng)用和服務(wù)可以互相通信。但是當(dāng)混合使用多個云供應(yīng)商時,API的管理非常復(fù)雜。
云應(yīng)用的開發(fā)幾乎總是依賴一系列來自頂級供應(yīng)商的服務(wù),比如Amazon Weh Services、MicrosoftAzure和GoogleCloud Platform。要想高效地訪問并且部署這些云服務(wù),企業(yè)必須使用供應(yīng)商提供的應(yīng)用程序編程接口。
但是隨著企業(yè)引入混合云與多種云的戰(zhàn)略,管理以及集成這些應(yīng)用程序接口(API),由于供應(yīng)商不同,API區(qū)別很大,所以面臨著極大的挑戰(zhàn)。
一、多云API管理系統(tǒng)的挑戰(zhàn)
所有API都不是一樣的,它們包括子程序、協(xié)議和工具的任意組合。
如果某個企業(yè)想要創(chuàng)建在多種云平臺上都能工作的應(yīng)用的話,挑戰(zhàn)就會出現(xiàn),因為供應(yīng)商提供了不同的計算以及存儲實例、網(wǎng)絡(luò)服務(wù)和監(jiān)控工具。這意味著使用這些互不兼容的服務(wù)方案時,在云供應(yīng)商之間遷移一些工作負(fù)載甚至是不可能實現(xiàn)的。即使服務(wù)是類似的,用戶使用某個供應(yīng)商的API調(diào)用服務(wù)的方式和操作和其他的供應(yīng)商可能大相徑庭。
在向多云轉(zhuǎn)移時,管理員必須意識到供應(yīng)商API間的不同之處。在不同的云供應(yīng)商之間完成相同的任務(wù)所使用的API調(diào)用可能會多幾次或者少幾次。
不同供應(yīng)商之間還存在著性能差異,比如延遲以及對給定時間內(nèi)的API調(diào)用次數(shù)的限制。同一時間點,每個供應(yīng)商底層的軟件棧,以及軟件優(yōu)化的方式,也會影響到API的性能和可用性。這會讓應(yīng)用的設(shè)計更為復(fù)雜。
另外,供應(yīng)商通常使用不同的API安全和授權(quán)技術(shù),以及不同的API錯誤消息。當(dāng)云供應(yīng)商增加服務(wù)以及更新API時情況會更加糟糕。
因為將單個API集成到企業(yè)應(yīng)用所存在的這些挑戰(zhàn),所以多云供應(yīng)商的使用,以及創(chuàng)建支持該模型的API管理系統(tǒng),將令I(lǐng)T人員望而生畏。
二、多云API管理系統(tǒng)的服務(wù)代理
解決多種云兼容性難題的一種方式是API抽象,在應(yīng)用和API訪問的多云服務(wù)之間插入另一層。該層向企業(yè)應(yīng)用展現(xiàn)單一的、統(tǒng)一的API,使用單點登錄交付統(tǒng)一的命令集,比如提供創(chuàng)建和管理計算以及存儲實例的任務(wù)。這個抽象層隨后將這些命令翻譯成每種特定云供應(yīng)商的API調(diào)用。
這樣抽象的API已經(jīng)開始出現(xiàn)在多云管理市場里。比如,云管理供應(yīng)商RightScale提供統(tǒng)一的API,可以管理大范圍的公有和私有云服務(wù),包括Amazon Weh Services (AWS)、Microsoft Azure、CGoogleCloud Platform、Rackspace、IBM SoftLayer、ApacheCloudStack、OpenStack和VMware vSphere。這樣的通用API讓用戶可以創(chuàng)建m跨云供應(yīng)商的一致的服務(wù)配置,同時提供覆蓋所有支持的云平臺的統(tǒng)一的監(jiān)控,費用評估以及報告。
三、API管理軟件的優(yōu)勢
然而,使用云服務(wù)代理或者API管理系統(tǒng)的問題是,添加另一層SaaS平臺所帶來的復(fù)雜度,以及對于業(yè)務(wù)而言會有額外的開銷。用戶也認(rèn)為任意供應(yīng)商服務(wù)的變更都會快速并且可靠地反映到代理的工具上。比如,如果AWS計費變更了,或者Azure添加了一種服務(wù),代理就必須更新自己的平臺。用戶還必須適應(yīng)代理的可用性和可靠性。如果服務(wù)不可用,就會影響到所有的云供應(yīng)商服務(wù)的使用,直到代理恢復(fù)訪問為止。
四、向標(biāo)準(zhǔn)API進(jìn)軍
理想狀態(tài)下,云供應(yīng)商應(yīng)該使用通用的API作為標(biāo)準(zhǔn),來輔助多云上的應(yīng)用和資源管理。雖然這聽上去是個很完美的目標(biāo),供應(yīng)商在這方面卻反應(yīng)很慢,不愿意放棄對客戶的鎖定。但是,通用云管理APIL的利益和關(guān)注仍然會隨著服務(wù)利潤的增長而增長。
一個新興的例子是,由Open Gred Forum的一個T作組領(lǐng)導(dǎo)的Open Cloud Computing Interface(開放云計算接口,OCCI)。OCCI構(gòu)建了_一個前端和服務(wù)供應(yīng)商的管理系統(tǒng)交互。它最初是想遠(yuǎn)程管理基礎(chǔ)架構(gòu)即服務(wù)供應(yīng)商,開發(fā)j出通用的工具,可以使用一個API去部署,擴展以及監(jiān)控服務(wù)。OCCI至今已經(jīng)發(fā)展為可擴展的API,還可以服務(wù)“平臺即服務(wù)”以及“軟件即服務(wù)( SaaS)”的供應(yīng)商。如今,OCCI已經(jīng)實現(xiàn)了大量云堆棧,包括OpenStack、OpenNebula、CloudStack、theCompatihleOne云代理以及其他一系列工具,比如Eucalyptus。endprint