ker重塑互聯(lián)網(wǎng)系統(tǒng)新架構(gòu)- v2_第1頁
ker重塑互聯(lián)網(wǎng)系統(tǒng)新架構(gòu)- v2_第2頁
ker重塑互聯(lián)網(wǎng)系統(tǒng)新架構(gòu)- v2_第3頁
ker重塑互聯(lián)網(wǎng)系統(tǒng)新架構(gòu)- v2_第4頁
ker重塑互聯(lián)網(wǎng)系統(tǒng)新架構(gòu)- v2_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

Docker

重塑互聯(lián)網(wǎng)系統(tǒng)新架構(gòu)

目錄項(xiàng)目背景與目標(biāo)1資源管理與調(diào)度2應(yīng)用改造和平臺化3平臺部署效果總結(jié)4項(xiàng)目背景—互聯(lián)網(wǎng)金融帶來的機(jī)遇和挑戰(zhàn)服務(wù)化社交網(wǎng)絡(luò)移動互聯(lián)網(wǎng)大數(shù)據(jù)化互聯(lián)網(wǎng)化、移動化業(yè)務(wù)創(chuàng)新、多元化面向服務(wù)和營銷合作、開放數(shù)據(jù)發(fā)現(xiàn)價值高性能敏捷彈性智能搶線上理財推薦金融廣告數(shù)據(jù)服務(wù)直銷銀行業(yè)務(wù)模式外部環(huán)境技術(shù)需求并發(fā)能力不足業(yè)務(wù)架構(gòu)無法滿足千萬級用戶、互聯(lián)網(wǎng)業(yè)務(wù)的高并發(fā)能力要求彈性不足銀行應(yīng)用系統(tǒng)的擴(kuò)容經(jīng)歷資源分配,軟件安裝,應(yīng)用部署測試,切割入網(wǎng)等過程,在業(yè)務(wù)量突變的情況下無法進(jìn)行快速擴(kuò)展和縮容,無法應(yīng)對突發(fā)性訪問的挑戰(zhàn)發(fā)布周期長大部分的應(yīng)用系統(tǒng)有開發(fā),測試,準(zhǔn)發(fā)布和生成四個部署環(huán)境,各部署環(huán)境不一致,導(dǎo)致代碼從開發(fā)到上線環(huán)節(jié)多,部署復(fù)雜,容易出錯,無法滿足業(yè)務(wù)快速上線的要求資源利用率低應(yīng)用系統(tǒng)仍舊“煙囪式”建設(shè),以虛擬機(jī)為基礎(chǔ)的資源池化并沒有改變豎井化的建設(shè)模式,應(yīng)用與平臺之間沒有解耦,監(jiān)控運(yùn)維無法標(biāo)準(zhǔn)化。資源利用率仍然比較低針對互聯(lián)網(wǎng)金融創(chuàng)新,中國民生銀行面臨用戶規(guī)模和靈活管理的挑戰(zhàn)項(xiàng)目整體目標(biāo)Docker化應(yīng)用高并發(fā)改造實(shí)現(xiàn)應(yīng)用的快速迭代支持快速彈性伸縮應(yīng)對千萬級用戶支持百萬級并發(fā)隨著直銷銀行業(yè)務(wù)的不斷推進(jìn),民生系統(tǒng)要承擔(dān)大規(guī)模批量開戶、促銷活動等高并發(fā)交易量的場景。需要由傳統(tǒng)的IOE架構(gòu)改造成分布式系統(tǒng)架構(gòu),解決應(yīng)用本身的容量瓶頸?;ヂ?lián)網(wǎng)用戶訪問難以預(yù)計(jì),推出營銷活動后,服務(wù)的規(guī)??煽焖偕炜s,以自動適應(yīng)業(yè)務(wù)負(fù)載的動態(tài)變化。用戶使用的資源同業(yè)務(wù)的需求相一致,避免因?yàn)榉?wù)器性能過載或冗余而導(dǎo)致的服務(wù)質(zhì)量下降或資源浪費(fèi)。直銷銀行通過互聯(lián)網(wǎng)直接為客戶提供服務(wù),那就要參考業(yè)界的互聯(lián)網(wǎng)公司產(chǎn)品的推出速度,預(yù)計(jì)最少1-2周更新一次。目錄項(xiàng)目背景與目標(biāo)2資源管理與調(diào)度應(yīng)用改造和平臺化31平臺部署效果總結(jié)4技術(shù)選型-Docker自動創(chuàng)建新版本系統(tǒng)/DB容器自動修改F5/Nginx配置自動停止并刪除原版本系統(tǒng)容器完成開始設(shè)置部署參數(shù)自動部署驗(yàn)證回滾Docker實(shí)現(xiàn)快速部署與版本管理上午提的需求下午要上線怎么辦?系統(tǒng)進(jìn)行升級后遇見故障怎么辦?系統(tǒng)進(jìn)行升級想進(jìn)行多版本對比測試怎么辦?快速部署:虛擬機(jī)可以通過鏡像實(shí)現(xiàn)環(huán)境交付的一致性,但鏡像分發(fā)無法體系化;Docker在Dockerfile中記錄了容器構(gòu)建過程,在集群中實(shí)現(xiàn)快速分發(fā)和快速部署,并且開發(fā)、測試、部署能保證高度一致的環(huán)境與配置。彈性擴(kuò)展:在異構(gòu)環(huán)境下,虛擬機(jī)的遷移較為復(fù)雜;Docker容器可以在任何平臺上遷移,公有云、虛擬機(jī)或物理機(jī),都可以輕松跨平臺遷移。版本管理:虛擬化軟件借助工具,向虛擬機(jī)推送安裝、升級應(yīng)用軟件補(bǔ)丁包;Docker的更新是迭代式的,可增量式對內(nèi)容進(jìn)行分發(fā)、存儲、傳輸、節(jié)點(diǎn)啟動和回滾。技術(shù)復(fù)雜度:虛擬機(jī)的方式難以提供以下三種能力:1.基礎(chǔ)的語言運(yùn)行環(huán)境。2.服務(wù)能力(存儲、計(jì)算等)的動態(tài)擴(kuò)展。3.通用基礎(chǔ)服務(wù)的能力,比如消息中間件,分布式緩存等基礎(chǔ)服務(wù)。以Docker為代表的容器技術(shù)使得開發(fā)和運(yùn)維都變得簡單,Docker像集裝箱一樣將應(yīng)用及其相關(guān)依賴進(jìn)行整體打包,移植到任何支持Docker的環(huán)境中運(yùn)行。VM虛擬機(jī)容器VS整體系統(tǒng)架構(gòu)向“私有云+技術(shù)平臺+應(yīng)用”的互聯(lián)網(wǎng)架構(gòu)轉(zhuǎn)型—實(shí)現(xiàn)架構(gòu)云化,能力平臺化,應(yīng)用互聯(lián)網(wǎng)化資源供給層資源調(diào)度層服務(wù)封裝層服務(wù)協(xié)作層應(yīng)用訪問層虛擬機(jī)物理機(jī)DockerOpenvSwitchDocker-RegistrySwarm/Kubernetes存儲服務(wù)數(shù)據(jù)庫RedisZdal(分庫分表+讀寫分離)計(jì)算服務(wù)HadoopStormDubbo服務(wù)注冊Kafka數(shù)據(jù)分發(fā)ActiveMQ消息分發(fā)負(fù)載均衡+Web負(fù)載均衡+Web負(fù)載均衡+Web負(fù)載均衡+Web持續(xù)集成自動部署可視編排應(yīng)用管理層系統(tǒng)維護(hù)層日志收集定時調(diào)度監(jiān)控預(yù)警維護(hù)規(guī)則系統(tǒng)配置系統(tǒng)報表彈性伸縮Docker平臺PaaS中間件ETL應(yīng)用倉庫與部署管理容器管理:可視化容器管理、基礎(chǔ)運(yùn)行環(huán)境可監(jiān)控DevOps:應(yīng)用的部署和運(yùn)行,支持快速部署、彈性伸縮、高可靠一體化監(jiān)管:基礎(chǔ)設(shè)施和應(yīng)用的統(tǒng)一監(jiān)控和運(yùn)維集群管理與高可用基于Docker,圍繞容器管理提供可靠性和擴(kuò)展性保障可靠性:采用冗余、補(bǔ)償和雙活機(jī)制保證基礎(chǔ)環(huán)境的可靠性擴(kuò)展性:采用分層思想,應(yīng)用管控平臺只需與Master進(jìn)行交互客戶(他行)民生銀行多租戶租戶n用戶A用戶B開發(fā)部開發(fā)工程師測試部開發(fā)工程師測試工程師具體邏輯實(shí)現(xiàn)開發(fā)測試集成發(fā)布運(yùn)維用戶登陸判斷用戶類型允許訪問權(quán)限允許訪問界面允許執(zhí)行操作定制用戶可訪問的視圖樣式多租戶:分為客戶-租戶-用戶三層,要求租戶資源隔離,用戶共享租戶資源實(shí)現(xiàn)手段:權(quán)限管理,采用角色控制,控制用戶與視圖樣式關(guān)聯(lián)關(guān)系資源管控,采用租戶上下文訪問控制,控制用戶可訪問的資源集合多租戶Docker增強(qiáng)DockerBug修復(fù)和優(yōu)化通過大量的對Docker自身做了一系列的測試,已成功修復(fù)50多條原生DockerBugBug修復(fù)已提交到了Docker社區(qū)Docker用戶權(quán)限限制等安全性增強(qiáng)網(wǎng)絡(luò)功能優(yōu)化通過整合OVS(OpenVSwitch)從而支持大規(guī)模網(wǎng)絡(luò)自動化,并可通過編程進(jìn)行擴(kuò)展同時仍然支持標(biāo)準(zhǔn)的管理接口和協(xié)議,支持多個物理機(jī)/虛擬機(jī)的分布式環(huán)境可靠性增強(qiáng)鏡像倉庫的可靠性Swarm集群可靠性管理平臺可靠性日志輸出Session機(jī)制應(yīng)用信息持久化目錄項(xiàng)目背景與目標(biāo)3資源管理與調(diào)度應(yīng)用改造和平臺化21平臺部署效果總結(jié)4高并發(fā)下的互聯(lián)網(wǎng)框架DNS服務(wù)CDN服務(wù)負(fù)載均衡登陸管理登陸管理消息隊(duì)列緩存系統(tǒng)日志系統(tǒng)服務(wù)管理業(yè)務(wù)邏輯業(yè)務(wù)邏輯業(yè)務(wù)邏輯業(yè)務(wù)邏輯分布式存儲系統(tǒng)分庫分表中間件寫數(shù)據(jù)庫讀數(shù)據(jù)庫同步配置管理負(fù)載均衡讀寫分離服務(wù)注冊消息隊(duì)列分庫分表分布式存儲日志服務(wù)PaaS中間件服務(wù)注冊高并發(fā)優(yōu)化-負(fù)載均衡NginxNginxWeb容器Web容器Web容器服務(wù)路由中間件App容器App容器App容器服務(wù)1集群服務(wù)n集群服務(wù)3集群服務(wù)2集群……區(qū)域1用戶區(qū)域2用戶Nginx負(fù)載均衡:可擴(kuò)展的軟負(fù)載均衡方案服務(wù)路由分發(fā):服務(wù)注冊/訂閱模式下的負(fù)載均衡服務(wù)集群:多服務(wù)集群提供服務(wù)以服務(wù)網(wǎng)關(guān)和消息總線為核心能力平臺化、流水線作業(yè)、全分布式、提供高性能和全局的彈性消息隊(duì)列應(yīng)用管控(實(shí)現(xiàn)應(yīng)用管控,多租戶等)應(yīng)用服務(wù)注冊分布式基礎(chǔ)設(shè)施其它分布式服務(wù)(分庫分表、Redis、Nginx等)服務(wù)注冊和協(xié)調(diào)資源注冊和協(xié)調(diào)運(yùn)行支持資源查詢一體化監(jiān)控和智能運(yùn)維應(yīng)用生命周期管理指令查詢/協(xié)調(diào)資源和服務(wù)運(yùn)維/監(jiān)控指令管控指令管控指令查詢/協(xié)調(diào)資源和服務(wù)分布式服務(wù)注冊-應(yīng)用解耦Dubbo分布式服務(wù)注冊直銷銀行app應(yīng)用Server端-1應(yīng)用Server端-N直銷銀行門戶……通過服務(wù)注冊實(shí)現(xiàn)前后端的解耦

