如今,越來越多的企業(yè)將業(yè)務遷移到云平臺,但并不是簡單地將其新的應用程序,微服務或機器學習模型部署到公共云,并且沒有那么快。
如果詢問那些在IT運營中花費大部分時間管理數據中心的工作人員,就會聽到私有云比公共云具有優(yōu)勢的很多原因,例如可靠性、可擴展性和安全性,并認為他們可以通過控制基礎設施的選擇、部署和管理來達到更高的標準。
如果詢問首席信息官,他們會有其他理由考慮采用私有云和混合多云架構。他們將圍繞公共云成本的可變性、長期支持原有系統(tǒng)的需要,以及數據中心長期合同的現實提供理論依據。與公共云架構相比,許多企業(yè)首席信息官在管理數據中心方面有著更強的實踐,并希望避免陷入公共云供應商鎖定的困境。
大公司在業(yè)務轉型時并不像中小企業(yè)那樣快,首席信息官必須考慮根據業(yè)務影響和實現價值的時間確定優(yōu)先級,以實現應用程序現代化。正如CTO Advisor公司聯合創(chuàng)始人Keith Townsend在推特上所說:“企業(yè)將其所有的Oracle應用程序轉移到Amazon RDS上,還是利用這些人才為不同的業(yè)務計劃創(chuàng)建新的應用程序?現在的問題是,這些都是相同的資源。”
如果詢問軟件開發(fā)人員,就會發(fā)現許多人更喜歡構建部署公共云,并利用無服務器架構的應用程序。他們可以使用持續(xù)集成(CI) /持續(xù)交付(CD)自動化應用程序部署,使用IaC配置基礎設施,并將底層基礎設施支持留給公共云供應商和其他云原生托管服務提供商。
企業(yè)能否可以在單個公共云平臺實現標準化?可能不會。如果采用可能帶來與企業(yè)的標準不同的公共云,并且許多商業(yè)應用程序只在特定的公共云上運行。即使企業(yè)盡力避免這種情況,仍可能是一個采用多云的組織。
在以下的討論中將研究一系列場景,在這些場景中,混合云架構與只采用私有云或多個公共云相比具有一些技術優(yōu)勢。
定義混合多云架構和策略
綜上所述,開發(fā)人員通常傾向于將基礎設施和相關托管服務外包給公共云,而IT運營部門則利用他們的專業(yè)知識和現有的數據中心基礎設施構建私有云。企業(yè)首席信息官必須通過支持混合多云架構和運行實踐來管理實際情況。
簡單地說,多云意味著企業(yè)利用多個云平臺,例如AWS和Azure?;旌隙嘣埔馕吨髽I(yè)混合使用私有云和公共云,并且必須協(xié)調它們之間的連接性和安全性。私有云可以在企業(yè)的數據中心中運行,也可以由服務提供商托管。
但這就帶來了一些問題:在哪里部署新的應用程序,在哪里對傳統(tǒng)應用程序進行現代化改造?;卮疬@些問題需要IT決策者、架構師、開發(fā)人員和工程師之間的協(xié)作來考慮最佳實踐和架構模式。正如云計算顧問Sarbjeet Johal所說的那樣,“混合多云策略的目標是在確保穩(wěn)定性的同時獲得靈活性,或者換句話說,將正確的工作負載定位到正確的位置。”
Sarbjeet的云計算消費理論具有三個原則,盡管有很多例外:
?不要自己構建記錄系統(tǒng)和購買SaaS。
?為參與/差異化系統(tǒng)采購可擴展的SaaS。
?將公共云用于創(chuàng)新系統(tǒng)。
這些準則為企業(yè)何時購買和配置SaaS解決方案以及內部構建應用程序提供了一些背景信息。許多原有系統(tǒng)必須保留在數據中心中,直到有機會和業(yè)務依據對其進行現代化。還有一些情況是,由于成本、合規(guī)性、安全性和其他運營方面的考慮,企業(yè)有時會在私有云中運行應用程序。最后,Sarbjeet建議將公共云用于提供創(chuàng)新的應用程序。開發(fā)人員可以從小型POC和實驗開始,使用云計算服務快速開發(fā)功能,并根據使用量擴展基礎設施。
惠普企業(yè)公司的杰出技術專家Ed Featherston對定義混合云戰(zhàn)略提出了一些敏銳的建議。他說:“一切都是權衡。企業(yè)需要推動可以實現目標的優(yōu)先事項和折衷方案。仍然需要設計和規(guī)劃。如果不考慮這一點,最終會導致實施失敗。”
但是一些開發(fā)者需要更加深入。而這是企業(yè)選擇公共云用于新的應用程序和微服務的原因。那么,在私有云中構建和部署新應用程序或服務的最佳時間是什么?在這些用例中,私有云可提供超出運營考慮范圍的技術和競爭優(yōu)勢。
通過鄰近度逃避數據引力
如果企業(yè)準備部署在TensorFlow上運行的大規(guī)模機器學習模型,則可能會認為最好的選擇是將其部署到公共云。數據科學家可以使用Amazon SageMaker,Azure的Machine Learning和谷歌云的TensorFlow Enterprise進行實驗、開發(fā)、測試和部署生產深度學習模型。這些公共云選項中的其中一個是最優(yōu)的嗎?
如果該模型需要每隔30天針對企業(yè)數據中心中多個數據倉庫和數據湖的數PB數據集進行一次重新訓練,那么會怎么樣?如果將所有這些數據移動到公共云以便機器學習模型可以在那里訓練,是否更高效、更具成本效益?或者,在靠近所有數據所在的私有云中培訓機器學習模型會更好?
如果要基于事件驅動的架構配置控制系統(tǒng)怎么辦?如果是一家大型廣告公司,該公司從數十個SaaS平臺收集行為數據,那么可能會將系統(tǒng)部署到公共云。但是如果是一家制造商,并且事件來自數以千計的物聯網傳感器,并且工廠位于南美洲的偏遠地區(qū),該怎么辦?是否應該在邊緣部署私有云來執(zhí)行此數據處理?
這些示例說明了在考慮公共云部署與私有云部署時的兩個重要概念。第一個是數據引力,這個術語表明大型數據集在其消耗的應用程序和服務上具有引力。將這些應用程序和服務部署到最大的數據集附近,可以使它們運行得更快、更便宜、更可靠。第二個是延遲,這可能是在遠程位置進行操作時的一個因素,并且無法確保高帶寬和可靠的連接性或可能成本昂貴。在這些情況下,企業(yè)在邊緣部署私有云時在性能和成本方面具有優(yōu)勢。
設計需要考慮人身安全的應用程序
由于大多數架構良好的電子商務應用程序都可以在公共云或私有云中可靠地運行,因此決策通常歸結為成本、合規(guī)性和其他運營因素。許多支持業(yè)務工作流、分析、事務和協(xié)作的應用程序也是如此。
但是將人員的安全性作為設計考慮因素,可能會有所不同。醫(yī)院要求醫(yī)療系統(tǒng)必須在本地運行,因為沒有人希望由于公共云中斷而中途停止機器人輔助手術。構建智能建筑和智能城市的建筑師必須考慮在私有云和公共云之間戰(zhàn)略性地分配服務,并且希望在混合模型中部署至關重要的服務。
為數字和物理世界體驗的交集而設計
在接下來的十年里,人們將看到越來越多的應用程序連接物理世界和數字世界。企業(yè)架構師必須考慮為這個交叉點上不斷增加的參數(包括用戶體驗、性能、可靠性、可擴展性和可維護性)而進行優(yōu)化的混合架構。
羅克韋爾自動化公司企業(yè)架構副總裁Todd Mazza分享了他對權衡的看法。他在推特上說:“我們的生產車間中的某些元素在未來五年的時間內可能不會用于混合云或公共云。但是,如果能夠證明能夠以更低的成本更可靠地交付更多產品,我們也許能夠更快地采用混合多云。”
隨著越來越多的企業(yè)開發(fā)大規(guī)模利用物聯網、5G和人工智能的應用程序,風險也在不斷增加。
這意味著,越來越多的應用程序將架構、云計算和基礎設施決策作為重要的設計考慮因素。雖然在公共云上實現概念驗證或輕量級移動應用程序可能是一個簡單的決定,但任務關鍵型、支持生命和數據密集型的應用程序可能需要部署混合多云。