多云應(yīng)用程序:這四個“謠言”千萬別信!
建立多云應(yīng)用程序是一種優(yōu)化性能、增強彈性和降低風險的好策略。然而,盡管日益重要,但在多云技術(shù)和策略方面依然存在著很多“謠言”。這種認知上的缺口可能導(dǎo)致工程團隊在準備邁出下一步時感到困惑。本文我們將揭穿關(guān)于構(gòu)建多云應(yīng)用程序的四個常見“謠言”,揭示多云架構(gòu)的現(xiàn)實方式和能帶給我們的好處。
延伸閱讀,點擊鏈接了解 Akamai cloud-computing
謠言1:多云只是為了實現(xiàn)冗余
多云架構(gòu)不僅能提供冗余性,還提供了靈活性和更優(yōu)化的性能。雖然冗余無疑是多云的一個關(guān)鍵方向(可以將工作負載分布在多個云中,以實現(xiàn)更高的可用性和災(zāi)難恢復(fù)),但這并不非采用多云架構(gòu)的唯一原因。多云使企業(yè)能利用不同云提供商的優(yōu)勢,優(yōu)化性能、成本和合規(guī)性。通過在多個云中戰(zhàn)略性地分發(fā)工作負載,企業(yè)可以實現(xiàn)更大的靈活性、可擴展性和地理覆蓋。
舉個例子。假設(shè)有一家全球化的電商公司,為了展示產(chǎn)品和給客戶提供無縫購物體驗,他們嚴重依賴高質(zhì)量的圖片。這家公司(假設(shè)就叫VivaShop吧)擁有從服裝和配飾到電子產(chǎn)品和家居用品的龐大產(chǎn)品類目。為了優(yōu)化性能和可擴展性,VivaShop使用了Akamai的邊緣計算服務(wù),同時還使用了其他超大規(guī)模公有云服務(wù)商的服務(wù)來進行類似圖片處理這樣的計算密集型任務(wù)。為了戰(zhàn)略性地充分利用多云解決方案,VivaShop采取了如下的方法:
VivaShop使用了Akamai的EdgeWorkers,這是一個邊緣計算平臺,可供開發(fā)人員在Akamai內(nèi)容交付網(wǎng)絡(luò)(CDN)的邊緣運行輕量級JavaScript代碼。通過在全球各地的Akamai邊緣位置部署EdgeWorkers,VivaShop可將計算資源更靠近最終用戶,從而減少延遲并提高性能。VivaShop利用EdgeWorkers動態(tài)調(diào)整和優(yōu)化圖片。當用戶從VivaShop的網(wǎng)站或移動應(yīng)用程序請求圖片時,EdgeWorkers會在邊緣攔截請求,從源服務(wù)器檢索原始圖片,并根據(jù)用戶設(shè)備和網(wǎng)絡(luò)條件對圖片進行優(yōu)化,如調(diào)整大小、壓縮和格式轉(zhuǎn)換。通過將圖片處理任務(wù)分載到Akamai的邊緣服務(wù)器,VivaShop顯著減輕了源服務(wù)器的負載,并加快了內(nèi)容交付給最終用戶的速度。這樣,不僅通過快速交付優(yōu)化后的圖片改善了用戶體驗,還降低了帶寬成本和服務(wù)器負載,從而節(jié)約了成本并提高了可擴展性。
對于高級圖像處理和分析這樣的計算密集型任務(wù),VivaShop則采用了其他超大規(guī)模公有云平臺的計算能力和可擴展性。這些平臺提供了專門設(shè)計用于圖像識別、物體檢測和內(nèi)容分析等任務(wù)的服務(wù)和工具。當VivaShop需要執(zhí)行復(fù)雜的圖像處理任務(wù),例如識別產(chǎn)品屬性、檢測圖像中的物體或基于視覺數(shù)據(jù)生成產(chǎn)品推薦時,它可以利用這些服務(wù),從而高效處理大量圖像,從視覺數(shù)據(jù)中提取有價值的見解,并為客戶提供個性化的體驗。借助這些超大規(guī)模公有云平臺的彈性擴展能力,VivaShop可以在銷售高峰期處理圖像處理需求的激增,而無需擔心基礎(chǔ)設(shè)施的規(guī)劃和管理。
通過戰(zhàn)略性地利用Akamai進行邊緣計算,并借助其他超大規(guī)模公有云平臺進行像圖像處理這樣的計算密集型任務(wù),VivaShop實現(xiàn)了最佳的雙贏:性能、可擴展性和成本效率均顯著提高。Akamai的EdgeWorkers讓計算資源更靠近最終用戶,優(yōu)化內(nèi)容交付并減少延遲,而其他大規(guī)模公有云平臺則提供了復(fù)雜圖像處理任務(wù)所需的計算能力和可擴展性。兩個平臺的聯(lián)合使用,讓VivaShop能夠為全球客戶群提供無縫和個性化的購物體驗。
謠言2:多云會導(dǎo)致復(fù)雜性激增
雖然管理多個云環(huán)境可能會帶來一些挑戰(zhàn),但現(xiàn)代工具和最佳實踐可以幫助我們緩解復(fù)雜性。類似Kubernetes和Jenkins這樣的開源技術(shù)有助于降低復(fù)雜性。Kubernetes提供了統(tǒng)一的編排層,使企業(yè)能在不同云環(huán)境中無縫管理工作負載。Jenkins這樣的開源CI/CD自動化工具則簡化了部署和運維流程,降低了與多云架構(gòu)相關(guān)的開銷。
舉個例子。假設(shè)有一家名為CloudNova的公司,這是一家迅速增長的軟件即服務(wù)(SaaS)提供商,提供了一系列基于云的應(yīng)用程序。為了有效管理不斷擴張的基礎(chǔ)架構(gòu)并降低復(fù)雜性,CloudNova利用Kubernetes進行容器編排,利用Jenkins進行CI/CD自動化。
CloudNova采用Kubernetes作為容器編排平臺,無縫管理和擴展自己的容器化工作負載。在Kubernetes的幫助下,CloudNova可以將基于微服務(wù)的應(yīng)用程序部署為Docker容器,從而保障在開發(fā)、測試和生產(chǎn)環(huán)境中的一致性和可移植性。Kubernetes將底層基礎(chǔ)架構(gòu)復(fù)雜性進行了抽象,使開發(fā)者能夠?qū)W⒂趹?yīng)用程序邏輯而非基礎(chǔ)架構(gòu)管理。CloudNova還利用Kubernetes的功能(如服務(wù)發(fā)現(xiàn)、負載均衡、自動擴展和自愈)保障應(yīng)用程序的高可用性和可靠性。Kubernetes采用了聲明式的配置管理方法,從而簡化了部署工作流程,并實現(xiàn)了快速迭代和實驗。
為了簡化開發(fā)和部署流程,CloudNova還使用了Jenkins。在多云環(huán)境中使用Jenkins進行CI/CD自動化帶來了幾個好處。首先,最重要的是,Jenkins具有高度可定制能力,并支持各種插件,因此可以適應(yīng)不同云環(huán)境和工具。在多云設(shè)置中,我們可能會對每個云提供商產(chǎn)生不同的要求或偏好,Jenkins可以相應(yīng)地進行配置。Jenkins可與各種云平臺、版本控制系統(tǒng)(如Git)以及多云環(huán)境中常用的其他工具實現(xiàn)集成。這種集成簡化了CI/CD流程,并允許在不同服務(wù)和平臺之間進行平滑的交互。
在多云應(yīng)用程序中使用Jenkins的另一個好處是,多云應(yīng)用程序通常需要借助可擴展性來處理不同云提供商之間的各種工作負載和流量。Jenkins可以進行水平擴展以適應(yīng)增加的需求,確保即使在動態(tài)多云環(huán)境中也能進行高效的CI/CD流程。Jenkins還提供了對CI/CD流水線的詳細洞察,包括構(gòu)建狀態(tài)、測試結(jié)果和部署進度。在多云設(shè)置中,資源分布在不同平臺,這種可見性至關(guān)重要,團隊能夠借此更有效地監(jiān)視和管理整個流程。在Jenkins的幫助下,我們可以在多個云環(huán)境中定義一致的CI/CD工作流程,確保開發(fā)、測試和部署過程始終保持標準化(無論底層基礎(chǔ)架構(gòu)到底是什么)。這種一致性提高了協(xié)作效率,減少了不同云提供商之間的差異或出現(xiàn)兼容問題的概率。
通過將Kubernetes用于容器編排并將Jenkins用于CI/CD自動化,CloudNova簡化了運營流程,減少了手動工作量,并提高了可觀察性和可擴展性。Kubernetes抽象了管理容器化工作負載的復(fù)雜性,而Jenkins實現(xiàn)了跨多個云環(huán)境的一致CI/CD工作流程。
謠言3:多云更昂貴
多云策略可以通過工作負載優(yōu)化來節(jié)約成本。例如,流媒體平臺可以利用Akamai Cloud Computing搭建自己的網(wǎng)絡(luò),并借助其他超大規(guī)模公有云平臺的AI和機器學習服務(wù)運行內(nèi)容推薦算法,從而優(yōu)化成本并改善用戶體驗。
大型流媒體平臺保障高可用性、低延遲和可靠內(nèi)容傳輸?shù)囊环N方式是利用Akamai Cloud Computing的強大網(wǎng)絡(luò)基礎(chǔ)設(shè)施。Akamai的全球數(shù)據(jù)中心網(wǎng)絡(luò)使流媒體平臺能夠在全球各大戰(zhàn)略位置部署邊緣服務(wù)器,縮短用戶與內(nèi)容傳輸點之間的距離。Akamai Cloud Computing的高級網(wǎng)絡(luò)功能(如負載均衡、內(nèi)容緩存和DDoS防護)進一步增強了整個架構(gòu)的可靠性和安全性。流媒體平臺還可以利用Akamai經(jīng)濟實惠的定價模型和可預(yù)測的計費結(jié)構(gòu)來優(yōu)化網(wǎng)絡(luò)成本,同時確保一致的性能和正常運行時間。流媒體平臺還可以獲得透明的定價和按需付費模式,并根據(jù)實際使用情況和需求模式動態(tài)擴展網(wǎng)絡(luò)基礎(chǔ)設(shè)施,避免過度配置和不必要的費用。
在此基礎(chǔ)上,流媒體平臺可以利用超大規(guī)模公有云平臺的AI和機器學習服務(wù)運行推薦算法,為每個用戶提供相關(guān)和個性化的選項。借助這些AI和機器學習服務(wù),流媒體平臺只需要為模型訓練和推理期間消耗的資源支付費用,從而優(yōu)化成本,且免除了維護本地硬件或基礎(chǔ)設(shè)施的開銷。
通過戰(zhàn)略性將Akamai Cloud Computing的網(wǎng)絡(luò)技術(shù)和超大規(guī)模公有云平臺的AI與機器學習服務(wù)相結(jié)合,流媒體平臺可以同時實現(xiàn)成本優(yōu)化和改善用戶體驗。借助Akamai Cloud Computing可靠且經(jīng)濟高效的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,以及超大規(guī)模公有云平臺強大的AI與機器學習能力,即可向全球觀眾提供高品質(zhì)娛樂體驗和個性化內(nèi)容推薦,而無需花費大量資金。
謠言4:多云環(huán)境的安全問題更難搞
不得不承認,為一個云平臺中的部署實施安全措施就已經(jīng)足夠困難了,現(xiàn)在又要保護另一個云平臺中的部署?我們該如何增強安全防御,確保威脅不會進入我們的應(yīng)用程序?答案很簡單:我們可以使用一個單一的控制平臺來添加所需的安全保護措施,從而實現(xiàn)對安全事件的全面觀察。這種一致安全策略的零信任模型將有助于確保多云應(yīng)用程序的安全性。
在多云環(huán)境中有效管理安全性的一種方式是使用一致的策略。這些安全策略可以通過Akamai的全球邊緣平臺來實施。Akamai邊緣服務(wù)器分布在全球各地,開發(fā)者能夠借此將安全控制部署到更接近最終用戶(以及不良行為者和威脅)的位置。
多云應(yīng)用程序的另一個安全關(guān)注點是為工作負載實現(xiàn)高可用性。Akamai能夠保護多云應(yīng)用程序防范激增的需求和定向攻擊可能產(chǎn)生的影響。此外,通過隱藏源云基礎(chǔ)設(shè)施來實施安全措施,還能防止對源資源進行直接訪問。
Akamai還提供了統(tǒng)一的管理平臺和自動化工具,圍繞所有工作負載的安全事件、合規(guī)狀態(tài)和策略執(zhí)行,為開發(fā)者提供細粒度的可見性。這種集中化的方法簡化了安全管理和合規(guī)審核,并實現(xiàn)了一致的安全執(zhí)行,可降低多云環(huán)境中的運營開銷和復(fù)雜性。用戶無需為每個云平臺管理不同的安全解決方案(防火墻、DDoS防護),畢竟它們都有不同的工作方式并需要不同的配置設(shè)置。用戶只需要通過一個位置就能獲得所需的全部安全保護。
從全球邊緣安全到可擴展性,再到集中可見性,Akamai的安全解決方案提供了有效保護多云架構(gòu)至關(guān)重要的綜合能力。通過將Akamai納入多云策略,企業(yè)可以加強安全防御、降低風險,并確保多云應(yīng)用程序的彈性和合規(guī)性。
上圖展示了Akamai安全機制在多云環(huán)境中的工作方式。底部是云服務(wù)提供商及其各種組件,此外還有一個數(shù)據(jù)中心。在這種混合云模型中,每個組件都由自己的服務(wù)組成,并且都需要安全保護。但我們并不需要為每個組件添加安全措施,我們可以使用一個統(tǒng)一的邊緣安全層。
這是一種集中管理的、云中立的解決方案,可以輕松管理多云應(yīng)用程序的安全性。安全策略則可通過廣泛的DevSecOps解決方案輕松管理,例如基礎(chǔ)設(shè)施即代碼工具和SDK。
總結(jié)
構(gòu)建多云應(yīng)用程序的道路無疑充滿了挑戰(zhàn),但回報也是巨大的。多云架構(gòu)賦予了企業(yè)利用多個云平臺最佳功能的能力,從而可以更好地優(yōu)化性能、成本和合規(guī)性。通過在不同云之間戰(zhàn)略性地分配工作負載,并利用Kubernetes和Jenkins等開源技術(shù),企業(yè)可以簡化運營,并實現(xiàn)新的可觀察性和可擴展性水平。
此外,擁抱多云策略不僅僅是為了效率最大化,還可以加強安全性和彈性。將Akamai解決方案集成到多云方法即可增加額外的保護層,確保應(yīng)用程序保持健壯、合規(guī),面對不斷演變的威脅獲得始終如一的防護。
如您所在的企業(yè)也在考慮采購云服務(wù)或進行云遷移,
點擊鏈接了解Akamai Linode的解決方案