999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

可觀測性技術研究

2023-03-06 02:56:56
科技創新與應用 2023年5期
關鍵詞:系統

高 巍

(麒麟軟件有限公司,北京 100080)

Apple公司工程師Cindy Sridharan博文“監控與可觀察性”(Monitoring and Observability)首次將Observability帶入開發者的視野。對軟件而言,監控(Monitoring)與可觀測性(Observability)是2個不同的概念,監控旨在識別系統是否正常運行,可觀測性探究運行不暢的原因。

1 相關知識

1.1 監控(Monitoring)

監視和跟蹤全棧產品,包括:網絡設備、服務器、存儲、操作系統、中間件、數據庫、容器和應用的狀態,設置規則庫,制定性能指標、報警閾值,在出現問題后根據規則報警啟動處理流程。通過包括操作系統命令、SNMP、SSH、Telnet、IPM、HTTP、JMX和SMI-S等技術實現從底層基礎設施到上層應用的全棧監控,如圖1所示。

圖1 全棧監控

1.2 可觀測性(Observability)

如圖2所示,描述了對IT系統理解程度和可收集數據之間的關系,右側(Known Knowns和Known Unknowns)代表傳統監控,稱為確定性的已知和未知,例如,基礎設施監控數據(主機CPU利用率、CPU空閑率、內存負載、進程PID、TPS等指標),傳統監控圍繞這些確定的數據進行分析。

但是,復雜狀況下基礎信息是很難描述和衡量的,如圖2所示的左上角(Unknown Knowns),我們稱之為“假設”,有經驗的開發人員在設計應用時,應該對有可能出現的風險做針對性性能和功能設計。“假設”未必一定發生,但到出事的時候,設計失誤就會變成Unknown Unknowns(意外)。所以有經驗的開發人員能通過蛛絲馬跡證實自己的推測,通過不斷分析將Unknown Unknowns的范圍變小,更合理的做法是通過技術手段描繪系統更全面的狀態。近幾年發展趨勢是將系統的可觀測性放在一個更高的位置,監控只是可觀測性的一個子集。

圖2 可觀測演進

1.3 應用性能管理APM

APM(Application Performance Management)致 力于監控管理應用程序性能和功能,主要通過探針形式采集和測量應用程序端性能指標。顯然,APM這種方式會占用大量資源(網絡帶寬、算力)。在實際工作中也可使用撥測技術,撥測技術源自呼叫中心通信系統的閉環測試,暨模擬用戶的業務操作過程,獲得完成業務操作過程的性能、功能和結果數據,現在發展到可以對應用接口、業務流程等進行監測。

1.4 人工智能運維AIOps

AIOps(Artificial Intelligence for IT Operations)是指通過人工智能機器學習技術提升運維效率,通過運維知識庫、智能算法庫等建設有效地解決運維工作中的人力成本和效率問題。但在復雜場景下的故障定位、故障診斷、趨勢預測和場景編排中,智能運維技術在定位預測方面有待進一步提高。

1.5 操作系統eBPF

eBPF起源于Linux內核,可以運行沙箱程序,安全有效地擴展內核功能,無需更改內核源代碼或加載內核模塊。eBPF全稱“擴展的伯克利數據包過濾器(Extended Berkeley Packet Filter)”,是一種數據包過濾技術,從BPF(Berkeley Packet Filter)技術擴展而來。BPF提供了一種在內核事件和用戶程序事件發生時安全注入代碼的機制,這就讓非內核開發人員也可以對內核進行控制。隨著Linux內核的發展,BPF逐步從最初的數據包過濾擴展到網絡、內核、安全和跟蹤等,而且其功能特性還在快速發展。

2 可觀測性技術發展

可觀測性技術在傳統監控基礎上采集更深入和全面的數據(排錯、剖析和依賴分析等),構建對系統更為深入的認知以降低故障平均修復時間(MTTR),延長系統無故障運行時間(MTBF),提升系統可用性和運維效率。為了實現更深入和全面的數據采集,離不開相關技術和標準規范的發展。

2.1 基于eBPF可觀測性技術發展

自Linux 4.19內核以來,Linux社區為eBPF帶來160多個新特性和優化改進,提升了eBPF在跟蹤分析、可觀測性、安全和網絡加速等場景的應用能力。

1)跟蹤和分析:通過附加eBPF程序來跟蹤點位以及內核與用戶應用探針的能力,允許實現應用程序和系統程序本身運行時行為的不可預見條件下的可視性。通過向應用程序端和系統端都提供內省性,2種視圖能夠被有效地結合,從而向故障排解系統性能問題提供強大且獨特的洞察力。高級統計數據結構允許以有效方式提取有意義的可視性數據,而無需像系統普遍采用導出大量采樣數據的方式。

