民生銀行:云環境下的網絡流量采集探索與實踐

01 綜述

近兩年,邁入FinTech時代的商業銀行紛紛搶占新一輪技術革命先機,積極進行數字化轉型,加大對云計算、大數據、人工智能、區塊鏈和物聯網等新技術的研究和應用,提升科技服務能力的同時為客戶提供智能、全方位、差異化服務。數字化轉型離不開信息技術和IT架構的創新和建設,民生銀行作為具有全國影響力的股份制商業銀行,在《改革轉型信息科技實施方案暨信息科技三年規劃》的指導下,積極探索云計算技術在數據中心的落地,目前分行測試云、行業云已成功上線并穩定運行。

云計算通過云管、云平臺及虛擬化技術實現了資源的統一池化管理,支持多租戶、自服務以及資源彈性伸縮。云計算技術在帶來以上優勢的同時,也給傳統的流量采集帶來了新的挑戰。本文結合民生銀行分行測試云建設的實際情況,探索和研究云環境下的網絡流量采集實現方案。

02 網絡流量采集的價值

網絡流量采集大多利用網絡設備支持旁路流量鏡像的方式實現。通過旁路鏡像獲取原始業務流量的方式,對生產在線業務無任何影響,旁路的監控方式可實現各監控平臺的集中統一部署并釋放大量的主機資源。

從目前行業使用來看,旁路網絡流量采集是所有旁路流量監控和分析平臺的基礎,旁路網絡流量采集不僅僅具有采集功能,同時還可以對采集的流量進行分類、標記、去重、復制、脫敏、過濾等流量優化功能,實現流量資源的靈活按需供給。對于數據中心運維來說,通過建立統一的網絡流量采集平臺,結合各監控分析平臺可以極大提升運維管理水平和業務連續性管理水平。

1.  提供監控分析數據源:通過網絡流量采集獲取的網絡基礎架構上業務交互的流量,可為網絡監控、交易監控、安全監控、大數據、客戶行為分析、訪問策略需求梳理優化、各類可視化分析平臺以及成本分析、應用擴容、遷移等提供所需的數據源。

2.提供舉證溯源功能:在日常開發測試、生產運維過程中時常會因為故障已經發生,缺少歷史故障時間點的真實數據進行詳細分析和定位,互相推諉的情況時有發生。通過網絡流量采集可以實現對歷史數據進行回溯分析和故障診斷,為開發、應用、業務部門提供歷史數據支撐,徹底解決取證難、效率低,甚至互相推諉的問題。

3.解決監控數據來源不一致問題,提升應急處置效率:通過為網絡、應用監控、交易監控、安全監控等平臺提供統一的數據源,可消除原有各監控平臺存在采集信息來源不一致、信息不對稱問題,提升各類突發事件處置效率,快速定位問題,恢復業務,提高業務連續性水平。

4.提供數據合并功能:通過建立統一的網絡流量采集平臺,可以對部署同城雙中心甚至多中心的分散流量進行合并再處理,結合過濾等優化功能實現按需供給。

5.消除干擾、充分釋放主機資源:沒有網絡流量采集的情況下,基于交易或安全的監控代理需要部署在服務器上。一方面對應用的穩定性可能會帶來一定的影響,同時也需要消耗一定的主機資源。另一方面在故障分析時需要排除監控代理自身因素,給故障定位帶來了一定的干擾。而通過旁路的流量采集則可以規避此類問題。

另外,需要重點說明的時,流量采集作為旁路分析的基礎供數平臺,與生產網絡一樣,其自身的穩定性、可靠性和準確性相當重要。比如就準確性來說,流量采集原則上不允許出現任何丟包、擁塞的情況,否則會導致上層的監控分析結果出現偏差,甚至產生頻繁的監控誤告警,監控分析也就失去了其本來的價值。

基于以上原因,我行在最新的流量采集平臺建設中首次采用了先進的SPINE-LEAF架構,大量采用萬M接入、多鏈路負載均衡以及源端口流量優化機制并逐步向40G/100G過渡,以實現無丟包的流量采集和供數能力。