零配置:新資源進(jìn)入系統(tǒng),無需配置即可使用基于其上的特性,通過服務(wù)注冊,系統(tǒng)可實(shí)現(xiàn)根據(jù)負(fù)載情況,實(shí)現(xiàn)前后端系統(tǒng)的快速彈性伸縮,從而應(yīng)對訪問流量的不確定性,對并發(fā)高峰進(jìn)行快速響應(yīng)

分布式,易擴(kuò)展,本身不會成為訪問瓶頸消息隊(duì)列-異步處理信貸申請轉(zhuǎn)賬申請購買理財產(chǎn)品定期存款…消息發(fā)布消息發(fā)布消息發(fā)布消息發(fā)布消息發(fā)布隊(duì)列1隊(duì)列2隊(duì)列3隊(duì)列4隊(duì)列5隊(duì)列6消息隊(duì)列短信系統(tǒng)業(yè)務(wù)推薦系統(tǒng)轉(zhuǎn)賬系統(tǒng)后端批貸系統(tǒng)理財系統(tǒng)后端…消息異步處理,提升處理性能Redis緩存集群設(shè)計(jì)-應(yīng)對數(shù)據(jù)庫大并發(fā)壓力CodisRedisRedisRedis緩存集群數(shù)據(jù)庫Oracle…Redis緩存設(shè)計(jì)提高數(shù)據(jù)庫訪問性能