2)可觀測性:eBPF不依賴于操作系統公開的靜態計數器和計量器,支持自定義指標的收集和內核聚合,并基于各種可能的來源生成可見性事件。這在一定程度上擴展可以實現的可見性深度,并通過僅收集所需的可見性數據且在事件源處生成直方圖和類似的數據結構而非依賴于樣本的導出來顯著降低整體系統開銷。

3)安全:建立在識別和理解所有系統調用的基礎上,并將其與所有網絡操作的數據包和套接字級別視圖相結合,使得安全系統具備革新性的創新方法。eBPF能夠有效地整合可視性、資源可控性,從而在更廣泛的上下文語境中以更佳的控制水準來創建安全系統操作。

4)網絡加速:可編程性和效率的結合使eBPF適合網絡解決方案的數據包處理要求。eBPF的可編程性可添加額外的協議解析器,JIT編譯器提供接近于本地編譯的內核代碼的執行性能。

eBPF程序由事件觸發后執行。這些事件包括系統調用、內核跟蹤點、內核函數和用戶態函數的調用退出、網絡事件等,借助內核態插樁(kprobe)和用戶態插樁(uprobe)提供可觀測性技術。本文以eBPF為抓手進行可觀測性技術研究和探索,探索可觀測性體系化演進和落地能力(全棧、云原生),助力運維技術融合迭代發展。

2.2 云原生可觀測性技術發展

隨著云原生技術普及,系統迎來新的運維問題:微服務請求導致問題定位難以解決,隨著業務不斷擴張,僅憑日志或APM性能監控很難做到全景觀測和下鉆跟蹤,于是衍生出可觀測性的3大要素,即Logging、Metrics和Tracing。

Logging:日志展現的是應用軟件運行而產生的事件或者程序在執行過程中所產生的一些記錄,可以詳細解釋系統的運行狀態。

Metrics:指標是一種聚合數值,其存儲空間很小,可以觀察系統的狀態和趨勢。

Tracing:追蹤面向的是請求,通過請求的上下文信息關聯實現分布式請求完整調用鏈路。

云原生計算基金會(Cloud Native Computing Foundation,以下簡稱CNCF)制定發布OpenTracing標準來統一鏈路跟蹤中涉及的相關標準和規范,Google發布OpenCensus項目包含Metrics標準及采集Agent、Collector規范,由于OpenTracing與OpenCensus存在交集,2019年CNCF合并OpenTracing與OpenCensus推出OpenTelemetry項目,旨在建立標準規范統一Metrics、Logs和Traces3種數據,核心技術是產生、收集和處理可觀測性數據,并支持傳輸到分析軟件中。OpenTelemetry的問世加速了云原生可觀測性技術和生態的發展;2020年9月CNCF發布可觀測性推薦產品,主要工具 有Prometheus、Grafana、Elastic、Jaeger、OpenTelemetry;可觀測性成為云原生的一項必備要素。

3 可觀測性研究與實踐

3.1 基于操作系統eBPF的全棧可觀測性技術研究與實踐

利用eBPF附加到跟蹤點及在內核和用戶側部署探針的能力,提供可視化觀測數據。基于操作系統eBPF的可觀測性與數據庫、中間件、應用系統的可觀測性數據關聯,實現全棧基礎軟硬件的可觀測、可跟蹤,如圖3所示。

圖3 基于操作系統eBPF的全棧可觀測性

在操作系統層:通過eBPF程序在存儲資源、網絡資源和主機資源等內部進行數據采集,包括文件訪問、網絡負載、性能事件、CPU負載、內存訪問和系統函數調用等;在數據庫層:使用PG_STAT_*、DBE_PERF、TOP_SQL、ASP、WDR等工具收集數據庫負載、SQL執行效率、會話等信息,并將進程、SQL、表、日志文件等與操作系統eBPF信息建立關聯;最后,通過Prometheus工具進行監控數據采集、處理和導出以實現狀態可視化。實現從應用層發現問題到數據庫、操作系統逐級下鉆分析的全棧可觀測、可跟蹤。

3.2 基于操作系統eBPF的云原生可觀測性技術研究與實踐

基于eBPF在操作系統內核可觀測性優勢,與OpenTelemetry結合建立云原生觀測數據收集處理的標準規范,增強云原生環境可觀測性能力(圖4)。

OpenTelemetry提供一組標準規范和工具集,管理可觀測性數據,主要包括trace、metrics、logs等,規范可觀測性數據的數據模型、數據采集、數據處理、數據治理和數據導出。主要包括以下3個部分。

