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在多段調速系統中的應用
主站蜘蛛池模板: 中文字幕日韩欧美| 中文字幕无码av专区久久| 91在线播放国产| 欧美日韩v| 欧美一级专区免费大片| 欧美成人一级| 国产精品va免费视频| 久久99国产精品成人欧美| 女高中生自慰污污网站| 亚洲综合片| 草逼视频国产| 亚洲无码日韩一区| 国内精品伊人久久久久7777人| 高清大学生毛片一级| 婷婷99视频精品全部在线观看| 91色国产在线| 伊人成人在线视频| 人妻中文字幕无码久久一区| 国产美女精品一区二区| 中文字幕人妻av一区二区| 欧洲亚洲一区| 四虎影视8848永久精品| 欧美视频在线播放观看免费福利资源| 国产99久久亚洲综合精品西瓜tv| 激情乱人伦| 欧美yw精品日本国产精品| 久久国产精品影院| 色噜噜综合网| 狼友视频国产精品首页| 国产免费看久久久| 亚洲无码视频喷水| 中文字幕人妻av一区二区| 538国产视频| 亚洲一区二区精品无码久久久| 亚洲不卡av中文在线| 亚洲天堂日韩在线| 91毛片网| 国产亚洲欧美日韩在线一区二区三区| 日韩欧美中文亚洲高清在线| 亚洲最新地址| 国产精品99在线观看| 99免费在线观看视频| 制服丝袜一区| 久久超级碰| 亚洲动漫h| 国产99免费视频| 国产精品区视频中文字幕| 日韩中文欧美| 欧美激情网址| 亚洲人成网站观看在线观看| 国产凹凸一区在线观看视频| 91啦中文字幕| 成人夜夜嗨| 毛片大全免费观看| 久久午夜夜伦鲁鲁片无码免费| 欧类av怡春院| 97成人在线观看| 色悠久久综合| 日韩精品专区免费无码aⅴ| 女人av社区男人的天堂| 五月婷婷亚洲综合| 欧美日韩激情在线| 久久福利网| 中文毛片无遮挡播放免费| 免费观看国产小粉嫩喷水| 免费国产高清视频| 乱人伦中文视频在线观看免费| 91精品国产自产在线老师啪l| 欧美有码在线| 国产91丝袜在线观看| 2021国产在线视频| 国产在线观看人成激情视频| 在线免费不卡视频| 日本AⅤ精品一区二区三区日| 亚洲国产精品日韩专区AV| 成人a免费α片在线视频网站| 久青草免费视频| 99re66精品视频在线观看| 五月婷婷综合在线视频| 国产97视频在线观看| 园内精品自拍视频在线播放| 国产剧情伊人|