云計(jì)算架構(gòu)設(shè)計(jì)六大原則,你遵循了嗎?

2022-10-03    分類(lèi): 網(wǎng)站建設(shè)

我們不一定能直接感受到云計(jì)算對(duì)日常生活、工作、學(xué)習(xí)的影響,但作為IT基礎(chǔ)設(shè)施,它卻悄然支撐著我們正在使用的各個(gè)應(yīng)用。

云計(jì)算架構(gòu)設(shè)計(jì)六大原則,你遵循了嗎?

在很多書(shū)和云服務(wù)商的官方文檔中都介紹過(guò)云計(jì)算的概念、發(fā)展歷史、產(chǎn)品體系,我們不再贅述。我們可以從另一個(gè)角度去認(rèn)識(shí)云計(jì)算的整體架構(gòu)和服務(wù)能力,也就是云計(jì)算架構(gòu)體系,如圖1所示,其中概括了云計(jì)算從下到上的組成結(jié)構(gòu),包括基礎(chǔ)設(shè)施、云計(jì)算操作系統(tǒng)、產(chǎn)品體系(包含安全與合規(guī)、監(jiān)控與管理)、解決方案體系、服務(wù)體系。

云計(jì)算架構(gòu)設(shè)計(jì)六大原則,你遵循了嗎?

圖1

完整的技術(shù)架構(gòu)設(shè)計(jì)也是有步驟可循的,先是收集需求分析,根據(jù)需求分析進(jìn)行架構(gòu)設(shè)計(jì),再進(jìn)行評(píng)估改進(jìn)及交付實(shí)施,然后持續(xù)運(yùn)營(yíng),如圖2所示。

云計(jì)算架構(gòu)設(shè)計(jì)六大原則,你遵循了嗎?

圖2

在架構(gòu)設(shè)計(jì)的各個(gè)階段中,每個(gè)階段均導(dǎo)入前一個(gè)階段的結(jié)果,經(jīng)過(guò)當(dāng)前階段處理后輸出設(shè)計(jì)方案或搭建環(huán)境,漸進(jìn)式地推進(jìn)完整解決方案的設(shè)計(jì)。

(1)需求分析階段由用戶輸入需求痛點(diǎn),經(jīng)過(guò)分析后輸出需求分析表。

(2)在架構(gòu)設(shè)計(jì)階段中,根據(jù)需求分析表來(lái)匹配合適的設(shè)計(jì)模式,形成完整的架構(gòu)設(shè)計(jì)方案。

(3)在評(píng)估改進(jìn)階段,對(duì)已完成的架構(gòu)設(shè)計(jì)方案進(jìn)行評(píng)估,輸出經(jīng)過(guò)評(píng)估和參考良好架構(gòu)設(shè)計(jì)原則改進(jìn)過(guò)的架構(gòu)設(shè)計(jì)方案。

(4)在交付實(shí)施階段,根據(jù)經(jīng)過(guò)評(píng)估改進(jìn)的架構(gòu)設(shè)計(jì)方案在云平臺(tái)中搭建環(huán)境、部署業(yè)務(wù),提供符合架構(gòu)設(shè)計(jì)的云端環(huán)境。

(5)在架構(gòu)的持續(xù)運(yùn)營(yíng)中,輸入解決方案和當(dāng)前業(yè)務(wù)運(yùn)行狀況,持續(xù)巡檢、分析、評(píng)估(參見(jiàn)《云端架構(gòu)》一書(shū)的第11章),輸出改進(jìn)措施,進(jìn)行重構(gòu)改進(jìn),并周而復(fù)始地根據(jù)新需求提供方案。

基于云計(jì)算進(jìn)行架構(gòu)設(shè)計(jì),所有的技術(shù)解決方案都應(yīng)遵循一定的原則,這也是架構(gòu)設(shè)計(jì)中要追求的目標(biāo)。

圖3所示為架構(gòu)設(shè)計(jì)的6大原則,包括合理部署、業(yè)務(wù)持續(xù)、彈性擴(kuò)展、性能效率、安全合規(guī)、持續(xù)運(yùn)營(yíng)。

云計(jì)算架構(gòu)設(shè)計(jì)六大原則,你遵循了嗎?

圖3

這6大原則代表了架構(gòu)設(shè)計(jì)中需要考慮的不同角度,只有同時(shí)遵循這些原則才能設(shè)計(jì)出完善的架構(gòu)方案,但在實(shí)際情況中,并不需要在所有架構(gòu)設(shè)計(jì)中把所有設(shè)計(jì)模式都融入進(jìn)去,構(gòu)建繁雜的架構(gòu)方案。后面會(huì)對(duì)這6大原則逐一展開(kāi)介紹,從各個(gè)原則的子項(xiàng)中進(jìn)行設(shè)計(jì)。