1)API:應用開發者會使用OpenTelemetry API對其代碼進行插樁,API包含4個部分,即Tracer API、Metrics API、Context API、語義規范。

2)SDK:是OpenTelemetry API的具體實現。

3)Collector:遵循OpenTelemetry協議實現數據收集、處理和導出到外部系統,由Receiver、Processor、Exporter構成。

如圖4所示,將eBPF采集數據導入OpenTelemetry Collector,步驟如下。

圖4 基于操作系統eBPF的云原生可觀測性

數據接收:在kubernetes上eBPF的tracepoint和kprobe/kretprobe,將內核采集到的應用請求、系統調用、網絡傳輸性能等數據放到內存中,在用戶態eBPF程序讀取數據,進行預處理;基于OpenTelemetry規范實現Receiver,以事件訂閱方式接收采集數據。

數據處理:基于OpenTelemetry規范實現Processor,對采集數據進行協議解析和指標處理評估,實現eBPF采集的內核數據與kubernetes調度請求、上下文信息關聯。

數據導出:基于OpenTelemetry規范實現Exporter數據導出到可觀測平臺進行分析。

代碼示意基于eBPF捕獲性能事件,加載到內核的eBPF程序代碼段:

整個過程中應用系統無需變更或重新編譯Linux內核,從而做到無侵入。當集群規模越來越大時,無侵入方式會極大地提升系統性能效率。

4 未來展望

可觀測性技術聚集故障定位、故障診斷、故障預測和系統運行不暢的原因,是從監控、應用性能管理APM、人工智能運維AIOps等技術中不斷“演化”而來,隨著操作系統eBPF、人工智能機器學習、知識推理等技術的不斷發展,可觀測性技術一定會在信創和云原生等應用場景中發揮更大作用,推動下一代監控技術的發展。

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 亚洲人成色在线观看| 国产最新无码专区在线| 日韩欧美色综合| 日韩精品一区二区三区swag| 成人在线亚洲| 国产在线日本| 亚洲精品少妇熟女| 日本亚洲国产一区二区三区| 国产成人精品男人的天堂| 国产成人综合亚洲欧美在| 亚洲精品国产首次亮相| 久久久久亚洲av成人网人人软件| 国产麻豆精品在线观看| 免费一极毛片| 91精品在线视频观看| 亚洲欧美极品| 国产精品久久久久久影院| 国产玖玖玖精品视频| 欧美日韩国产成人高清视频| 超级碰免费视频91| 最新国产精品鲁鲁免费视频| 精品国产免费观看一区| 国产精品hd在线播放| 欧美亚洲欧美区| 亚洲激情99| 日日拍夜夜嗷嗷叫国产| 欧美.成人.综合在线| 欧美a在线视频| 58av国产精品| 国产精品人成在线播放| 中文字幕乱码二三区免费| 老司机午夜精品网站在线观看| 久久久久国产精品嫩草影院| 日韩经典精品无码一区二区| 亚洲AⅤ波多系列中文字幕| 国产原创演绎剧情有字幕的| 真实国产乱子伦视频| 福利在线不卡| 91po国产在线精品免费观看| 国产欧美日韩另类| 国产精品一区在线麻豆| 亚洲国产在一区二区三区| 免费99精品国产自在现线| 97久久超碰极品视觉盛宴| 国产在线日本| 在线看片国产| 激情無極限的亚洲一区免费| 亚洲视频a| 日a本亚洲中文在线观看| 欧美成人精品一区二区| 97超级碰碰碰碰精品| 五月婷婷综合在线视频| 午夜精品一区二区蜜桃| 香蕉视频在线精品| 东京热一区二区三区无码视频| 亚洲精品无码久久毛片波多野吉| 日韩精品无码免费专网站| 日韩美一区二区| 看国产一级毛片| 色精品视频| 久久久久亚洲精品无码网站| 欧美天堂久久| 在线观看的黄网| 国产一区二区三区在线观看视频 | 暴力调教一区二区三区| 亚洲av无码成人专区| 免费观看无遮挡www的小视频| 亚洲伊人天堂| 欧美午夜性视频| 五月六月伊人狠狠丁香网| 无码高清专区| 国产中文一区二区苍井空| 亚洲日韩欧美在线观看| 男女性色大片免费网站| 亚洲区一区| 看国产毛片| 国产一级视频在线观看网站| 国产精品自在拍首页视频8| 欧美啪啪一区| 国产成本人片免费a∨短片| 欧美成人看片一区二区三区 | 日本成人不卡视频|