JFrog助力民生銀行打造企業(yè)級單一可信源
在開發(fā)方面,由于我行開發(fā)語言種類較多,不同的語言需要不同的私服,不便于管理維護和安全掃描;在投產(chǎn)方面,SVN+FTP傳遞制品的方式已經(jīng)無法滿足上云的應用,在多種產(chǎn)品的選型中,我們選取了JFROG-Artifactory作為民生銀行統(tǒng)一制品倉庫,來管理、存儲、分發(fā)全行級的制品。經(jīng)過一年多的適配,制品倉庫已經(jīng)與我行DEVOPS平臺(pset+eva)、工單流程平臺、容器平臺、CMDB等關鍵系統(tǒng)絲滑對接。我們建設的初衷是,規(guī)范民生銀行制品投產(chǎn)流程,提高制品質量,加速制品投產(chǎn)效率。我們從SVN+FTP切換到制品倉庫的理念是,把更多的工作做到DEVOPS平臺上,盡可能對用戶無感,減輕科技人員負擔。
民生銀行制品倉庫的應用
支持全開發(fā)語言依賴
全行級制品管理
適配行內系統(tǒng)
接下來建設計劃
一、支持全開發(fā)語言依賴
1.1 統(tǒng)一私服
由于開發(fā)語言種類多,各項目組根據(jù)情況搭建自己的私服。這樣不便于依賴的管理和安全掃描。而且許多公網(wǎng)的依賴源,各個私服自己代理,這樣會造成很多不易排查的問題。
以maven為例,部分項目組在自己私服上傳了jar包而沒有上傳pom文件,私服默認根據(jù)gav創(chuàng)建了一個沒有依賴的pom文件。這樣各項目組在本地自己構建的時候沒問題,如果在pset集中構建,有可能先構建的是錯誤的pom文件的項目,后續(xù)也有這個依賴的項目由于拉不到傳遞依賴就有可能會構建失敗。
制品倉庫對公網(wǎng)的主流倉庫進行了代理,并且將公網(wǎng)倉庫作為優(yōu)先的依賴源,這樣可以避免因為公網(wǎng)依賴導致的構建問題。
并且我們提供了一套用于上傳的公共倉庫,解決了公共依賴上傳重復,維護混亂的問題。
1.2 權限管理
各種私服大多數(shù)是對單個用戶進行授權,權限關系不好維護。
因為制品倉庫在身份認證和準入管理方面有user,group和permission三種資源,我們在開發(fā)環(huán)境能夠更加方便的從pset同步權限。我們編寫代碼并做成每日定時任務,從pset同步用戶和權限。pset每個模塊都有只讀,編輯和管理員三種權限,在制品倉庫中也根據(jù)模塊創(chuàng)建三個group分配同步pset三種權限中的用戶;然后為每個模塊創(chuàng)建permission將對應的group和需要操作的倉庫進行關聯(lián),這樣就可以將pset對應模塊對應權限的用戶與制品倉庫的訪問權限綁定上,無需每個用戶單獨配置權限。用戶與模塊,模塊與倉庫的關系非常清晰,易于管理。生產(chǎn)環(huán)境從cmdb也采用相同的方式進行權限同步和維護,同時也實現(xiàn)了各個模塊之間權限的隔離。
1.3 倉庫管理
制品倉庫分local倉庫,remote倉庫和virtual倉庫。由于local倉庫的可以上傳的特性,我們將其作為行內公共包和項目組私有包的上傳倉庫。對于項目組之前自己搭的私庫中的文件,也可以使用插件將文件同步到自己的私庫中,所以用戶可以很方便的切換到制品倉庫。
remote倉庫可以代理其他遠端的倉庫,我們用來代理之前行內的公共倉庫和公網(wǎng)的一些公共倉庫。如果用戶發(fā)現(xiàn)自己依賴的公網(wǎng)包在現(xiàn)代理的公網(wǎng)倉庫中沒有的情況下,可以跟我們反饋,我們根據(jù)情況申請代理,代理對應的公網(wǎng)倉庫。
virtual倉庫里面可以維護local,remote和virtual三種類型的倉庫。以maven倉庫為例,其實公共倉庫,包括之前行內的公共倉庫和代理公網(wǎng)的公共倉庫有將近三十個倉庫,我們將其整合成三個虛擬倉庫作為公共倉庫供用戶使用,后續(xù)我們調整倉庫或者新增倉庫,對于用戶都是不受影響的,這就解決了用戶老是修改依賴倉庫配置的問題。為用戶創(chuàng)建的倉庫有release和snapshot兩個虛擬倉庫,release和snapshot兩個local倉庫,并在release虛擬倉庫中添加了release的local倉庫以及兩個公共的release虛擬倉庫,在snapshot虛擬倉庫中添加了snapshot的local倉庫和公共的snapshot虛擬倉庫。用戶在配置上傳和下載倉庫的時候只需要配置他們模塊的兩個虛擬倉庫就可以滿足上傳需求,能夠同時下載到自己項目的包和公共倉庫的包。
1.4 高可用
開發(fā)環(huán)境采用的是雙節(jié)點高可用,如果其中一個節(jié)點異常,流量可以自動分配到另外一個節(jié)點,提供服務。
生產(chǎn)主從高可用F5架構,正常馬坡集群向外提供服務,在馬坡集群異常的情況,F(xiàn)5可以將流量切換到鵬博士集群繼續(xù)提供服務。由于開發(fā)環(huán)境投產(chǎn)文件是向馬坡和鵬博士兩個集群雙推的,來確雙數(shù)據(jù)中心一致。
二、全行級制品管理
2.1 投產(chǎn)文件按照標準目錄格式進行存放管理
標準目錄結構如下:
-模塊倉庫
-版本名稱
-服務單元名稱(如果包含中文轉成拼音小寫)
-文件分類
-文件名稱
文件分類分為5種類型,作用分別如下:
artifact 存儲鏡像、tar、jar、war等二進制文件
config 存儲配置文件
sql 存儲sql文件
yaml 存儲yaml等部署文件
other 存儲其他類型的文件
2.2 為存儲的文件添加元數(shù)據(jù)
制品倉庫支持對存儲的文件添加元數(shù)據(jù),現(xiàn)在已經(jīng)把jira號作為元數(shù)據(jù)添加到投產(chǎn)文件上面,后續(xù)還要打測試相關的質量數(shù)據(jù),來做質量門禁。
2.3 開源軟件黑名單
在開發(fā)、測試、安全掃描、生產(chǎn)運營等過程中,一旦發(fā)現(xiàn)某個開源軟件及相關版本有安全、嚴重性能等問題,即可申請將其加入黑名單。
加入黑名單的申請,由安全條線審核,是否加入黑名單。由安全條線根據(jù)CVE等安全漏洞網(wǎng)站發(fā)布的漏洞信息,定期(如半年/一年)對開源軟件倉庫里的開源軟件進行安全檢查, 一旦發(fā)現(xiàn)問題,立即加入黑名單。
一旦加入黑名單,立即從開源軟件倉庫移除,并通知所有使用的項目組,按期整改。
三、適配行內系統(tǒng)
3.1 與pset對接
pset(軟件工程支撐平臺),負責軟件需求到軟件交付的全生命周期管理。制品倉庫通過與pset集成,來實現(xiàn)對上層用戶透明,用戶只需要少量配置,即可從DTR、SVN、FTP切換到制品倉庫,通過與pset協(xié)定,使用不同成熟度的倉庫,并按照規(guī)范存放制品。
3.2 與itoms對接
itoms(IT運維管理系統(tǒng)),負責數(shù)據(jù)中心所有變更流程。制品分發(fā)到生產(chǎn)環(huán)境必須與流程相關聯(lián)。通過與itoms工單系統(tǒng)對接,實現(xiàn)了工單審批通過,同步傳輸制品到生產(chǎn)環(huán)境。
3.3 與eva對接
eva(伊娃自動化運維平臺),負責數(shù)據(jù)中心所有調度、發(fā)布任務。在制品存放路徑標準化的基礎上,與eva實現(xiàn)了容器應用一鍵發(fā)布,運維人員只需選擇發(fā)布的版本號,即可關聯(lián)出所有投產(chǎn)制品和發(fā)布流程。
四、接下來建設計劃
4.1 帶寬擴容
計劃對帶寬進行擴容,以增加制品倉庫的傳輸速度和響應時間。
4.2 支持總行以外的機構部門
目前主要是總行的項目使用制品倉庫存儲構建介質和流轉生產(chǎn)介質,后續(xù)總行以外的信用卡中心和分行也將使用總行的制品倉庫進行投產(chǎn)。
4.3 版本升級
(1) peer-to-peer:
在k8s集群的機器上面安裝插件,插件會收集鏡像的下載信息,當集群中的部分機器因為意外故障重啟之后需要重新下載鏡像的時候,優(yōu)先從集群中的其他有該鏡像的機器進行下載,從而有效減輕,當數(shù)據(jù)中心級災難時,幾千上萬個容器節(jié)點同時從制品倉庫下載鏡像爆發(fā)式的壓力。
(2) edge:
edge相當于是只有下載功能的Artifactory,由于edge成本低和不能修改的特性,可以讓研發(fā)中心使用Artifactory,讓總行、信用卡、分行等機構使用edge,edge承擔一個分流的角色,通過研發(fā)中心Artifactory分發(fā)制品給各個數(shù)據(jù)中心edge,然后各個數(shù)據(jù)中心從本地的edge消費。
下載JFrog Artifactory企業(yè)版(免費試用):
https://www.jfrogchina.com/artifactory/free-trial/
下載JFrog Artifactory 開源版(代替 Nexus):
http://www.jfrogchina.com/open-source/
下載JFrog JCR 免費版Docker 鏡像倉庫:
https://jfrog.com/container-registry/
掃描下方添加JFrog小助手微信,可加入DevOps技術交流群。
關注“JFrog杰蛙DevOps”公眾號,了解更多國內外 DevOps 實戰(zhàn)案例
免責聲明:市場有風險,選擇需謹慎!此文僅供參考,不作買賣依據(jù)。
相關閱讀
- (2023-01-05)喜上添花癸卯歲,玉兔呈祥待新春——2023中國癸卯(兔)年喜字形金銀紀念章全國首發(fā)
- (2023-01-05)“紅牛之戰(zhàn)”最新進展,華彬紅牛經(jīng)銷商被判侵權
- (2023-01-04)浩柏國際(08431)委任汪倫為董事會主席
- (2023-01-03)御用工藝 璀璨千年·國家非遺“花絲鑲嵌”系列藏品上線十八數(shù)藏
- (2023-01-01)揚子江藥業(yè)集團2022年年終工作會議召開
- (2022-12-30)守正創(chuàng)新再獲肯定 南京云錦研究所獲頒文化產(chǎn)業(yè)示范基地
熱點推薦
- (2023-01-06)當前熱文:1月6日外匯市場行情走勢分析:歐元/美元上漲 歐洲各國通脹率差異大
- (2023-01-06)微動態(tài)丨今日六大貨幣對多空情緒分析報告(2023/1/6)
- (2023-01-06)觀天下!外匯市場行情走勢分析:美元指數(shù)越來越顯示出逆轉的跡象
- (2023-01-06)外匯市場最新行情走勢展望:澳元/美元將延續(xù)盤整
- (2023-01-06)天天觀速訊丨中信建投期貨1月6日交易策略
- (2023-01-06)最資訊丨經(jīng)濟觀察 | 中國跨境電商“加速跑” 從規(guī)模型跑量向品牌塑造轉變
最近更新
- (2023-01-06)當前熱文:1月6日外匯市場行情走勢分析:歐元/美元上漲 歐洲各國通脹率差異大
- (2023-01-06)微動態(tài)丨今日六大貨幣對多空情緒分析報告(2023/1/6)
- (2023-01-06)觀天下!外匯市場行情走勢分析:美元指數(shù)越來越顯示出逆轉的跡象
- (2023-01-06)外匯市場最新行情走勢展望:澳元/美元將延續(xù)盤整
- (2023-01-06)天天觀速訊丨中信建投期貨1月6日交易策略
- (2023-01-06)最資訊丨經(jīng)濟觀察 | 中國跨境電商“加速跑” 從規(guī)模型跑量向品牌塑造轉變
- (2023-01-06)強鏈保供守好經(jīng)濟生命線
- (2023-01-06)每日熱議!新茶飲研究報告:新茶飲線上訂單占比顯著提升
- (2023-01-06)焦點速訊:我國國產(chǎn)體外膜肺氧合治療(ECMO)產(chǎn)品獲批上市
- (2023-01-06)XM外匯:美國原油庫存增加,WTI油價自周線低位反彈,攀升至73.50美元附近
- (2023-01-06)世界熱議:嘉盛集團:美元全盤走強,紐元/美元下跌處在兩日低位0.6210附近
- (2023-01-06)環(huán)球精選!歐元區(qū)最新數(shù)據(jù)預測:歐元區(qū)12月調和CPI年率-未季調初值(%)預期值 9.7,或利好歐元
- (2023-01-06)今日外匯市場主要貨幣阻力支撐位預測(2023/1/6)
- (2023-01-06)環(huán)球即時:今日重點關注的財經(jīng)數(shù)據(jù)和事件及主要數(shù)據(jù)解讀(2023年1月6日)
- (2023-01-06)世界新動態(tài):加快油茶產(chǎn)業(yè)發(fā)展三年行動方案印發(fā)
- (2023-01-06)環(huán)球微動態(tài)丨年貨節(jié)助力市場活力持續(xù)釋放
- (2023-01-06)全球快看點丨新疆阿克蘇地區(qū)著力打造能源資源產(chǎn)業(yè)基地
- (2023-01-06)全球熱頭條丨市場監(jiān)管總局指導免稅行業(yè)健康有序發(fā)展
- (2023-01-06)開曼群島元怎樣換算英鎊?開曼群島元對美元匯率是多少?
- (2023-01-06)黎巴嫩磅對人民幣匯率怎樣?1000黎巴嫩磅是多少英鎊?
- (2023-01-06)老撾基普對人民幣匯率如何?1萬老撾基普等于多少美元?
- (2023-01-06)100泰銖等于多少人民幣?泰銖怎樣兌換馬來西亞元?
- (2023-01-06)臺幣與澳門元匯率怎樣兌換?2000臺幣等于多少人民幣?
- (2023-01-06)世界今亮點!上海技能人才工資增幅為近三年最高
- (2023-01-06)焦點速看:外匯主要貨幣對技術分析:美元、歐元、英鎊、日元、澳元(2023/1/5)
- (2023-01-06)今日最新!1月5日外匯市場行情走勢分析:由于市場懷疑美聯(lián)儲的承諾,歐元兌美元突破步履蹣跚
- (2023-01-06)世界熱資訊!1月5日外匯市場行情走勢分析:美元兌日元處于關鍵匯合區(qū),美國數(shù)據(jù)即將公布
- (2023-01-06)當前資訊!今日晚間白銀行情分析(2023年1月5日)
- (2023-01-06)1月6日重點數(shù)據(jù)和大事件前瞻