![股份制銀行容器云平臺建設實踐經(jīng)驗_第1頁](http://file4.renrendoc.com/view/b4ddc8e0c6f79d3c319deced6fff99a9/b4ddc8e0c6f79d3c319deced6fff99a91.gif)
![股份制銀行容器云平臺建設實踐經(jīng)驗_第2頁](http://file4.renrendoc.com/view/b4ddc8e0c6f79d3c319deced6fff99a9/b4ddc8e0c6f79d3c319deced6fff99a92.gif)
![股份制銀行容器云平臺建設實踐經(jīng)驗_第3頁](http://file4.renrendoc.com/view/b4ddc8e0c6f79d3c319deced6fff99a9/b4ddc8e0c6f79d3c319deced6fff99a93.gif)
![股份制銀行容器云平臺建設實踐經(jīng)驗_第4頁](http://file4.renrendoc.com/view/b4ddc8e0c6f79d3c319deced6fff99a9/b4ddc8e0c6f79d3c319deced6fff99a94.gif)
![股份制銀行容器云平臺建設實踐經(jīng)驗_第5頁](http://file4.renrendoc.com/view/b4ddc8e0c6f79d3c319deced6fff99a9/b4ddc8e0c6f79d3c319deced6fff99a95.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 某股份制銀行容器云平臺建設實踐經(jīng)驗 【作者】張立,現(xiàn)就職于某銀行信息科技部系統(tǒng)管理中心,容器云平臺技術(shù)負責人,負責行內(nèi)容器云平臺建設以及應用容器化改造規(guī)范制定。一、容器云平臺建設行業(yè)背景當前銀行業(yè)普遍的共識之一是要以金融科技為依托,通過科技創(chuàng)新引領(lǐng)銀行的轉(zhuǎn)型升級。云計算、大數(shù)據(jù)、人工智能成為各銀行科技部門重點的投資建設領(lǐng)域。云計算領(lǐng)域的建設主要集中在IaaS和PaaS,目標是降低數(shù)據(jù)中心成本的同時,為上層應用的創(chuàng)新、快速迭代和穩(wěn)定運行提供有效支撐。傳統(tǒng)的IaaS調(diào)度的是虛擬機或者物理機,粒度較大,相對傳統(tǒng)的虛擬化技術(shù),在資源使用率、靈活性和彈性方面提升度并不高。依托傳統(tǒng)IaaS建設而成的Pa
2、aS,也會面臨同樣的問題。而容器技術(shù)恰好可以比較好的解決這些問題,并且在微服務、DevOps、分布式等方面天生具備優(yōu)勢,因此成為數(shù)據(jù)中心新一代云基礎(chǔ)架構(gòu)的選擇。二、建設容器云平臺的意義1.讓應用真正意義上彈性擴縮容傳統(tǒng)方式下應用和基礎(chǔ)環(huán)境資源(計算、網(wǎng)絡、存儲、監(jiān)控等) 是緊耦合的關(guān)系,應用的擴容、縮容意味著基礎(chǔ)環(huán)境資源的擴容和縮容。基礎(chǔ)環(huán)境的擴、縮容耗時會非常長,因為涉及到非常多需要人工介入的環(huán)境,而且都是串行的,比如創(chuàng)建主機、分配存儲、網(wǎng)絡接入、操作系統(tǒng)安裝、網(wǎng)絡訪問關(guān)系開通、應用部署、監(jiān)控審計部署、接入負載均衡等等。整個流程走下來通常需要數(shù)天到數(shù)周的時間。后來我們通過IaaS、虛擬化、自
3、動化工具已經(jīng)大幅度縮減了基礎(chǔ)環(huán)境資源擴容的時間,但是整個流程下來仍然需要數(shù)個小時到數(shù)天,這對于真正需要彈性的應用來說還是不夠。容器云環(huán)境下,應用和基礎(chǔ)環(huán)境資源是解耦的,應用的擴縮容不需要涉及基礎(chǔ)環(huán)境資源的擴縮容,僅僅需要修改應用部署模板文件中的副本數(shù),然后在容器云平臺執(zhí)行即可。容器云平臺會根據(jù)副本數(shù)來自動創(chuàng)建或者刪除副本,使得最終的副本數(shù)是部署模板文件中定義的副本數(shù)。整個擴容或縮容流程可以在數(shù)秒到數(shù)十秒內(nèi)完成。這樣當應用面臨突發(fā)業(yè)務量增長,需要緊急擴容的時候,就可以非常快的完成,實現(xiàn)了真正意義上的彈性擴容。2.為應用微服務化提供有力支撐應用微服務化是當前應用改造的一個重點方向,因為大家都看到了
4、微服務的好處,就是迭代效率高、資源使用率高(單一微服務可自行擴容)、單一微服務故障 對全局影響有限。但是傳統(tǒng)方式下的應用微服務化開發(fā)運營是缺乏體系支撐的,成本高昂、便捷性差。比如一個應用由20個微服務組成,每個微服務需要2個副本保持高可用,傳統(tǒng)方式下就需要申請20個負載均衡、40個虛擬機來確保隔離性,同時還要為這40個虛擬機分配相應的網(wǎng)絡、存儲,部署配套的監(jiān)控審計等,消耗了大量的資源。傳統(tǒng)方式下的這套架構(gòu)沒有彈性擴縮容能力,也缺乏自動化的部署管理工具,對運維人員來說,管理的應用從1個變?yōu)?0個,大大增加了工作量和復雜度,便利性會很差。從應用開發(fā)人員的角度看,傳統(tǒng)方式下做微服務化改造,隨著微服數(shù)
5、量的增加,服務之間依賴關(guān)系的增加,開發(fā)人員會面臨很大的挑戰(zhàn)。需要部署專門的服務注冊發(fā)現(xiàn)系統(tǒng),需要對應用層代碼做侵入實現(xiàn)服務的注冊發(fā)現(xiàn)機制,需要對應用代碼做修改以實現(xiàn)服務的探活和依賴性處理。這些服務治理方面的工作牽扯了開發(fā)人員很大的精力,使得應用人員無法將精力集中在業(yè)務開發(fā)本身上,是一種低效率的做法。容器云環(huán)境提供了一套成熟的支撐體系,可以很好的支撐應用的微服務化改造,成本低廉、便捷性好。還是以之前的應用為例,20個微服務中,僅僅對外部提供服務的微服務需要申請負載均衡,內(nèi)部微服務之間的調(diào)用通過service機制即可實現(xiàn)。如果很多微服都需要對外提供服務,也可以通過ingress將所有服務收斂到一個
6、入口上,這樣對負載均衡的需求數(shù)量就大幅度下降。容器化的微服務都是運行在一個計算機群內(nèi),可以共享計算節(jié)點,擴容、縮容都不需要申請?zhí)摂M機,資源的使用效率可以最高。容器云也為應用的部署運行提供很好的編排工具,可以實現(xiàn)應用變更的完全自動化、滾動升級、一鍵回滾。對應用開發(fā)人員來說,容器云環(huán)境可以提供比較完善的可配置化的微服治理框架,包括服務注冊發(fā)現(xiàn)、服務探活、依賴性處理等,不需要對應用代碼做侵入修改,這樣可以讓應用開發(fā)人員將更多精力集中在業(yè)務開發(fā)本身。3.讓應用實現(xiàn)自動化故障探測、隔離和恢復傳統(tǒng)方式下的應用故障判斷、隔離和恢復完全依賴人工介入,耗時很長。比如一旦出現(xiàn)某個應用節(jié)點的故障,需要運維人員人工判
7、斷是哪一個節(jié)點出了問題,然后人工將該節(jié)點從負載均衡摘除。隨后人工恢復故障節(jié)點,再掛到負載均衡下面。這就導致很長的故障窗口期,對業(yè)務連續(xù)性并不友好.容器方式下,應用的故障判別、隔離和恢復完全自動化實現(xiàn),無需人工干預。容器云環(huán)境提供一套應用服務的自主探測和處理機制,同時也會檢測每一個節(jié)點,一旦發(fā)現(xiàn)某個應用副本異常,會立即將其從service摘除,之后自動刪除故障副本,并在可用的節(jié)點上新建新的副本。當探測到新建副本已經(jīng)可以提供服務后,會自動將新建副本掛載到service下面。這種完全自動化的故障處理恢復機制為應用提供了故障自愈能力,將故障窗口減小到最小。4.大幅度提升資源使用效率在沒有虛擬機之前,我
8、們使用裸機部署應用,一個裸機部署一個應用,造成了大量的 資源閑置。后來使用虛擬機后,一個裸機上可以虛擬出多個主機,可以部署多個應用,資源使用效率得到了很大的提升。虛擬機之間可以共享CPU,但是無法共享內(nèi)存和存儲,比如一個虛擬機申請了32GB內(nèi)存和100GB存儲,這些資源只能被這個虛擬機獨占,無法和其它虛擬機共享。容器的本質(zhì)是進程,進程間是可以共享宿主機的CPU、內(nèi)存、存儲和網(wǎng)絡的,資源使用效率得到最充分的利用。當然做到這一點的前提是容器能夠確保進程運行的基本資源不被搶占,資源層面實現(xiàn)良好的隔離性。同時允許設置資源使用配額上限,避免影響其它應用進程。三、容器云平臺架構(gòu)設計1.總體架構(gòu)設計總體架構(gòu)
9、圖如下:自服務管理平臺提供8大板塊服務,都是按照支持多租戶的目標設計實現(xiàn)。其中資源申請板塊是租戶申請容器資源的入口,包含帳號申請,K8S和鏡像庫資源申請,日志接入申請。資源變更板塊是租戶進行資源變更的入口,包括K8S資源擴容和回收,以及帳號權(quán)限的修改。集群管理板塊為云平臺管理員和租戶提供集群范圍資源的管理,鏡像庫管理板塊提供鏡像庫和鏡像的管理,應用管理板塊主要為租戶提供K8S namespace內(nèi)資源的管理,模板管理板塊包含K8S資源模板和Helm模板,運維助手提供Pod歷史查詢以及集群健康檢查管理,帳號授權(quán)管理板塊為云平臺管理員提供租戶授權(quán)管理。自服務管理平臺南向通過K8S API和鏡像庫A
10、PI對接多個K8S集群和兩個鏡像庫,實現(xiàn)容器資源的統(tǒng)一納管。最右邊的是行內(nèi)的運營支撐工具體系,其中統(tǒng)一身份認證為自服務管理平臺提供租戶帳號的登陸鑒權(quán)服務,流程系統(tǒng)(即ITOMS)通過API和自服務管理平臺的資源申請板塊對接,提供統(tǒng)一的資源申請入口。CMDB和自服務管理平臺自身的CMDB交互,提供應用、容器、資源之間的關(guān)系視圖;DevOps工具鏈可以從自服務平臺獲取用戶和權(quán)限,然后通過K8S API和鏡像庫API實現(xiàn)應用的自動化流水線發(fā)布。ELK日志系統(tǒng)用于存儲容器應用的日志,集中監(jiān)控告警系統(tǒng)接收來自K8S節(jié)點和容器應用的監(jiān)控數(shù)據(jù),提供告警推送、置維護、統(tǒng)一監(jiān)控視圖的能力。2.多集群管理設計根據(jù)
11、銀行內(nèi)網(wǎng)絡安全的要求,K8S集群不能通過Overlay網(wǎng)絡跨網(wǎng)絡隔離區(qū)。因此一個K8S集群只能限定在一個網(wǎng)絡隔離區(qū)內(nèi)。目前生產(chǎn)和災備數(shù)據(jù)中心的每個網(wǎng)絡隔離區(qū)部署一套或多套K8S集群,所有集群統(tǒng)一由自服務管理平臺納管。同一網(wǎng)絡隔離區(qū)內(nèi),生產(chǎn)和災備數(shù)據(jù)中心各部署K8S集群,為應用提供雙活容災部署架構(gòu)支撐。生產(chǎn)和災備數(shù)據(jù)中心分別部署一套鏡像庫系統(tǒng),為各自數(shù)據(jù)中心內(nèi)的K8S集群提供鏡像服務。允許租戶跨集群管理自己的容器資源。整體示意圖如下:3.多租戶管理設計通過K8S命名空間和鏡像庫命名空間實現(xiàn)租戶資源隔離,一個租戶對應于一個或者多個命名空間。云平臺管理員可以通過RBAC機制為租戶授予相應命名空間的管
12、理權(quán)限。租戶對授權(quán)命名空間內(nèi)的資源具有管理員權(quán)限,但是無法訪問非授權(quán)命名空間。對于一個租戶來說,管理員可以授予他一個K8S集群內(nèi)一個或多個命名空間的管理權(quán)限,也可以授予他多個K8S集群內(nèi)命名空間的管理權(quán)限。整體示意圖如下:4.專用和共享計算節(jié)點容器云平臺為應用提供兩種類型的K8S集群,分別是計算節(jié)點共享的K8S集群和計算節(jié)點專用的K8S集群。從資源利用率角度,首推共享計算節(jié)點的K8S集群。計算節(jié)點直接采用物理機,多個應用共享計算節(jié)點組成的資源池,資源的彈性和使用效率最高。如應用需要調(diào)整缺省Linux Kernel參數(shù),或者有特殊的敏感的出網(wǎng)絡訪問關(guān)系,或者有很高的安全隔離性要求,可以考慮采用計
13、算節(jié)點專用的K8S集群。專用的計算節(jié)點考慮資源利用率,主要以虛擬機為主。特殊的應用場景(如GPU)可以使用物理機。通過給計算節(jié)點打應用標簽的方式,然后在應用部署模板里指定nodeSelector的方式,實現(xiàn)計算節(jié)點的獨占。5.存儲后端實現(xiàn)使用Ceph分布式存儲作為容器云平臺的后端存儲,為應用提供持久化的數(shù)據(jù)存儲能力。在生產(chǎn)和災備數(shù)據(jù)中心各部署一個Ceph集群,為所屬數(shù)據(jù)中心的K8S集群提供持久化存儲后端服務。每個K8S集群創(chuàng)建2個Storage Class。rbd-class提供ReadWriteOnce類型PVC,后臺對接的是Ceph RBD;cephfs-class提供ReadWriteM
14、any類型PVC,后臺對接的是CephFS。租戶可動態(tài)申請PVC,僅有創(chuàng)建權(quán)限,沒有刪除權(quán)限。整體示意圖如下:6.應用監(jiān)控告警每一個計算節(jié)點上會部署一個監(jiān)控Agent。應用如需監(jiān)控,需要在應用部署模板的環(huán)境變量里聲明監(jiān)控類型。應用容器啟動后,監(jiān)控Agent會通過容器接口獲得容器監(jiān)控類型環(huán)境變量,并自動匹配監(jiān)控模板(腳本)。監(jiān)控Agent將監(jiān)控數(shù)據(jù)發(fā)送到監(jiān)控服務器。監(jiān)控服務器根據(jù)觸發(fā)條件判斷是否發(fā)送告警信息到集中告警平臺。在集中告警平臺上為每個應用創(chuàng)建虛擬節(jié)點,和IP解耦。告警平臺收到告警信息后,根據(jù)告警數(shù)據(jù)包含的應用名稱字段自動匹配到虛擬節(jié)點。虛節(jié)點上可設置維護狀態(tài),應用變更的時候為了避免告警
15、可以設置虛節(jié)點為維護狀態(tài),變更完成后可以解除維護狀態(tài)。示意圖如下:目前可監(jiān)控的應用指標如下:1.應用容器狀態(tài)。如果容器狀態(tài)異常會觸發(fā)告警;2.應用Deployment副本數(shù),如果副本數(shù)和期望的不一致,會觸發(fā)告警;3.應用Statefulset副本數(shù), 如果副本數(shù)和期望的不一致,會觸發(fā)告警;4.應用Pod狀態(tài),如異常,會觸發(fā)告警;5.應用容器內(nèi)部文件系統(tǒng)使用率,如超過80%,會觸發(fā)告警;7.應用日志處理每個計算節(jié)點部署一個日志收集代理,該代理面向節(jié)點上所有的容器。如應用容器需要監(jiān)控,就需要在Pod yaml里通過環(huán)境變量聲明日志路徑和kafka topic。容器啟動后,日志代理會根據(jù)容器環(huán)境變量
16、定義的日志路徑自動匹配對應的宿主機日志文件路徑,并將日志抓取后發(fā)送到kafka topic。當前的日志代理以換行符作為分割符,如應用的一條日志里有多行紀錄,這條日志會被切分成多個消息來處理,在Kibana上也會呈現(xiàn)多條記錄。為了適配這類一條日志有多行紀錄的應用,我們也正在設計開發(fā)一種可定制化分隔符的日志引擎,可以允許應用在Pod的yaml里聲明日志分隔符。8.應用雙活容災部署架構(gòu)生產(chǎn)、災備中心每個網(wǎng)絡區(qū)都建設一個K8S集群,都有各自獨立的鏡像庫和后端分布式存儲。應用雙活要求應用同時運行在生產(chǎn)、災備中心的兩個K8S集群上,前端可以通過負載均衡引流。任意一個數(shù)據(jù)中心的集群故障不影響應用的可用性。示
17、意圖如下:三、應用容器化最佳實踐總結(jié)1.鏡像和配置分離原則:制作應用鏡像時,需要將配置分離出來,這樣做可以讓應用鏡像在不同環(huán)境(比如測試和生產(chǎn))都一致,變得只是配置信息。配置信息可通過環(huán)境變量或者加載卷的方式注入容器。在K8S環(huán)境下,除了環(huán)境變量注入,還可以通過ConfigMap和Serect方式注入配置。ConfigMap和Secret都支持通過卷加載的方式掛載到容器。Secret通常用于保存敏感信息(如密碼).2.微服務原則:容器環(huán)境天生要求微服務化,一個容器只提供一種服務。每個容器原則上只對外提供一個服務監(jiān)聽端口。3.使用第三方基礎(chǔ)鏡像制作應用鏡像的時候必須包含必要的系統(tǒng)troulesh
18、ooting工具,至少包括ps、netstat、ping、curl。否則出現(xiàn)問題的時候會妨礙排錯。4.支持通過NodePort和Ingress對外發(fā)布服務。NodePort適用于對外服務較少場景;Ingress適用于對外服務較多,需要統(tǒng)一入口場景。Ingress需要作為應用的的一部分部署在應用命名空間。使用Ingress只需要對外通過一個NodePort暴露服務。5.NodePort需要向容器平臺管理員申請。請僅僅使用分配給項目組的NodePort,禁止使用未經(jīng)申請的NodePort,否則容易其它項目組產(chǎn)生端口沖突 .6.如使用StatefulSet部署有狀態(tài)應用,副本數(shù)必須大于等于2,并且在
19、驗證了單個Pod失效不影響服務的前提下,才可以生產(chǎn)上線。原因是StatefulSet的Pod在宿主機故障情況下沒有自動HA能力,需要人為干預殺死Pod才能觸發(fā)重建。7.Deployment/StatefulSet/Pod的yaml里,必須配置liveness/readiness探測,并通過測試才能生產(chǎn)上線。這對于應用的可用性非常重要,請一定重視 。8.Deployment/StatefulSet/Pod的yaml里,必須對Container的resources做設置。因為生產(chǎn)環(huán)境出于考慮極端情況(一半節(jié)點不可用)下的應用高可用。對于獨占計算節(jié)點的應用,要求應用namespace下所有Pod的r
20、equest總合不能超過分配總資源(CPU,內(nèi)存)的50%-1,單個Pod的limit不能超過單個節(jié)點資源的60%。9.對于可以和其它應用共享計算節(jié)點(通常是物理節(jié)點)的應用,namespace下所有Pod的request總合和limites總合不能超過分配的總資源(比如分配了16C/64G,那么request總合/limites總合不能超過16C/64G)。10.對于使用獨占宿主機節(jié)點的應用,Deployment/StatefulSet/Pod的yaml里,必須配置NodeSelector。生產(chǎn)環(huán)境NodeSelector的value值是項目的英文名,測試環(huán)境統(tǒng)一是testapp。對于和其它
21、應用共享宿主機節(jié)點的應用,可以不配置NodeSelector。11.對于重要系統(tǒng),Deployment/StatefulSet里,副本(replica)數(shù)必須大于2(包含2),禁止為1。這樣才能確保服務在單個副本故障的情況下依然可用。對于可靠性要求不高的系統(tǒng),在資源充足的情況下盡量也保持副本數(shù)大于等于2。如資源受限,并且上線前明確說明對可靠性要求不高,可以允許副本數(shù)為1 。12.Pod產(chǎn)生的日志,推薦通過直接寫入stdout并配置Kafka Topic的方式,轉(zhuǎn)發(fā)到ELK。如果一定要持久化保存,有如下三種方案,但是都要求首先應用層面要做好日志輪循(rotation),控制好總量大小,因為PVC
22、和HostPath用的宿主機目錄通常是無法擴容的。目前僅寫入stdout、HostPath的日志,才可以被日志引擎處理發(fā)往ELK,HostPath需要掛載到日志目錄。HostPath方式受限使用,需要一事一議。寫入PVC或者直接寫入容器自身的日志將不能被日志引擎抓取。a)使用StatefulSet方式部署Pod,需要在yaml里聲明PVC容量和StorageClass(名字為rbd-class,提供ReadWriteOnce類型的PV),并且通過將日志同時寫入stdout,且在yaml里聲明stdout日志路徑和Kafka Topic的方式,將日志發(fā)往ELK。一旦使用PVC,Pod的可用性就會
23、和PVC的可用性關(guān)聯(lián)起來。對于可用性要求很高的系統(tǒng)(A/B類系統(tǒng)),如果使用PVC,前提條件是應用實現(xiàn)了災備雙活部署。b)使用Deployment方式部署Pod,需要在yaml里聲明共享型(ReadWriteMany類型)PVC的名字,并且通過將日志同時寫入stdout,且在yaml里聲明stdout日志路徑和Kafka Topic的方式,將日志發(fā)往ELK。在多副本情況下,需要應用做好日志文件區(qū)分,避免多副本寫同一個日志文件。一旦使用PVC,Pod的可用性就會和PVC的可用性關(guān)聯(lián)起來。對于可用性要求很高的系統(tǒng)(A/B類系統(tǒng)),如果使用PVC,前提條件是應用實現(xiàn)了災備雙活部署。c)使用HostP
24、ath,將日志寫入宿主機的某個目錄。這需要應用在多副本的情況下,能夠做好日志區(qū)分,將所有Pod的日志放到同一個父目錄下。如需使用此種方式,請?zhí)崆奥?lián)系容器平臺管理員創(chuàng)建目錄。即使使用HostPath存放日志,可直接通過在yaml里聲明日志文件路徑和Kafka Topic的方式,將日志發(fā)往ELK。使用HostPath存放日志主要的問題是Pod一旦遷移到新的節(jié)點,日志寫入也會遷移到新的節(jié)點,舊節(jié)點上的日志文件寫入會中斷。HostPath僅僅適用于專用計算節(jié)點場景,并且需要一事一議。13.如果兩個服務之間有依賴關(guān)系,必須在上線前解決啟動順序問題??梢钥紤]使用K8S的initcontainer機制做探測
25、。14.對于重要系統(tǒng),原則上要求應用層面必須實現(xiàn)災備雙活部署,也即應用同時運行在生產(chǎn)、災備的兩個K8S集群上,前端可通過負載均衡引流。任意一個集群的故障不影響應用的可用性15.生產(chǎn)上線前,請確保在測試環(huán)境完成應用HA測試驗證,具體的要求是:a) 殺死任意服務中的單個Pod不影響整體業(yè)務b) 殺死任意服務中的所有Pod,待Pod重啟完成后,整體業(yè)務服務不受影響c) 節(jié)點故障不影響整體業(yè)務16. 盡可能通過配置prestop或者處理SIGTERM信號,來實現(xiàn)應用容器的優(yōu)雅停止。缺省情況下,沒有配置優(yōu)雅停止的話,K8S會在grace-period時間(缺省30秒,可在Pod Yaml里調(diào)整)到期后,
26、通過SIGKILL殺死Pod內(nèi)進程。四、應用容器化改造案例(某支付類系統(tǒng))1.改造背景支付類系統(tǒng)作為銀行的核心系統(tǒng)之一,為了保證可用性和性能,之前都是運行在小型機上,運行成本高昂、可擴展性較差。為了解決這些問題,支付類系統(tǒng)需要進行分布式改造,把應用程序從小型機遷移到X86 PC服務器上,導致服務器的規(guī)模從幾臺擴展為幾十臺,使得部署環(huán)節(jié)更加復雜、容易出錯。因此希望利用容器平臺提供的服務注冊發(fā)現(xiàn)、動態(tài)伸縮以及快速故障檢測恢復等能力,降低分布式系統(tǒng)的部署和管理難度。2.技術(shù)實現(xiàn)如下是某支付類系統(tǒng)容器化后的部署架構(gòu),該系統(tǒng)的后端采用容器化方式部署運行。后端也根據(jù)微服務的方式,從一個大模塊拆分成幾個微服務模塊,更便于分布式的部署。行內(nèi)現(xiàn)有的支付類系統(tǒng)大多是有狀態(tài)的,因為要生成和節(jié)點相關(guān)的交易流水號。容器化改造時,為了盡可能不影響現(xiàn)有業(yè)務邏輯,也需要維持這種有狀態(tài)的方式??梢岳肒8S提供的StatefulSet實現(xiàn)有狀態(tài)的部署,每個Pod會有固定的名字,比如payapp-01、payapp-02。這樣可以根據(jù)Pod名字中的索引(01、02等)自動生成交易流水號。由于現(xiàn)有前置應用和后端應用之間是長連接,只能采用一個Pod一個Service的方式提供服務。每一個Po
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 未來商業(yè)空間設計趨勢與挑戰(zhàn)應對
- 國慶節(jié)中秋快樂活動方案
- 16《朱德扁擔》第二課時 說課稿-2024-2025學年語文二年級上冊統(tǒng)編版
- Unit 2 Healthy Lifestyle Reading and Thinking 說課稿-2023-2024學年高二英語人教版(2019)選擇性必修第三冊
- Module4 Unit1 It's red!(說課稿)-2024-2025學年外研版(一起)英語一年級上冊
- Unit 2 Different families Lesson 6(說課稿)-2024-2025學年人教PEP版(2024)英語三年級上冊
- 1《天地人》說課稿-2024-2025學年語文一年級上冊統(tǒng)編版
- 2024-2025學年高中信息技術(shù) 會考知識點說課稿
- 2024年六年級品社下冊《站在國際舞臺上》說課稿 遼師大版001
- 6 推動社會發(fā)展的印刷術(shù)(說課稿)-2024-2025學年六年級上冊科學教科版(2017版)
- 2024年常德職業(yè)技術(shù)學院單招職業(yè)適應性測試題庫完整
- 天津市河東區(qū)2023-2024學年九年級上學期期末數(shù)學試題
- 工程防滲漏培訓課件
- 黑龍江省哈爾濱市2024年數(shù)學八年級下冊期末經(jīng)典試題含解析
- 克羅恩病的外科治療
- 牛津3000核心詞匯表注釋加音標1-4 完整版
- 高中英語以讀促寫教學策略與實踐研究課件
- 金屬表面處理中的冷噴涂技術(shù)
- 河北省石家莊市2023-2024學年高一上學期期末教學質(zhì)量檢測化學試題(解析版)
- 黑龍江省齊齊哈爾市2023-2024學年高一上學期1月期末英語試題(含答案解析)
- 綜合素質(zhì)能力提升培訓
評論
0/150
提交評論