03 傳統網絡流量采集的方案

目前傳統的網絡環境中流量采集主要有如下四種方式:

1.  鏡像直通方式:直接通過交換機鏡像方式將采集的流量給到分析工具。優點是實現簡單、無需增加新的投入,缺點是不靈活,受交換機鏡像功能的限制在將流量給到分析工具之前無法對采集的流量進行預先的優化處理,對監控工具的性能和端口消耗過大。此種方案一般只適合于中小規模的部署情況。

2.分光器方式:將分光器串接在網絡設備之間,采用分光技術將線路上的流量復制一份出來給到采集平臺。此種方案優點是對網絡設備無影響,缺點是串接需要調整布線,設備之間串接分光器后對數據傳輸的穩定性可能帶來一定的影響。此種方案一般不作為獨立方案使用,且大多僅在局部使用,實際應用時可考慮作為鏡像方式的補充,物理網絡設備互聯流量集中的場景中可考慮采用分光器方式解決物理交換機鏡像能力不足的問題。

3.建立專門的流量采集平臺:通過成熟的硬件搭建獨立的采集平臺接收鏡像或分光器等來源流量,然后供數給各分析平臺。此方案優點是可實現跨中心、跨地域的流量聚合功能;可對流量進行優化、預處理,有效減輕分析平臺的壓力;同時具備流量復制功能,一份原始流量,多平臺復用;亦可根據各監控平臺特點和需求實現按需供給。此種方案適合于需要對流量進行優化或需給多分析平臺供數的情況,方案應用比較廣泛。

4.Netflow方式:此方案通過在網絡設備接口下啟用Netflow功能,將采集的信息走以太網絡傳遞給監控平臺。優點是可以采集到一些通過鏡像方式無法采集到的流量,如路由器上的非以太接口的流量,缺點是只能作采樣,無法采集原始流量,采樣比過大時對網絡設備穩定性和性能影響較大,部署時需詳細評估。此方式大多用于骨干或外聯專線作基本的流量成分分析和安全分析,通常作為整體流量監控的輔助手段。

04 云環境下流量采集面臨的挑戰

云服務在我國各行業中的占比越來越大。自2017年起,我國已有70%以上的省市先后出臺政策,推動當地企業加速上云。思科預計2020年云化數據中心的東西向流量將占數據中心總流量的80%以上。企業上云后,不再大規模使用物理機部署業務,大多利用虛擬化技術對計算資源進行統一的池化管理,這時同一物理機不同虛機之間的業務交互的東西流量不再經過網絡物理交換機。傳統數據中心的流量采集方案十分成熟,但云環境下的流量采集實現面臨著諸多挑戰:

1)  虛機監控的缺失:云計算和虛擬化將網絡的邊界延伸到了物理服務器內部,同一物理機內部不同虛機之間的東西流量交互不再經過物理交換機,傳統的通過物理交換機鏡像獲取業務交互流量的方式已不能適應虛機之間流量采集,云環境中東西流量的采集需打破傳統的完全旁路無侵入的鏡像模式,將采集客戶端部署到服務器上。

2) 性能挑戰:傳統的流量采集通過在接入交換機上有選擇地鏡像(比如只鏡像關鍵業務主機交換機端口流量)將流量引給流量采集平臺,目前來看傳統數據中心交換機鏡像性能上暫時還不存在過大的壓力。但在云環境中服務器大多通過10G或25G高密接入。由于交換機鏡像只能基于接口采集所有流量,無法作過濾,在此種模式下,交換機上集中鏡像的方式必然會給網絡設備帶來性能和穩定性的影響。

3) 靜態的采集和運維方式不能適應云化環境的變化:企業上云之后,計算、存儲、網絡等物理資源被池化和虛擬化,實現集中的自動化運維,網絡人員不再需要過多關心底層計算資源與網絡資源的映射。云環境中虛機上線、下線、擴容、遷移、故障切換頻繁且均通過自動化實現,傳統的通過靜態鏡像進行流量采集的方式無法感知虛機的變化,鏡像策略更是無法隨虛機的切換實現同步部署。