使用Codis管理Redis分布式集群Redis容器化,實(shí)現(xiàn)彈性Ta0

Ta1

Ta255Tb0

Tb1…

Tb255Tc0

Tc1…

Tc255DB0Ta256

Ta257

Ta511Tb256

Tb257…

Tb511Tc256

Tc257…

Tc511DB1DB2…

Ta1023…

Tb1023…

Tc1023DB3應(yīng)用select*from

Ta

where

id=“257”;

ZDAL…分庫:257

mod

4=1分表:257

mod

1024=257分庫分表數(shù)據(jù)庫中的數(shù)據(jù)量是不可控的,在未進(jìn)行分庫分表的情況下,隨著時間和業(yè)務(wù)的發(fā)展,庫中的表會越來越多,表中的數(shù)據(jù)量也會越來越大,數(shù)據(jù)操作,增刪改查的開銷也會越來越大;一臺服務(wù)器的資源(CPU、磁盤、內(nèi)存、IO等)是有限的,最終數(shù)據(jù)庫所能承載的數(shù)據(jù)量、數(shù)據(jù)處理能力都將遭遇瓶頸。垂直切分:將表按照功能模塊、關(guān)系密切程度劃分出來,部署到不同的庫上水平切分:把該表的數(shù)據(jù)按照某種規(guī)則進(jìn)行劃分,然后存儲到多個結(jié)構(gòu)相同的表和不同的庫上。容器、應(yīng)用、中間件及服務(wù)監(jiān)控框架核心是監(jiān)測優(yōu)化、預(yù)警和報警監(jiān)測腳本:圍繞實(shí)際監(jiān)測需求定制(ActiveMQ,Zookeeper,Redis..)數(shù)據(jù)優(yōu)化:Agent端合并和壓縮數(shù)據(jù),降低一體化監(jiān)管框架開銷規(guī)則設(shè)定:確定監(jiān)管對象,采用離線測試方法進(jìn)行規(guī)則參數(shù)配置多角色與平臺交互應(yīng)用管控:支持應(yīng)用開發(fā)、測試、集成、發(fā)布、運(yùn)行和維護(hù)多租戶:客戶-租戶-用戶三層,要求租戶資源隔離,用戶共享租戶資源,定制用戶可訪問的視圖樣式平臺與民生CMDB系統(tǒng)的同步化CMDB容器鏡像服務(wù)器集群中間件應(yīng)用配置信息同步部署架構(gòu)-物理視圖初始規(guī)模約100臺服務(wù)器數(shù)千個容器網(wǎng)絡(luò)冗余策略Docker穩(wěn)定性測試4臺測試服務(wù)器配置:CPU:64核內(nèi)存:128G測試環(huán)境:IP:197.3.84.237-240Docker主機(jī)Swarm集群管理服務(wù)器鏡像倉庫服務(wù)器軟件環(huán)境:CentOS-7.1Docker1.8.1Swarm-0.4Registry-0.9.18周測試對象:Devops平臺DockerSwarmRegistryRedisMysqlZabbixNginx測試方法:一臺物理機(jī)一個或多個docker遷移業(yè)務(wù)系統(tǒng)模擬真實(shí)環(huán)境經(jīng)過8周模擬真實(shí)環(huán)境持續(xù)穩(wěn)定測試穩(wěn)定性與物理服務(wù)器無差別,資源利用率提高80%改造效果-性能測試倉庫負(fù)載CPU壓力內(nèi)存壓力磁盤IO性能網(wǎng)絡(luò)性能Push鏡像到倉庫中,平均上傳速度達(dá)到20~30Mbps100并發(fā)場景,Apache的每秒處理請求為26左右CPU和內(nèi)存負(fù)載無明顯變化虛擬機(jī)網(wǎng)卡的傳輸速度達(dá)到78MBps容器未出現(xiàn)網(wǎng)絡(luò)延時情況容器內(nèi)存使用率接近容器使用限制時,不影響容器中應(yīng)用的訪問性能單個容器的io性能和docker主機(jī)的io性能無明顯差別隨機(jī)讀/順序讀/重讀的性能在docker主機(jī)中和在容器中幾乎沒有差別性能提升6倍通過部署DevOps云平臺,與原架構(gòu)相比,目錄項(xiàng)目背景與目標(biāo)資源管理與調(diào)度應(yīng)用改造和平臺化21平臺部署效果總結(jié)43平臺部署效果總結(jié)根據(jù)民生銀行的快速業(yè)務(wù)發(fā)展?fàn)顩r,實(shí)施DevOps管理系統(tǒng),能夠有效的解決應(yīng)用自動化部署、運(yùn)行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論