1.合理部署

業(yè)務(wù)系統(tǒng)在公有云上的部署包括使用虛擬機(jī)形式的云主機(jī),還包括性能更強(qiáng)的物理云主機(jī)形式,托管服務(wù)包括托管應(yīng)用、托管物理服務(wù)器。

基于IT歷史資源狀況、合規(guī)性要求等,很多企業(yè)還沒(méi)有上云,針對(duì)這種情況,將云計(jì)算操作系統(tǒng)抽取出來(lái)打包為獨(dú)立的軟件和服務(wù),在用戶的私有化環(huán)境中進(jìn)行部署。區(qū)別于公有云面向“任何”用戶開(kāi)放使用,私有化部署僅面向少數(shù)指定的用戶使用。

混合架構(gòu)能夠?qū)性坪退接谢渴鸬钠脚_(tái)、傳統(tǒng)的VMware、OpenStack虛擬化平臺(tái)或物理服務(wù)器等資源進(jìn)行統(tǒng)一管理和調(diào)度,混合架構(gòu)既享受了不變更本地環(huán)境、滿足合規(guī)要求的好處,又享受了云平臺(tái)資源豐富、服務(wù)能力充足等優(yōu)勢(shì)?;旌霞軜?gòu)也是當(dāng)前企業(yè)轉(zhuǎn)型上云的一種中間狀態(tài),會(huì)長(zhǎng)期存在。

在跨境電商、游戲出海等場(chǎng)景下會(huì)使用到全球范圍內(nèi)的多個(gè)地域,將業(yè)務(wù)和數(shù)據(jù)靠近用戶來(lái)部署可以減少網(wǎng)絡(luò)延遲、提升訪問(wèn)體驗(yàn)。因此,納入了全球部署,來(lái)重點(diǎn)解決如何在全球范圍內(nèi)盡可能靠近用戶部署的問(wèn)題,也能實(shí)現(xiàn)數(shù)據(jù)同步存儲(chǔ)和處理的方案。

不能相信任何一塊硬盤(pán)、任何一臺(tái)云主機(jī)、任何一個(gè)可用區(qū)、任何一個(gè)地域,也不能完全相信任何一個(gè)云服務(wù)商,進(jìn)行業(yè)務(wù)部署時(shí)應(yīng)選擇多個(gè)公有云平臺(tái),提升業(yè)務(wù)持續(xù)性,彌補(bǔ)單個(gè)云服務(wù)商在資源和服務(wù)上的短板,屏蔽云服務(wù)商的一些技術(shù)鎖定和商業(yè)綁定。

2.業(yè)務(wù)持續(xù)

業(yè)務(wù)持續(xù)性主要是指高可用、高可靠、災(zāi)難恢復(fù)三方面,在設(shè)計(jì)模式中也是按照這個(gè)邏輯展開(kāi)的。

高可用(High Availability),是指當(dāng)業(yè)務(wù)運(yùn)行的資源出現(xiàn)故障時(shí),通過(guò)冗余等設(shè)計(jì)來(lái)避免業(yè)務(wù)中斷。 高可靠(Continuous Operations),是指業(yè)務(wù)運(yùn)行的資源無(wú)故障,業(yè)務(wù)可持續(xù)提供服務(wù)。 災(zāi)難恢復(fù)(Disaster Recovery),是指當(dāng)業(yè)務(wù)運(yùn)行環(huán)境遭到破壞時(shí),在不同環(huán)境中恢復(fù)應(yīng)用和數(shù)據(jù)的能力。

在架構(gòu)設(shè)計(jì)的每一層中都應(yīng)實(shí)現(xiàn)冗余和業(yè)務(wù)持續(xù)性,沒(méi)有冗余就意味著會(huì)出現(xiàn)單點(diǎn),而單點(diǎn)一旦出現(xiàn)故障,就會(huì)造成局部服務(wù)終止。