05 云環境下的流量采集實踐

5.1 建設目標

從上面的描述可以看出,云環境下的流量采集重點要關注虛擬機之間東西向流量的采集以及性能問題。同時鑒于云平臺的動態性特點,云環境下的流量采集需突破現有傳統交換機鏡像的模式,實現靈活、自動化的采集和監控部署功能,以匹配云網絡的自動化運維目標,綜合考慮云環境下的流量采集需實現如下目標:

  1. 實現虛擬機之間東西向流量的采集功能
  2. 采集部署到計算節點上,采用分布式采集架構,規避通過交換機鏡像帶來的性能和穩定性問題
  3. 可動態感知云環境中虛擬機資源的變化,采集策略可隨虛擬機資源的變化進行自動調整
  4. 采集工具自身需具備過載保護機制,最小化對服務器的影響
  5. 采集工具自身具備流量優化功能
  6. 采集平臺可對采集的虛擬機流量進行監控

5.2 云環境虛機流量采集模式的選擇

云環境中虛機流量采集需將采集探針部署到計算節點上,根據計算節點上可部署采集點的位置,云環境下的虛擬機流量采集模式可分為Agent模式、虛機模式、宿主機模式三種,對比說明如下:

Agent模式:在云環境中的每一臺需采集流量的虛擬機上安裝采集軟探針(Agent代理),通過Agent代理軟件提取云環境東西向流量,分發給各分析平臺,優點是與虛擬化平臺無關,不影響虛擬交換機性能,可隨虛機遷移,可作流量過濾,缺點是需管理的Agent過多,故障時無法排除Agent自身的影響,需共用現有生產網卡吐流量,可能會對業務交互產生影響,新建虛機需同步部署Agent。

虛機模式:在云環境每臺物理宿主機上安裝統一的采集虛擬機并在采集虛擬機上部署采集軟探針,通過在虛擬交換機上鏡像虛擬網卡流量的方式將該宿主機上的流量鏡像給采集虛擬機,然后由該采集虛擬機通過專用網卡傳輸至傳統物理流量采集平臺,再分發至各監控分析平臺。優點是軟交換機旁路鏡像,對現有業務網卡和虛擬機無侵擾,通過一定的手段也可實現對虛機變化的感知和策略的自動遷移,缺點是采集虛擬機被動接收流量無法實現過載保護機制,可鏡像的流量大小由虛擬交換機性能決定,對虛擬交換機穩定性有一定影響,KVM環境中需由云平臺統一下發鏡像流表,管理維護復雜,特別是宿主機故障時,采集虛機等同于業務虛機也會隨著其它虛機遷移到不同的宿主機上,此時采集策略和采集虛機如何管理維護目前來看還沒有較好的解決方案。

宿主機模式:通過在云環境每臺物理宿主機上部署獨立采集軟探針,以進程模式工作在宿主機上,并將采集的流量傳輸至傳統物理流量采集平臺。優點是完全旁路的機制,對虛機、業務網卡、虛機交換機均無侵擾,采集方式簡單,管理方便,無需維護獨立虛機,輕量級且采集軟探針可實現過載保護。由于是作為宿主機上的進程,可對宿主機和虛機資源、性能等進行監控,指導鏡像策略的部署。缺點是需消耗一定宿主機的資源,重點需關注性能影響,另外可能存在某些虛機化平臺不支持宿主機上部署采集軟件探針的情況。

綜上所述,宿主機模式的天生完全旁路的方式優勢明顯,風險較低,且與我行使用的基于OpenStack的云平臺和KVM虛擬平臺完全匹配,因此我行在云環境中選擇了宿主機上部署軟采集探針的方式實現云環境中虛機流量的采集。

5.3 云環境下的流量采集平臺架構

如下圖所示,云環境下的流量采集平臺采用了兩級架構,包括云網絡流量采集控制器和云網絡流量采集客戶端。

