云原生集成開(kāi)發(fā)環(huán)境——TitanIDE
通過(guò)網(wǎng)頁(yè)在任何地方更安全、更高效地編碼2022-07-04
642
在這個(gè)時(shí)代,世界比以往任何時(shí)候都更加依賴(lài)全球聯(lián)通,了解應(yīng)用的數(shù)據(jù)流量如何在不同節(jié)點(diǎn)之間流動(dòng)或在不同位置之間路由,以及如何設(shè)計(jì)一個(gè)具有彈性、高性能和合規(guī)性的網(wǎng)絡(luò)變得越來(lái)越重要。
在構(gòu)建網(wǎng)絡(luò)以實(shí)現(xiàn)快速、安全和有彈性的應(yīng)用程序交付(例如,用于跨國(guó)電子商務(wù)網(wǎng)站或流媒體服務(wù))時(shí),最重要的一點(diǎn)是:為了簡(jiǎn)單將所有基礎(chǔ)設(shè)施放在一個(gè)IDC,還是建立一個(gè)跨地域的分布式網(wǎng)絡(luò)?
為什么要構(gòu)建異地分布式網(wǎng)絡(luò)?
異地分布式網(wǎng)絡(luò)提供了多樣化的基礎(chǔ)設(shè)施和對(duì)地理流量路由的精細(xì)控制。借助可供使用的多個(gè)網(wǎng)絡(luò)位置,企業(yè)可以在一個(gè)IDC位置出現(xiàn)故障時(shí)依然保持業(yè)務(wù)在線穩(wěn)定運(yùn)營(yíng),并優(yōu)先將流量路由到最合適的位置。
這可以為用戶和企業(yè)業(yè)務(wù)帶來(lái)各種好處。
1. 在發(fā)生災(zāi)難時(shí)將交通路由到其他位置
災(zāi)難難免會(huì)發(fā)生,無(wú)論我們準(zhǔn)備得如何充分都無(wú)法百分百避免。某些特定位置的災(zāi)難可能導(dǎo)致整個(gè)數(shù)據(jù)中心出現(xiàn)故障:例如,區(qū)域性電源故障、洪水或電纜損壞等。在其他情況下, 一個(gè)位置的服務(wù)器可能會(huì)承受沉重的持續(xù)負(fù)載 ,導(dǎo)致性能下降,這可能導(dǎo)致網(wǎng)站出現(xiàn) 503 錯(cuò)誤,因?yàn)榉?wù)器無(wú)法處理新請(qǐng)求。我們偶爾會(huì)看到 AWS 等公共云提供商出現(xiàn)區(qū)域性中斷。
在這些情況下, 異地分布式網(wǎng)絡(luò)提供了彈性應(yīng)用基礎(chǔ)設(shè)施和業(yè)務(wù)連續(xù)性。當(dāng)運(yùn)行狀況檢查發(fā)現(xiàn)局部性能問(wèn)題或連接故障時(shí),路由規(guī)則可以將流量引導(dǎo)到其他位置運(yùn)行狀況良好的服務(wù)器上。
2. 將流量路由到最近的服務(wù)器來(lái)降低延遲
延遲 (或數(shù)據(jù)往返所用的時(shí)間)與客戶端與其連接的服務(wù)器之間的物理距離密切相關(guān)—— 距離越大,延遲越大。
那些玩過(guò)在線競(jìng)技游戲的人應(yīng)該最了解延遲的影響。如果托管游戲的中央服務(wù)器在您輸入后幾百毫秒后才做出反應(yīng),那么它很可能會(huì)錯(cuò)過(guò)您的預(yù)期操作,您可能會(huì)輸?shù)粲螒颉?
同樣,如果服務(wù)器距離客戶端很遠(yuǎn),瀏覽電子商務(wù)網(wǎng)站(及其所有數(shù)據(jù)庫(kù)請(qǐng)求)會(huì)感覺(jué)特別遲鈍,而與距離相關(guān)的延遲將影響每個(gè)頁(yè)面加載,甚至最終將購(gòu)物者拒之門(mén)外。
將客戶端連接到距離其位置最近的服務(wù)器可減少延遲的整體影響,并確保及時(shí)響應(yīng)式地體驗(yàn)。
3. 將流量路由到區(qū)域內(nèi)服務(wù)器以提供特定位置的內(nèi)容
我們生活在一個(gè)語(yǔ)言、文化、價(jià)格和偏好存在巨大差異的全球化世界中??紤]到這些差異,企業(yè)可能希望或需要向特定地理受眾提供特定位置的內(nèi)容。
流媒體服務(wù)可能在不同的地理市場(chǎng)提供不同的內(nèi)容;電子商務(wù)商店可能銷(xiāo)售不同的品牌或者不同的價(jià)格;美國(guó)的新聞網(wǎng)站可能會(huì)將報(bào)道翻譯成西班牙語(yǔ)以供南美市場(chǎng)使用,而將報(bào)道翻譯成加拿大語(yǔ)以供加拿大市場(chǎng)使用。
向本地地理受眾提供特定于位置的內(nèi)容的一種簡(jiǎn)單方法是:在每個(gè)區(qū)域的服務(wù)器上托管獨(dú)特的內(nèi)容。例如,主機(jī)可能將英國(guó)內(nèi)容存儲(chǔ)在英國(guó)的服務(wù)器上,將德國(guó)內(nèi)容存儲(chǔ)在德國(guó)的服務(wù)器上,將挪威內(nèi)容存儲(chǔ)在挪威的服務(wù)器上。然后,主機(jī)可以使用路由規(guī)則來(lái)確保每個(gè)國(guó)家/地區(qū)的客戶端連接到區(qū)域內(nèi)的服務(wù)器以獲取相關(guān)內(nèi)容。
4. 將流量路由到區(qū)域內(nèi)服務(wù)器以遵守?cái)?shù)據(jù)保護(hù)法規(guī)
將客戶端連接到地理上的本地服務(wù)器不僅與價(jià)格和偏好有關(guān)。還有許多法律規(guī)范進(jìn)出不同國(guó)家的數(shù)據(jù)和信息流。例如,歐盟的 GDPR 規(guī)則和對(duì) “數(shù)字主權(quán)”的承諾 制定了關(guān)于從歐盟內(nèi)部向第三國(guó)存儲(chǔ)和傳輸個(gè)人數(shù)據(jù)的規(guī)定。某些國(guó)家/地區(qū)(例如德國(guó))要求將某些個(gè)人和財(cái)務(wù)信息存儲(chǔ)在區(qū)域內(nèi)。
為了遵守這些規(guī)定,企業(yè)可以使用本地服務(wù)器和地理路由來(lái)確保在區(qū)域內(nèi)收集、路由和存儲(chǔ)數(shù)據(jù)。這樣,即使兩點(diǎn)之間的最快路線是通過(guò)第三國(guó)的某個(gè)位置,該路線也會(huì)避開(kāi)第三國(guó)并確保數(shù)據(jù)保持在區(qū)域內(nèi)。
異地分布式網(wǎng)絡(luò)的挑戰(zhàn)
在多個(gè)位置構(gòu)建具有服務(wù)器和其他基礎(chǔ)設(shè)施的網(wǎng)絡(luò)比在一個(gè)位置構(gòu)建網(wǎng)絡(luò)要復(fù)雜得多。
如果企業(yè)依賴(lài)私有管理的本地基礎(chǔ)架構(gòu),則需要維護(hù)自己的多站點(diǎn)數(shù)據(jù)中心。這意味著采購(gòu)和維護(hù)服務(wù)器硬件;數(shù)據(jù)中心電源、連接性和 HVAC;和當(dāng)?shù)氐?IT 人員。
如果您使用公有云來(lái)交付應(yīng)用程序,這意味著要么配置您的云帳戶以在特定位置部署應(yīng)用程序(例如,使用 AWS 區(qū)域和區(qū)域),要么運(yùn)行多云部署以確保您需要的地理存在。
最重要的是,您需要管理流量路由 ,以便將您的網(wǎng)站或應(yīng)用程序的流量路由到您設(shè)置的最合適的地理位置。
然后是在部署中保持安全性、合規(guī)性和可觀察性的挑戰(zhàn) ,您不一定要走進(jìn)單個(gè)數(shù)據(jù)中心或登錄單個(gè)儀表板來(lái)一次查看所有內(nèi)容。
相比之下,管理一個(gè)位置很簡(jiǎn)單。一個(gè)物理站點(diǎn)或一個(gè)云,一組路由和負(fù)載平衡規(guī)則,一個(gè)管理您的安全的地方等。
如何在異地分布式網(wǎng)絡(luò)中分配流量
在異地分布式網(wǎng)絡(luò)中配置路由規(guī)則的最常見(jiàn)方法是使用全局服務(wù)器負(fù)載平衡器 (GSLB),以利用彈性、延遲和本地化的優(yōu)勢(shì) 。負(fù)載均衡器在網(wǎng)絡(luò)中的 多個(gè)服務(wù)器或節(jié)點(diǎn)之間分配流量;GSLB 在地理或多位置級(jí)別上執(zhí)行此操作。
當(dāng)客戶端嘗試連接到使用 GSLB 進(jìn)行多位置路由的域時(shí),GSLB 通常會(huì):
大型公共云和 CDN 通常提供某種級(jí)別的內(nèi)置 GSLB。 還提供Snapt Aria 等專(zhuān)用 GSLB ,它們提供更多功能和靈活性,例如在任何環(huán)境(本地和云、VM 和容器)中部署的能力、更多路由選項(xiàng)以及高級(jí)健康檢查和報(bào)告。
運(yùn)行異地分布式網(wǎng)絡(luò)的復(fù)雜性如何?
部署異地分布式網(wǎng)絡(luò)的好處是顯著的,對(duì)于跨國(guó)企業(yè)來(lái)說(shuō),成本和復(fù)雜性可能是值得的。但他們能減輕這些不利因素嗎?
多位置策略通常會(huì)引入很多復(fù)雜性,因?yàn)橛兄诖_保安全性、合規(guī)性和可觀察性的應(yīng)用程序基礎(chǔ)架構(gòu)也是本地化的。負(fù)載均衡器、Web 應(yīng)用程序防火墻 (WAF) 以及 Web 應(yīng)用程序和 API 保護(hù) (WAAP) 通常部署在每個(gè)位置并單獨(dú)管理。這會(huì)帶來(lái)配置不一致、策略過(guò)時(shí)以及碎片化網(wǎng)絡(luò)缺乏可見(jiàn)性的風(fēng)險(xiǎn)。
克服這個(gè)問(wèn)題的最佳方法是使用集中式應(yīng)用程序基礎(chǔ)架構(gòu),其中部署、配置、監(jiān)控和智能都在中央控制平面中進(jìn)行管理,本地化的負(fù)載均衡器、WAF 和 WAAP 實(shí)例是輕量級(jí)的“工人”。數(shù)據(jù)平面。
這種方法提供了一個(gè) “單一管理平臺(tái)” ,可以在其中查看和控制跨多個(gè)云和多個(gè)位置部署的整個(gè)負(fù)載均衡器網(wǎng)絡(luò)等。無(wú)需確保一致的配置或擔(dān)心過(guò)時(shí)的策略,因?yàn)椴僮鲉T可以集中執(zhí)行更改并立即將其提交到每個(gè)節(jié)點(diǎn)。沒(méi)有數(shù)據(jù)和可見(jiàn)性的碎片化,因?yàn)樗羌械?、聚合的,并在一組報(bào)告和警報(bào)中呈現(xiàn)。
因此,運(yùn)營(yíng)異地分布式網(wǎng)絡(luò),多云管理和治理非常重要。
位置很重要
盡管單一位置部署固有的簡(jiǎn)單性,但將所有雞蛋放在一個(gè)籃子中是存在風(fēng)險(xiǎn)的。異地分布式網(wǎng)絡(luò)雖然更復(fù)雜,但提供了更大的彈性、更低的延遲和更多的本地化選項(xiàng),這對(duì)跨國(guó)企業(yè)來(lái)說(shuō)越來(lái)越重要。
企業(yè)可以使用全局服務(wù)器負(fù)載平衡器在分布式網(wǎng)絡(luò)中啟用簡(jiǎn)單的地理路由。您還可以通過(guò)選擇集中管理的智能應(yīng)用基礎(chǔ)架構(gòu)來(lái)應(yīng)對(duì)復(fù)雜性挑戰(zhàn)。
微服務(wù)架構(gòu)時(shí)代的異地容災(zāi)更進(jìn)一步
微服務(wù)架構(gòu)逐漸成為了大型應(yīng)用架構(gòu)基礎(chǔ),而在微服務(wù)架構(gòu)之上,除了做好異地分布式網(wǎng)絡(luò),還有一種更簡(jiǎn)單的異地容災(zāi)方案,那就是通過(guò)智能路由實(shí)現(xiàn)異地容災(zāi)。
在SolarMesh(高效可視化微服務(wù)治理平臺(tái))中,只需要聲明哪些集群是屬于同一個(gè)mesh,借助istio的智能路由能力,同名service將會(huì)獲得多集群容災(zāi)的能力流量將會(huì)按照策略智能分配到正常的工作負(fù)載上。
SolarMesh 免費(fèi)在線體驗(yàn)環(huán)境>