存儲(chǔ)產(chǎn)品:塊存儲(chǔ)通過(guò)三個(gè)副本實(shí)現(xiàn)冗余,當(dāng)一個(gè)副本出現(xiàn)錯(cuò)誤時(shí),通過(guò)其他副本來(lái)校驗(yàn)和恢復(fù)數(shù)據(jù);對(duì)象存儲(chǔ)中通過(guò)糾刪碼來(lái)實(shí)現(xiàn)數(shù)據(jù)冗余校驗(yàn),提供可恢復(fù)能力;對(duì)象存儲(chǔ)提供跨區(qū)域復(fù)制功能,避免單個(gè)地域成為對(duì)象存儲(chǔ)的單點(diǎn)。 備份方案:在云端通過(guò)跨可用區(qū)、跨地域的數(shù)據(jù)備份提升可靠性,避免只存儲(chǔ)一份數(shù)據(jù);在混合架構(gòu)中將數(shù)據(jù)備份到云端,在本地環(huán)境數(shù)據(jù)損壞時(shí),可通過(guò)云端備份文件進(jìn)行恢復(fù)。 容災(zāi)方案:對(duì)業(yè)務(wù)系統(tǒng)實(shí)現(xiàn)容災(zāi),避免當(dāng)前業(yè)務(wù)環(huán)境成為單點(diǎn),提升整體業(yè)務(wù)的可用性和抗風(fēng)險(xiǎn)能力。 高可用:通過(guò)跨可用區(qū)的負(fù)載均衡部署實(shí)現(xiàn)云主機(jī)和可用區(qū)的冗余;通過(guò)全局負(fù)載均衡實(shí)現(xiàn)跨地域、跨云平臺(tái)的高可用。 3.彈性擴(kuò)展

緊耦合的系統(tǒng)不容易擴(kuò)展,在出現(xiàn)軟件Bug和系統(tǒng)故障時(shí)難以排查問(wèn)題,調(diào)用每個(gè)系統(tǒng)組件的壓力各不相同,小問(wèn)題逐級(jí)放大,容易造成整個(gè)業(yè)務(wù)中斷。要保持系統(tǒng)彈性擴(kuò)展,首先要進(jìn)行系統(tǒng)組件的解耦,包含動(dòng)態(tài)數(shù)據(jù)和靜態(tài)數(shù)據(jù)解耦,解耦后的組件可實(shí)現(xiàn)功能單元化,各司其職。

解耦之后再對(duì)組件和服務(wù)進(jìn)行擴(kuò)展,即計(jì)算資源的縱向擴(kuò)展、橫向擴(kuò)展和自動(dòng)伸縮,包括數(shù)據(jù)庫(kù)層的擴(kuò)展,還有通過(guò)混合架構(gòu)延展本地環(huán)境的計(jì)算、存儲(chǔ)備份、安全防護(hù)、產(chǎn)品服務(wù)能力。對(duì)應(yīng)用和數(shù)據(jù)的遷移也算作整個(gè)系統(tǒng)的擴(kuò)展,從一個(gè)環(huán)境遷移到另外一個(gè)環(huán)境,系統(tǒng)應(yīng)保持彈性擴(kuò)展,在需要遷移時(shí)能夠快速實(shí)施遷移。最后還要進(jìn)行均衡,組件解耦、資源和服務(wù)擴(kuò)展之后需要統(tǒng)一的接入入口,以屏蔽底層解耦與擴(kuò)展帶來(lái)的接口不統(tǒng)一等問(wèn)題,將這些都納入均衡和全局負(fù)載均衡中來(lái)介紹。

在各個(gè)層面實(shí)現(xiàn)解耦,通過(guò)消息隊(duì)列來(lái)解耦組件之間的通信,并解耦事件;通過(guò)Redis等共享存儲(chǔ)實(shí)現(xiàn)狀態(tài)數(shù)據(jù)與計(jì)算資源的解耦;采用云主機(jī)部署業(yè)務(wù)應(yīng)該面向服務(wù)而非資源,將資源與業(yè)務(wù)解耦;存儲(chǔ)實(shí)現(xiàn)彈性可掛載和可卸載的云硬盤(pán),采用可綁定和解綁定的EIP;通過(guò)DDoS防護(hù)、WAF防護(hù)等解耦安全防護(hù)與計(jì)算資源;使用原生的計(jì)算能力、存儲(chǔ)能力將業(yè)務(wù)與云平臺(tái)的特性解耦,實(shí)現(xiàn)業(yè)務(wù)在多個(gè)云平臺(tái)中的可擴(kuò)展。

組件解耦是實(shí)現(xiàn)可擴(kuò)展的前提,可通過(guò)以下方式進(jìn)行解耦。

保持無(wú)狀態(tài),將狀態(tài)數(shù)據(jù)存儲(chǔ)到Redis中。 放到負(fù)載均衡中,擴(kuò)容、縮容不影響整體業(yè)務(wù)。 通過(guò)消息隊(duì)列、API Gateway解耦,生產(chǎn)者、消費(fèi)者可擴(kuò)展且互不影響。 實(shí)現(xiàn)業(yè)務(wù)的全局負(fù)載均衡,后端業(yè)務(wù)能夠在混合架構(gòu)、多云環(huán)境中進(jìn)行擴(kuò)展 4.性能效率

