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

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

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

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

在很多書和云服務(wù)商的官方文檔中都介紹過云計(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)營,如圖2所示。

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

圖2

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

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

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

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

(4)在交付實(shí)施階段,根據(jù)經(jīng)過評(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)營中,輸入解決方案和當(dāng)前業(yè)務(wù)運(yùn)行狀況,持續(xù)巡檢、分析、評(píng)估(參見《云端架構(gòu)》一書的第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)營。

云計(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大原則逐一展開介紹,從各個(gè)原則的子項(xiàng)中進(jìn)行設(shè)計(jì)。

1.合理部署

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

基于IT歷史資源狀況、合規(guī)性要求等,很多企業(yè)還沒有上云,針對(duì)這種情況,將云計(jì)算操作系統(tǒng)抽取出來打包為獨(dú)立的軟件和服務(wù),在用戶的私有化環(huán)境中進(jìn)行部署。區(qū)別于公有云面向“任何”用戶開放使用,私有化部署僅面向少數(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)勢。混合架構(gòu)也是當(dāng)前企業(yè)轉(zhuǎn)型上云的一種中間狀態(tài),會(huì)長期存在。

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

不能相信任何一塊硬盤、任何一臺(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è)邏輯展開的。

高可用(High Availability),是指當(dāng)業(yè)務(wù)運(yùn)行的資源出現(xiàn)故障時(shí),通過冗余等設(shè)計(jì)來避免業(yè)務(wù)中斷。 高可靠(Continuous Operations),是指業(yè)務(wù)運(yùn)行的資源無故障,業(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ù)性,沒有冗余就意味著會(huì)出現(xiàn)單點(diǎn),而單點(diǎn)一旦出現(xiàn)故障,就會(huì)造成局部服務(wù)終止。

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

緊耦合的系統(tǒng)不容易擴(kuò)展,在出現(xiàn)軟件Bug和系統(tǒng)故障時(shí)難以排查問題,調(diào)用每個(gè)系統(tǒng)組件的壓力各不相同,小問題逐級(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ù)庫層的擴(kuò)展,還有通過混合架構(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ò)展帶來的接口不統(tǒng)一等問題,將這些都納入均衡和全局負(fù)載均衡中來介紹。

在各個(gè)層面實(shí)現(xiàn)解耦,通過消息隊(duì)列來解耦組件之間的通信,并解耦事件;通過Redis等共享存儲(chǔ)實(shí)現(xiàn)狀態(tài)數(shù)據(jù)與計(jì)算資源的解耦;采用云主機(jī)部署業(yè)務(wù)應(yīng)該面向服務(wù)而非資源,將資源與業(yè)務(wù)解耦;存儲(chǔ)實(shí)現(xiàn)彈性可掛載和可卸載的云硬盤,采用可綁定和解綁定的EIP;通過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ò)展的前提,可通過以下方式進(jìn)行解耦。

保持無狀態(tài),將狀態(tài)數(shù)據(jù)存儲(chǔ)到Redis中。 放到負(fù)載均衡中,擴(kuò)容、縮容不影響整體業(yè)務(wù)。 通過消息隊(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ā)、流量激增帶來的對(duì)性能的挑戰(zhàn),在性能效率中,主要目標(biāo)是發(fā)現(xiàn)和提升應(yīng)用的性能,提高資源和組件的效率。

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

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

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

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

5.安全合規(guī)

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

首先,從用戶賬號(hào)和權(quán)限管理切入,為合適的人員分配恰當(dāng)?shù)馁~號(hào)、角色,授予最低權(quán)限,對(duì)于通過API或CLI來訪問的程序或人員分配恰當(dāng)?shù)墓€、私鑰和權(quán)限,對(duì)于臨時(shí)訪問的對(duì)象存儲(chǔ)文件Token等也進(jìn)行嚴(yán)格管理。其次,還有在整個(gè)安全體系中的終端安全、數(shù)據(jù)安全、網(wǎng)絡(luò)安全、應(yīng)用安全,以及對(duì)日志、行為、數(shù)據(jù)庫操作的審計(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)限。 通過ACL控制網(wǎng)絡(luò)訪問;通過安全組限制云主機(jī)開放的端口等;通過子網(wǎng)和路由控制跨子網(wǎng)的通信。將數(shù)據(jù)庫及只需要內(nèi)部訪問的云主機(jī)配置到內(nèi)網(wǎng)VPC中,設(shè)置允許訪問的VPC,設(shè)置為不連通外網(wǎng)。 防止DDoS、cc、SQL注入、XSS等攻擊。 安全審計(jì),保留訪問日志、操作日志,逐步實(shí)現(xiàn)低頻存儲(chǔ)、歸檔存儲(chǔ)等。 6.持續(xù)運(yùn)營

云平臺(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來表明服務(wù)可用性或其他指標(biāo),制定了用戶業(yè)務(wù)的SLA后,就可以按照SLA閾值來設(shè)置高可用限流值,綜合評(píng)估整體業(yè)務(wù)的服務(wù)可用性和數(shù)據(jù)可靠性,并指定故障應(yīng)急措施。

在持續(xù)運(yùn)營中會(huì)對(duì)云資源、云服務(wù)、事件及用戶的應(yīng)用進(jìn)行監(jiān)控,并設(shè)置告警,在達(dá)到告警條件時(shí),通過電話、短信、郵件、釘釘、微信等方式通知相關(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)測的資源與服務(wù),需要配置合理有效的告警策略來及時(shí)發(fā)現(xiàn)異常情況。通過Advisor實(shí)現(xiàn)云平臺(tái)巡檢,持續(xù)監(jiān)測資源的變化,持續(xù)定期評(píng)估業(yè)務(wù)架構(gòu),及時(shí)發(fā)現(xiàn)業(yè)務(wù)架構(gòu)是否還匹配業(yè)務(wù)需求。

此外,還需要具備自動(dòng)化響應(yīng)及處理功能,自動(dòng)伸縮能夠通過監(jiān)控CPU等指標(biāo)自動(dòng)擴(kuò)容或縮容云主機(jī)數(shù)量;通過定時(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)維腳本,通過智能運(yùn)維的方式來減少人工運(yùn)維。

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

分享題目:云計(jì)算架構(gòu)設(shè)計(jì)六大原則你遵循了嗎?
分享網(wǎng)址:http://muchs.cn/news/203075.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)微信小程序、網(wǎng)站改版、軟件開發(fā)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站策劃

廣告

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

綿陽服務(wù)器托管