云網絡流量采集控制器:通過API與Openstack云平臺無縫對接,自動學習云平臺內主機、項目、虛擬機、網絡等資源以及網絡和資源的映射關系,監控云環境中各類資源間網絡連接和流量。云網絡流量采集控制器對流量采集策略、云網絡流量采集客戶端進行統一管理??刂破骺勺詣痈兄凭W絡中的虛機變化,當有虛機上線、下線、遷移時,采集策略自動進行匹配,無需人工干預。

云網絡流量采集客戶端:部署在每一個計算節點上負責接收控制器下發的采集策略,實現對虛機流量采集、流量按需分發、復制、切片、去重等優化功能,并通過獨立的主機網卡與現有的流量采集平臺建立VxLAN隧道,將流量吐給現有流量采集平臺(也可以吐給網絡交換機),實現云網絡采集流量和傳統網絡采集流量的統一管理。

5.4 云環境下的流量采集實踐效果

經過優化,云環境下的流量采集平臺已在我行分行測試云中成功試點,并與我行現有流量采集平臺實現了無縫對接,目前運行穩定。云環境下的流量采集平臺的成功上線,擴展了現有流量采集平臺的功能,解決了云環境中流量采集的各類痛點問題。

  • 云平臺資源自動發現和關聯

通過API與Openstack云平臺無縫對接,控制器可以發現云平臺中的各類資源,包括區域、用戶、VPC、子網、路由器、虛擬機等,并直觀地展現給網絡管理員。

結合采集器的監控和采集功能,可以基于各個維度可視化展現當前云環境中的資源使用和流量監控情況,方便運維人員隨時掌握云環境中的流量采集和資源部署情況。如可基于VPC建立網段、虛機及IP的映射關系,并實時監控虛機的監控部署情況及流量。

  • 靈活的采集策略

采集客戶端是運行于計算節點的用戶態進程,資源占用低并且具備完整的流量預處理能力。采集客戶端部署實施時無需對現有系統進行改造,對生產系統的依賴和影響降到了最低,在大規模虛擬網絡環境中,采集器滿足部署零依賴、策略零干擾、資源消耗低等特性。

采集客戶端通過從控制器獲取采集規則,實現精細采集和引流控制。采集客戶端采集規則可以基于IP、IP段、虛機、子網、端口等多角度進行采集,另外也可以自定義資源組進行采集。

采集客戶端可以鏡像全部網絡流量或根據具體需求只截取網絡包頭數據轉發給后端系統進行分析處理。另外采集客戶端還提供多點差異化分發功能,如可對于同一份采集的流量根據不同的需求匹配不同的優化策略(如過濾、切包、去重等)分發給不同的分析工具。采集客戶端和流量采集平臺(或交換機)之間自動建立VxLAN隧道,并將指定流量通過VxLAN隧道轉發給流量采集平臺或目標分析工具。

  • 過載保護機制

基于宿主機部署采集客戶端的方式雖然部署簡單,對業務虛機、虛機交換機無侵擾,但相對傳統的交換機鏡像完全旁路的模式,其部署在宿主機上,自身的穩定性仍可能對宿主機產生一定的影響。為了解決此問題,我行針對采集器基于CPU/內存資源占用及采集性能單獨設置了過載保護機制,當超過閥值后采集器將自動停止采集以規避對宿主機的影響,過載保護機制的設置既可以基于單個采集客戶端區別化配置,也可以基于所有采集器統一設置。

06 展望

云環境下的流量采集平臺雖已解決了當前云環境中流量采集的諸多問題,但目前我行云環境下的流量采集還處于初級階段,平臺功能還需要結合實際運維需求不斷完善,比如多云支持、性能提升、平臺自身監控功能等。

隨著容器、微隔離、分布式負載均衡在云環境中的推廣和應用,必然會給云環境中的流量采集帶來新的挑戰,網絡流量采集平臺需要緊跟新技術的發展路線,不斷擴展其功能。目前我行已實現云環境和虛擬化平臺下的流量采集功能,后續我行將積極探索容器平臺、微隔離、分布式負載均衡等環境下的流量采集方案,不斷優化現有平臺功能,滿足新環境下的業務連續性和運維要求。

文章轉載自公眾號 云技術,作者 民生運維

發表評論