當使用多個云供應商時,應用程序集成成本會飛速增長。為了防止成本支出失控,應仔細規劃應用程序部署和工作流程。
最終,大多數企業會在多個云供應商之間交流他們的云服務合同。正因為如此,很多人都會為在多云模式中所付出的應用程序集成成本而咂舌不已。
在多云環境中,集成問題總是更為復雜的。雖然用戶可以采取一些步驟來控制成本,但還有一點也是很重要的,一些應用程序根本就不適合在多云環境中使用。
了解多云中的應用程序集成成本
云中的一個應用程序就是一種矩陣,它是通過工作流程來連接不同的組件。應用程序的某些部分可能繼續駐留在公司自己的數據中心內部,而其他部分則駐留在云中。如果一家企業使用了多個云供應商,那么這個應用程序就可以托管在幾個不同的云平臺上。
多個云的部署與集成是一個三步驟的程序。首先,使用策略以確定適合托管應用程序組件的最佳位置。然后,將應用程序組件部署到所選的云中(可以是私有云或多個公有云之一)。最后,提供必要的IP地址信息以便將新的托管位置綁定到應用程序工作流程中。
因為每一家公有云服務管理IP尋址的方式都略有不同,所以通常需要為目標云平臺定制部署步驟。這意味著那是很容易犯錯的,而從錯誤中恢復過來的成本也是非常高昂的。在某些情況下,每增加一家云供應商就會將部署與重新部署的成本提高50%以上。
這還不是最糟糕的。大多數多云配置都是通過VPN與企業用戶相連的。如果應用程序工作流程涉及不同的云供應商,它們就會通過企業VPN運行,從而增加了網絡負載和成本。此外,由于大多數云供應商都是根據用戶與云之間的流量來計費的,所以每一次出現跨云邊界的流量,都會有相應費用產生。未經周密規劃的多云部署由于頻繁在不同云平臺之間發生工作流量,其成本支出要超出正常支出的一倍以上。
最大限度減少多云環境中的應用集成成本
最大限度減少多云集成成本的最簡單方法就是不要在多個公有云之間部署應用程序的不同組件。但是,如果考慮用戶地理位置差異或者如果主要供應商遭受中斷事件,那還是必須采用上述方式部署應用程序組件。在這些情況下,務必周密規劃應用程序工作流與關系以減少跨云邊界的流量。
如果有兩個分別最適合在Azure平臺和亞馬遜網絡服務(AWS)平臺上運行的應用程序,那么可在相應平臺上運行應用程序,并將它們連接到最終用戶和數據中心。這種方式可消除跨云平臺數據傳輸的必要性,從而避免增加流量成本。
一些用戶出于地理位置方面的考慮而采用多個云供應商,例如需要在某個合適位置托管應用程序。在這種情況下,可將應用程序的每一個多云實例視為一個單獨的應用程序,將每個實例連接至企業的VPN——但是絕對不要進行跨云邊界的工作交互。這意味著這些應用程序的拓撲結構就像是一個星型配置,其中心事企業的數據中心,而各個端點不同的多云前端程序。所有的工作流程都遵循只跨越一個云供應商邊界的原則,這種拓撲結構的成本將與使用單個云供應商的服務相當。
該配置為希望通過多個云供應商實現彈性和可擴展性的用戶提出了一個要求:除非用戶的云供應商不會根據跨云邊界的流量收費,否則不要將應用程序的單個組件在不同云平臺之間遷移,而應遷移整個應用程序以避免流量多次重復計費。
部署與重新部署的效率也是控制多云應用程序集成成本的關鍵所在。云部署工作復雜且易出錯,而多云部署(尤其是確保用戶不會違反流量策略)則更為復雜。不要在缺乏開發運營工具的情況下進行多云應用程序集成以實現流程自動化。
當用戶在云部署中增加多個供應商時,也就自然地增加了任何應用程序拓撲結構的財務影響復雜性。如果沒有明顯的利好來抵消這種復雜性帶來的負面影響,多云可能并不是一個合適的選項。如果一定要采用多云供應商,那么請務必周密規劃部署以確保能夠切實實現這些利好。