非常多的解決方案和案例中都涉及高并發(fā)、流量激增帶來(lái)的對(duì)性能的挑戰(zhàn),在性能效率中,主要目標(biāo)是發(fā)現(xiàn)和提升應(yīng)用的性能,提高資源和組件的效率。

首先是計(jì)算性能,通過(guò)采用高配置的云主機(jī)或物理云主機(jī)來(lái)提升單機(jī)性能,通過(guò)集群形式擴(kuò)展整體服務(wù)性能。

其次是存儲(chǔ)和緩存,通過(guò)Redis來(lái)緩存熱點(diǎn)數(shù)據(jù)、存儲(chǔ)臨時(shí)狀態(tài)數(shù)據(jù),在內(nèi)存中進(jìn)行計(jì)算能夠提升業(yè)務(wù)性能。在每一層使用緩存,通過(guò)CDN緩存靜態(tài)文件,對(duì)沒(méi)有命中的文件進(jìn)行回源;通過(guò)Redis緩存數(shù)據(jù)庫(kù),加速數(shù)據(jù)庫(kù)的訪問(wèn);通過(guò)Redis緩存熱點(diǎn)配置文件、熱點(diǎn)數(shù)據(jù),提前加載,減少訪問(wèn)時(shí)間。

再次是對(duì)網(wǎng)絡(luò)性能的優(yōu)化,在業(yè)務(wù)實(shí)現(xiàn)全球部署時(shí)選擇最優(yōu)數(shù)據(jù)中心,并且基于全球基礎(chǔ)網(wǎng)絡(luò)、CDN及全球應(yīng)用加速來(lái)提升網(wǎng)絡(luò)性能,獲得請(qǐng)求加速效果。

最后介紹應(yīng)用性能監(jiān)測(cè)和壓力測(cè)試,從應(yīng)用的角度上來(lái)評(píng)測(cè)當(dāng)前的性能狀況、發(fā)現(xiàn)問(wèn)題瓶頸,并針對(duì)性地解決問(wèn)題。

5.安全合規(guī)

安全合規(guī)一方面是為了滿足業(yè)務(wù)安全防護(hù)的自身需求,另一方面是滿足安全監(jiān)管的合規(guī)要求,在具體實(shí)施時(shí)會(huì)將這兩方面交叉在一起。

首先,從用戶賬號(hào)和權(quán)限管理切入,為合適的人員分配恰當(dāng)?shù)馁~號(hào)、角色,授予最低權(quán)限,對(duì)于通過(guò)API或CLI來(lái)訪問(wèn)的程序或人員分配恰當(dāng)?shù)墓€、私鑰和權(quán)限,對(duì)于臨時(shí)訪問(wèn)的對(duì)象存儲(chǔ)文件Token等也進(jìn)行嚴(yán)格管理。其次,還有在整個(gè)安全體系中的終端安全、數(shù)據(jù)安全、網(wǎng)絡(luò)安全、應(yīng)用安全,以及對(duì)日志、行為、數(shù)據(jù)庫(kù)操作的審計(jì)。最后,還有等保2.0的要求、網(wǎng)站備案要求、滿足GDPR等各地區(qū)對(duì)業(yè)務(wù)和數(shù)據(jù)隱私要求的制度等。

在賬號(hào)體系中設(shè)置主賬號(hào)、子賬號(hào),并對(duì)公鑰、密鑰進(jìn)行管理;設(shè)置合適的角色,為賬號(hào)、角色分配所需要的最低權(quán)限。 通過(guò)ACL控制網(wǎng)絡(luò)訪問(wèn);通過(guò)安全組限制云主機(jī)開(kāi)放的端口等;通過(guò)子網(wǎng)和路由控制跨子網(wǎng)的通信。將數(shù)據(jù)庫(kù)及只需要內(nèi)部訪問(wèn)的云主機(jī)配置到內(nèi)網(wǎng)VPC中,設(shè)置允許訪問(wèn)的VPC,設(shè)置為不連通外網(wǎng)。 防止DDoS、cc、SQL注入、XSS等攻擊。 安全審計(jì),保留訪問(wèn)日志、操作日志,逐步實(shí)現(xiàn)低頻存儲(chǔ)、歸檔存儲(chǔ)等。 6.持續(xù)運(yùn)營(yíng)

