2022-10-03 分類: 網站建設
我們不一定能直接感受到云計算對日常生活、工作、學習的影響,但作為IT基礎設施,它卻悄然支撐著我們正在使用的各個應用。
在很多書和云服務商的官方文檔中都介紹過云計算的概念、發展歷史、產品體系,我們不再贅述。我們可以從另一個角度去認識云計算的整體架構和服務能力,也就是云計算架構體系,如圖1所示,其中概括了云計算從下到上的組成結構,包括基礎設施、云計算操作系統、產品體系(包含安全與合規、監控與管理)、解決方案體系、服務體系。
圖1
完整的技術架構設計也是有步驟可循的,先是收集需求分析,根據需求分析進行架構設計,再進行評估改進及交付實施,然后持續運營,如圖2所示。
圖2
在架構設計的各個階段中,每個階段均導入前一個階段的結果,經過當前階段處理后輸出設計方案或搭建環境,漸進式地推進完整解決方案的設計。
(1)需求分析階段由用戶輸入需求痛點,經過分析后輸出需求分析表。
(2)在架構設計階段中,根據需求分析表來匹配合適的設計模式,形成完整的架構設計方案。
(3)在評估改進階段,對已完成的架構設計方案進行評估,輸出經過評估和參考良好架構設計原則改進過的架構設計方案。
(4)在交付實施階段,根據經過評估改進的架構設計方案在云平臺中搭建環境、部署業務,提供符合架構設計的云端環境。
(5)在架構的持續運營中,輸入解決方案和當前業務運行狀況,持續巡檢、分析、評估(參見《云端架構》一書的第11章),輸出改進措施,進行重構改進,并周而復始地根據新需求提供方案。
基于云計算進行架構設計,所有的技術解決方案都應遵循一定的原則,這也是架構設計中要追求的目標。
圖3所示為架構設計的6大原則,包括合理部署、業務持續、彈性擴展、性能效率、安全合規、持續運營。
圖3
這6大原則代表了架構設計中需要考慮的不同角度,只有同時遵循這些原則才能設計出完善的架構方案,但在實際情況中,并不需要在所有架構設計中把所有設計模式都融入進去,構建繁雜的架構方案。后面會對這6大原則逐一展開介紹,從各個原則的子項中進行設計。
1.合理部署業務系統在公有云上的部署包括使用虛擬機形式的云主機,還包括性能更強的物理云主機形式,托管服務包括托管應用、托管物理服務器。
基于IT歷史資源狀況、合規性要求等,很多企業還沒有上云,針對這種情況,將云計算操作系統抽取出來打包為獨立的軟件和服務,在用戶的私有化環境中進行部署。區別于公有云面向“任何”用戶開放使用,私有化部署僅面向少數指定的用戶使用。
混合架構能夠對公有云和私有化部署的平臺、傳統的VMware、OpenStack虛擬化平臺或物理服務器等資源進行統一管理和調度,混合架構既享受了不變更本地環境、滿足合規要求的好處,又享受了云平臺資源豐富、服務能力充足等優勢。混合架構也是當前企業轉型上云的一種中間狀態,會長期存在。
在跨境電商、游戲出海等場景下會使用到全球范圍內的多個地域,將業務和數據靠近用戶來部署可以減少網絡延遲、提升訪問體驗。因此,納入了全球部署,來重點解決如何在全球范圍內盡可能靠近用戶部署的問題,也能實現數據同步存儲和處理的方案。
不能相信任何一塊硬盤、任何一臺云主機、任何一個可用區、任何一個地域,也不能完全相信任何一個云服務商,進行業務部署時應選擇多個公有云平臺,提升業務持續性,彌補單個云服務商在資源和服務上的短板,屏蔽云服務商的一些技術鎖定和商業綁定。
2.業務持續業務持續性主要是指高可用、高可靠、災難恢復三方面,在設計模式中也是按照這個邏輯展開的。
高可用(High Availability),是指當業務運行的資源出現故障時,通過冗余等設計來避免業務中斷。 高可靠(Continuous Operations),是指業務運行的資源無故障,業務可持續提供服務。 災難恢復(Disaster Recovery),是指當業務運行環境遭到破壞時,在不同環境中恢復應用和數據的能力。在架構設計的每一層中都應實現冗余和業務持續性,沒有冗余就意味著會出現單點,而單點一旦出現故障,就會造成局部服務終止。
存儲產品:塊存儲通過三個副本實現冗余,當一個副本出現錯誤時,通過其他副本來校驗和恢復數據;對象存儲中通過糾刪碼來實現數據冗余校驗,提供可恢復能力;對象存儲提供跨區域復制功能,避免單個地域成為對象存儲的單點。 備份方案:在云端通過跨可用區、跨地域的數據備份提升可靠性,避免只存儲一份數據;在混合架構中將數據備份到云端,在本地環境數據損壞時,可通過云端備份文件進行恢復。 容災方案:對業務系統實現容災,避免當前業務環境成為單點,提升整體業務的可用性和抗風險能力。 高可用:通過跨可用區的負載均衡部署實現云主機和可用區的冗余;通過全局負載均衡實現跨地域、跨云平臺的高可用。 3.彈性擴展緊耦合的系統不容易擴展,在出現軟件Bug和系統故障時難以排查問題,調用每個系統組件的壓力各不相同,小問題逐級放大,容易造成整個業務中斷。要保持系統彈性擴展,首先要進行系統組件的解耦,包含動態數據和靜態數據解耦,解耦后的組件可實現功能單元化,各司其職。
解耦之后再對組件和服務進行擴展,即計算資源的縱向擴展、橫向擴展和自動伸縮,包括數據庫層的擴展,還有通過混合架構延展本地環境的計算、存儲備份、安全防護、產品服務能力。對應用和數據的遷移也算作整個系統的擴展,從一個環境遷移到另外一個環境,系統應保持彈性擴展,在需要遷移時能夠快速實施遷移。最后還要進行均衡,組件解耦、資源和服務擴展之后需要統一的接入入口,以屏蔽底層解耦與擴展帶來的接口不統一等問題,將這些都納入均衡和全局負載均衡中來介紹。
在各個層面實現解耦,通過消息隊列來解耦組件之間的通信,并解耦事件;通過Redis等共享存儲實現狀態數據與計算資源的解耦;采用云主機部署業務應該面向服務而非資源,將資源與業務解耦;存儲實現彈性可掛載和可卸載的云硬盤,采用可綁定和解綁定的EIP;通過DDoS防護、WAF防護等解耦安全防護與計算資源;使用原生的計算能力、存儲能力將業務與云平臺的特性解耦,實現業務在多個云平臺中的可擴展。
組件解耦是實現可擴展的前提,可通過以下方式進行解耦。
保持無狀態,將狀態數據存儲到Redis中。 放到負載均衡中,擴容、縮容不影響整體業務。 通過消息隊列、API Gateway解耦,生產者、消費者可擴展且互不影響。 實現業務的全局負載均衡,后端業務能夠在混合架構、多云環境中進行擴展 4.性能效率非常多的解決方案和案例中都涉及高并發、流量激增帶來的對性能的挑戰,在性能效率中,主要目標是發現和提升應用的性能,提高資源和組件的效率。
首先是計算性能,通過采用高配置的云主機或物理云主機來提升單機性能,通過集群形式擴展整體服務性能。
其次是存儲和緩存,通過Redis來緩存熱點數據、存儲臨時狀態數據,在內存中進行計算能夠提升業務性能。在每一層使用緩存,通過CDN緩存靜態文件,對沒有命中的文件進行回源;通過Redis緩存數據庫,加速數據庫的訪問;通過Redis緩存熱點配置文件、熱點數據,提前加載,減少訪問時間。
再次是對網絡性能的優化,在業務實現全球部署時選擇最優數據中心,并且基于全球基礎網絡、CDN及全球應用加速來提升網絡性能,獲得請求加速效果。
最后介紹應用性能監測和壓力測試,從應用的角度上來評測當前的性能狀況、發現問題瓶頸,并針對性地解決問題。
5.安全合規安全合規一方面是為了滿足業務安全防護的自身需求,另一方面是滿足安全監管的合規要求,在具體實施時會將這兩方面交叉在一起。
首先,從用戶賬號和權限管理切入,為合適的人員分配恰當的賬號、角色,授予最低權限,對于通過API或CLI來訪問的程序或人員分配恰當的公鑰、私鑰和權限,對于臨時訪問的對象存儲文件Token等也進行嚴格管理。其次,還有在整個安全體系中的終端安全、數據安全、網絡安全、應用安全,以及對日志、行為、數據庫操作的審計。最后,還有等保2.0的要求、網站備案要求、滿足GDPR等各地區對業務和數據隱私要求的制度等。
在賬號體系中設置主賬號、子賬號,并對公鑰、密鑰進行管理;設置合適的角色,為賬號、角色分配所需要的最低權限。 通過ACL控制網絡訪問;通過安全組限制云主機開放的端口等;通過子網和路由控制跨子網的通信。將數據庫及只需要內部訪問的云主機配置到內網VPC中,設置允許訪問的VPC,設置為不連通外網。 防止DDoS、cc、SQL注入、XSS等攻擊。 安全審計,保留訪問日志、操作日志,逐步實現低頻存儲、歸檔存儲等。 6.持續運營云平臺提供的資源與服務均有SLA,云主機的SLA通常為99.95%,用戶構建的業務系統都是基于云資源和云服務的SLA,在此之上構建可用性、可靠性更高的業務系統。對于自身業務系統,也需要制定SLA來表明服務可用性或其他指標,制定了用戶業務的SLA后,就可以按照SLA閾值來設置高可用限流值,綜合評估整體業務的服務可用性和數據可靠性,并指定故障應急措施。
在持續運營中會對云資源、云服務、事件及用戶的應用進行監控,并設置告警,在達到告警條件時,通過電話、短信、郵件、釘釘、微信等方式通知相關人員,將告警交給回調函數,可實現自動化故障處理或相應的應急預案,減少人工介入。
應該在架構設計的每一層進行監控與告警,包括對云資源、事件、應用運行狀況的全方位監控。對于用戶自定義的需要監測的資源與服務,需要配置合理有效的告警策略來及時發現異常情況。通過Advisor實現云平臺巡檢,持續監測資源的變化,持續定期評估業務架構,及時發現業務架構是否還匹配業務需求。
此外,還需要具備自動化響應及處理功能,自動伸縮能夠通過監控CPU等指標自動擴容或縮容云主機數量;通過定時器固定周期擴容或縮容云主機數量。實現事件驅動響應,由事件消息觸發執行腳本、回調函數等操作,實現智能運維,根據事件和告警自動觸發運維操作,編排運維腳本,通過智能運維的方式來減少人工運維。
及時發現消費及業務成本的變化,并對成本進行優化。設置賬戶余額告警值,避免快速消費,實現成本控制。評估資源使用時長,將按時計費的資源轉變為按月、按年計費,優化資源的使用。通過Advisor中建議的成本優化釋放沒有使用的EIP,根據CPU等指標來減少云主機數量或降低云主機配置,云主機處理對象存儲時通過內網進行訪問,減少外網訪問的流量費用。通過多云部署實現成本優化,綜合多個云平臺的資源價格選擇資源,選用較優的組合方案,通過其他云平臺更低單價的競價實例云主機來處理OLAP的業務。
網頁名稱:云計算架構設計六大原則,你遵循了嗎?
當前路徑:http://m.newbst.com/news6/200856.html
成都網站建設公司_創新互聯,為您提供網站導航、響應式網站、品牌網站制作、做網站、網站設計、軟件開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
猜你還喜歡下面的內容