云平臺(tái)提供的資源與服務(wù)均有SLA,云主機(jī)的SLA通常為99.95%,用戶構(gòu)建的業(yè)務(wù)系統(tǒng)都是基于云資源和云服務(wù)的SLA,在此之上構(gòu)建可用性、可靠性更高的業(yè)務(wù)系統(tǒng)。對(duì)于自身業(yè)務(wù)系統(tǒng),也需要制定SLA來(lái)表明服務(wù)可用性或其他指標(biāo),制定了用戶業(yè)務(wù)的SLA后,就可以按照SLA閾值來(lái)設(shè)置高可用限流值,綜合評(píng)估整體業(yè)務(wù)的服務(wù)可用性和數(shù)據(jù)可靠性,并指定故障應(yīng)急措施。

在持續(xù)運(yùn)營(yíng)中會(huì)對(duì)云資源、云服務(wù)、事件及用戶的應(yīng)用進(jìn)行監(jiān)控,并設(shè)置告警,在達(dá)到告警條件時(shí),通過(guò)電話、短信、郵件、釘釘、微信等方式通知相關(guān)人員,將告警交給回調(diào)函數(shù),可實(shí)現(xiàn)自動(dòng)化故障處理或相應(yīng)的應(yīng)急預(yù)案,減少人工介入。

應(yīng)該在架構(gòu)設(shè)計(jì)的每一層進(jìn)行監(jiān)控與告警,包括對(duì)云資源、事件、應(yīng)用運(yùn)行狀況的全方位監(jiān)控。對(duì)于用戶自定義的需要監(jiān)測(cè)的資源與服務(wù),需要配置合理有效的告警策略來(lái)及時(shí)發(fā)現(xiàn)異常情況。通過(guò)Advisor實(shí)現(xiàn)云平臺(tái)巡檢,持續(xù)監(jiān)測(cè)資源的變化,持續(xù)定期評(píng)估業(yè)務(wù)架構(gòu),及時(shí)發(fā)現(xiàn)業(yè)務(wù)架構(gòu)是否還匹配業(yè)務(wù)需求。

此外,還需要具備自動(dòng)化響應(yīng)及處理功能,自動(dòng)伸縮能夠通過(guò)監(jiān)控CPU等指標(biāo)自動(dòng)擴(kuò)容或縮容云主機(jī)數(shù)量;通過(guò)定時(shí)器固定周期擴(kuò)容或縮容云主機(jī)數(shù)量。實(shí)現(xiàn)事件驅(qū)動(dòng)響應(yīng),由事件消息觸發(fā)執(zhí)行腳本、回調(diào)函數(shù)等操作,實(shí)現(xiàn)智能運(yùn)維,根據(jù)事件和告警自動(dòng)觸發(fā)運(yùn)維操作,編排運(yùn)維腳本,通過(guò)智能運(yùn)維的方式來(lái)減少人工運(yùn)維。

及時(shí)發(fā)現(xiàn)消費(fèi)及業(yè)務(wù)成本的變化,并對(duì)成本進(jìn)行優(yōu)化。設(shè)置賬戶余額告警值,避免快速消費(fèi),實(shí)現(xiàn)成本控制。評(píng)估資源使用時(shí)長(zhǎng),將按時(shí)計(jì)費(fèi)的資源轉(zhuǎn)變?yōu)榘丛隆茨暧?jì)費(fèi),優(yōu)化資源的使用。通過(guò)Advisor中建議的成本優(yōu)化釋放沒(méi)有使用的EIP,根據(jù)CPU等指標(biāo)來(lái)減少云主機(jī)數(shù)量或降低云主機(jī)配置,云主機(jī)處理對(duì)象存儲(chǔ)時(shí)通過(guò)內(nèi)網(wǎng)進(jìn)行訪問(wèn),減少外網(wǎng)訪問(wèn)的流量費(fèi)用。通過(guò)多云部署實(shí)現(xiàn)成本優(yōu)化,綜合多個(gè)云平臺(tái)的資源價(jià)格選擇資源,選用較優(yōu)的組合方案,通過(guò)其他云平臺(tái)更低單價(jià)的競(jìng)價(jià)實(shí)例云主機(jī)來(lái)處理OLAP的業(yè)務(wù)。

網(wǎng)頁(yè)名稱(chēng):云計(jì)算架構(gòu)設(shè)計(jì)六大原則,你遵循了嗎?
當(dāng)前路徑:http://www.bm7419.com/news6/200856.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航響應(yīng)式網(wǎng)站、品牌網(wǎng)站制作、做網(wǎng)站網(wǎng)站設(shè)計(jì)、軟件開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化