日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

解碼eBPF可觀測性:eBPF如何改變我們所知的觀測性

來源: 責(zé)編: 時間:2023-10-13 14:32:12 284觀看
導(dǎo)讀在過去的兩年里,云原生社區(qū)一直在熱烈討論eBPF。eBPF曾是KubeCon、eBPF Days和eBPF Summit的主題,并且越來越受歡迎。像Google和Netflix這樣的公司多年來一直在使用eBPF,新的用例也不斷涌現(xiàn)。特別是在觀測性方面,eBPF被認(rèn)

在過去的兩年里,云原生社區(qū)一直在熱烈討論eBPF。eBPF曾是KubeCon、eBPF Days和eBPF Summit的主題,并且越來越受歡迎。像Google和Netflix這樣的公司多年來一直在使用eBPF,新的用例也不斷涌現(xiàn)。特別是在觀測性方面,eBPF被認(rèn)為將是一個重大改變。qh528資訊網(wǎng)——每日最新資訊28at.com

所以讓我們來看看eBPF——這項(xiàng)技術(shù)到底是什么,它如何影響觀測性,它與現(xiàn)有的觀測性實(shí)踐有什么區(qū)別,未來可能會發(fā)生什么變化?qh528資訊網(wǎng)——每日最新資訊28at.com

qh528資訊網(wǎng)——每日最新資訊28at.com

什么是eBPF?

eBPF是一種編程框架,允許我們在Linux內(nèi)核中安全地運(yùn)行沙盒化的程序,而無需更改內(nèi)核代碼。qh528資訊網(wǎng)——每日最新資訊28at.com

它最初是為Linux開發(fā)的(而且直到今天,這項(xiàng)技術(shù)在Linux上最成熟),但微軟正在迅速發(fā)展eBPF在Windows上的實(shí)現(xiàn)[1]。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF程序從設(shè)計(jì)上來說非常高效和安全——內(nèi)核會對其進(jìn)行驗(yàn)證,以確保它們不會危及操作系統(tǒng)的穩(wěn)定性或安全性。qh528資訊網(wǎng)——每日最新資訊28at.com

為什么eBPF如此重要?

要理解這一點(diǎn),我們需要了解用戶空間和內(nèi)核空間。qh528資訊網(wǎng)——每日最新資訊28at.com

用戶空間是所有應(yīng)用程序運(yùn)行的地方。內(nèi)核空間位于用戶空間和物理硬件之間。用戶空間中的應(yīng)用程序無法直接訪問硬件。相反,它們通過系統(tǒng)調(diào)用與內(nèi)核通信,然后內(nèi)核再訪問硬件。qh528資訊網(wǎng)——每日最新資訊28at.com

所有內(nèi)存訪問、文件讀寫和網(wǎng)絡(luò)流量都經(jīng)過內(nèi)核。內(nèi)核還管理并發(fā)進(jìn)程。qh528資訊網(wǎng)——每日最新資訊28at.com

基本上,所有操作都通過內(nèi)核進(jìn)行(見下圖)。qh528資訊網(wǎng)——每日最新資訊28at.com

而eBPF提供了一種安全的、高效的擴(kuò)展內(nèi)核功能的方式。qh528資訊網(wǎng)——每日最新資訊28at.com

qh528資訊網(wǎng)——每日最新資訊28at.com

用戶空間和內(nèi)核空間qh528資訊網(wǎng)——每日最新資訊28at.com

從歷史上看,出于顯而易見的原因,更改內(nèi)核源代碼或操作系統(tǒng)層的任何內(nèi)容一直都非常困難。qh528資訊網(wǎng)——每日最新資訊28at.com

Linux內(nèi)核有3000萬行代碼[2],任何更改要從一個想法變成廣泛可用的東西需要數(shù)年時間。首先,Linux社區(qū)必須同意它。然后,它必須成為官方Linux發(fā)布的一部分。然后,在幾個月后,它會被Red Hat和Ubuntu等發(fā)行版采用,然后傳播到更廣泛的用戶。qh528資訊網(wǎng)——每日最新資訊28at.com

從技術(shù)上講,一個人可以將內(nèi)核模塊加載到內(nèi)核中,直接進(jìn)行更改,但這是非常高風(fēng)險的,涉及復(fù)雜的內(nèi)核級編程,因此幾乎普遍不建議這樣做。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF出現(xiàn)并解決了這個問題,提供了一種在內(nèi)核中附加和運(yùn)行程序的安全和高效機(jī)制。qh528資訊網(wǎng)——每日最新資訊28at.com

讓我們看看eBPF如何確保安全性和性能。qh528資訊網(wǎng)——每日最新資訊28at.com

高度安全

  • 嚴(yán)格的驗(yàn)證 — 在任何eBPF程序加載到內(nèi)核之前,它都會由eBPF驗(yàn)證器進(jìn)行驗(yàn)證,以確保代碼絕對安全——例如,沒有硬循環(huán)、無效的內(nèi)存訪問、不安全的操作。
  • 沙盒化 — eBPF程序在內(nèi)核內(nèi)部的內(nèi)存隔離沙盒中運(yùn)行,與其他內(nèi)核組件分開。這可以防止未經(jīng)授權(quán)的訪問內(nèi)核內(nèi)存、數(shù)據(jù)結(jié)構(gòu)和內(nèi)核源代碼。
  • 有限的操作 — eBPF程序通常必須使用C語言的一個小子集來編寫,即受限指令集。這限制了eBPF程序可以執(zhí)行的操作,降低了安全漏洞的風(fēng)險。

高性能 / 輕量級

  • 以本機(jī)機(jī)器碼運(yùn)行 — eBPF程序在CPU上以本機(jī)機(jī)器指令的形式運(yùn)行。這導(dǎo)致更快的執(zhí)行和更好的性能。?沒有上下文切換 — 常規(guī)應(yīng)用程序會在用戶空間和內(nèi)核空間之間定期切換上下文,這會消耗資源。eBPF程序,因?yàn)樗鼈冊趦?nèi)核層運(yùn)行,可以直接訪問內(nèi)核數(shù)據(jù)結(jié)構(gòu)和資源。
  • 事件驅(qū)動 — eBPF程序通常僅在特定內(nèi)核事件發(fā)生時運(yùn)行,而不是一直運(yùn)行。這最小化了開銷。
  • 針對硬件進(jìn)行優(yōu)化 — eBPF程序在執(zhí)行之前由內(nèi)核的即時編譯器(JIT)編譯為機(jī)器代碼,因此代碼針對特定的硬件進(jìn)行了優(yōu)化。

因此,eBPF為內(nèi)核編程提供了一種安全且高效的鉤子。考慮到一切都通過內(nèi)核,這為我們帶來了以前無法實(shí)現(xiàn)的新可能性。qh528資訊網(wǎng)——每日最新資訊28at.com

為什么現(xiàn)在才如此重要?

eBPF周圍的技術(shù)在很長一段時間內(nèi)得以發(fā)展,已經(jīng)有大約30年了。qh528資訊網(wǎng)——每日最新資訊28at.com

在過去的7-8年中,eBPF已被一些大型公司大規(guī)模使用,現(xiàn)在我們正在進(jìn)入一個使用eBPF變得更加主qh528資訊網(wǎng)——每日最新資訊28at.com

流的時代。請參閱eBPF的共同創(chuàng)作者之一、Linux的共同維護(hù)者Alexei Starovoitov的這個視頻[3],了解eBPF的發(fā)展歷程。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF — 簡要?dú)v史

  • 1993年-來自勞倫斯伯克利國家實(shí)驗(yàn)室的一篇論文[4]探討了使用內(nèi)核代理進(jìn)行數(shù)據(jù)包過濾。這就是BPF(“伯克利數(shù)據(jù)包過濾器”)這個名字的由來。
  • 1997年 — BPF正式作為Linux內(nèi)核的一部分引入(版本2.1.75)。
  • 1997–2014年 — 添加了一些功能,以改進(jìn)、穩(wěn)定和擴(kuò)展BPF的功能。
  • 2014年 — 引入了重要的更新,稱為“擴(kuò)展伯克利數(shù)據(jù)包過濾器”(eBPF)。這個版本對BPF技術(shù)進(jìn)行了重大改進(jìn),使其更廣泛可用,因此稱之為“擴(kuò)展”。

之所以說這個發(fā)布很重要,是因?yàn)樗沟脭U(kuò)展內(nèi)核功能變得容易。qh528資訊網(wǎng)——每日最新資訊28at.com

程序員可以更多或更少地像編寫常規(guī)應(yīng)用程序一樣編寫代碼,而周圍的eBPF基礎(chǔ)設(shè)施會處理低級驗(yàn)證、安全性和效率問題。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF的周圍支持生態(tài)系統(tǒng)和腳手架使這成為可能(見下圖)。qh528資訊網(wǎng)——每日最新資訊28at.com

qh528資訊網(wǎng)——每日最新資訊28at.com

來源:https://ebpf.io/what-is-ebpf/qh528資訊網(wǎng)——每日最新資訊28at.com

更好的是,eBPF程序可以在不重新啟動的情況下加載到內(nèi)核中,并且可以隨時卸載。qh528資訊網(wǎng)——每日最新資訊28at.com

所有這些突然使得廣泛采用和應(yīng)用成為可能。qh528資訊網(wǎng)——每日最新資訊28at.com

在生產(chǎn)系統(tǒng)中的廣泛應(yīng)用

eBPF的受歡迎程度在過去的7-8年中迅速增長,許多大型公司在規(guī)模生產(chǎn)系統(tǒng)中使用它。qh528資訊網(wǎng)——每日最新資訊28at.com

  • 到2016年,Netflix廣泛使用eBPF進(jìn)行跟蹤。Brendan Gregg[5]實(shí)現(xiàn)了它,他在基礎(chǔ)設(shè)施和運(yùn)維領(lǐng)域被廣泛認(rèn)為是eBPF的權(quán)威人士。
  • 2017年 — Facebook開源了他們基于eBPF的負(fù)載均衡器Katran[6]。自2017年以來,每個訪問Facebook.com[7]的數(shù)據(jù)包都經(jīng)過了eBPF。
  • 2020年- Google將eBPF納入其Kubernetes提供的一部分。eBPF現(xiàn)在驅(qū)動著GKE的網(wǎng)絡(luò)、安全和可觀測性層[8]。到目前為止,企業(yè)中也有廣泛的采用,如Capital One[9]和Adobe[10]。
  • 2021年 — Facebook、Google、Netflix、Microsoft和Isovalent聯(lián)合宣布創(chuàng)建eBPF基金會[11]來管理eBPF技術(shù)的增長。

現(xiàn)在有成千上萬家公司使用eBPF,并且每年涌現(xiàn)出數(shù)百個eBPF項(xiàng)目,探索不同的用例。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF現(xiàn)在是Linux內(nèi)核中的一個獨(dú)立子系統(tǒng),并擁有廣泛的社區(qū)支持。這項(xiàng)技術(shù)本身也在不斷擴(kuò)展,有了幾個新的添加。qh528資訊網(wǎng)——每日最新資訊28at.com

那么,我們可以用eBPF做什么?

eBPF的最常見用途可以分為三個領(lǐng)域:qh528資訊網(wǎng)——每日最新資訊28at.com

  • 網(wǎng)絡(luò)
  • 安全
  • 可觀測性

安全和網(wǎng)絡(luò)已經(jīng)看到了更廣泛的采用和應(yīng)用,其中包括像Cilum[12]這樣的項(xiàng)目。相比之下,基于eBPF的可觀測性方案在其演進(jìn)過程中還處于早期階段。qh528資訊網(wǎng)——每日最新資訊28at.com

讓我們首先看看安全和網(wǎng)絡(luò)的用例。qh528資訊網(wǎng)——每日最新資訊28at.com

(1) 安全qh528資訊網(wǎng)——每日最新資訊28at.com

安全是eBPF的一個非常流行的用例。使用eBPF,程序可以觀察內(nèi)核級別的一切情況,以高速處理事件以檢查意外行為,并比以前更快地發(fā)出警報。qh528資訊網(wǎng)——每日最新資訊28at.com

例如 -qh528資訊網(wǎng)——每日最新資訊28at.com

  • Google[13]使用eBPF進(jìn)行大規(guī)模入侵檢測
  • Shopify[14]使用eBPF來實(shí)現(xiàn)容器安全

一些第三方安全產(chǎn)品[15]現(xiàn)在使用eBPF進(jìn)行數(shù)據(jù)收集和監(jiān)視。qh528資訊網(wǎng)——每日最新資訊28at.com

(2) 網(wǎng)絡(luò)qh528資訊網(wǎng)——每日最新資訊28at.com

網(wǎng)絡(luò)是另一個廣泛應(yīng)用的用例。位于eBPF層的位置允許全面監(jiān)測網(wǎng)絡(luò)可觀測性,例如完整網(wǎng)絡(luò)路徑的可見性,包括所有跳數(shù),以及源IP和目標(biāo)IP。使用eBPF程序,可以處理高速網(wǎng)絡(luò)事件并在內(nèi)核內(nèi)直接操作網(wǎng)絡(luò)數(shù)據(jù)包,而開銷非常低。qh528資訊網(wǎng)——每日最新資訊28at.com

這允許各種網(wǎng)絡(luò)用例,如負(fù)載平衡、DDoS防護(hù)、流量整形和服務(wù)質(zhì)量(QoS)。qh528資訊網(wǎng)——每日最新資訊28at.com

  • Cloudflare[16]使用eBPF檢測并防止DDoS攻擊,每秒處理1000萬個數(shù)據(jù)包[17]而不影響網(wǎng)絡(luò)性能。
  • Meta的基于eBPF的Katran[18]為Facebook的所有負(fù)載均衡進(jìn)行處理

(3) 可觀測性qh528資訊網(wǎng)——每日最新資訊28at.com

到目前為止,通過內(nèi)核觀察一切并且eBPF提供了一種高性能和安全的方式來觀察一切,這使得eBPF在可觀察性方面非常有用。qh528資訊網(wǎng)——每日最新資訊28at.com

讓我們更深入地探討可觀測性,看看這項(xiàng)技術(shù)的影響。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF如何確切影響可觀測性?

為了探討這一點(diǎn),讓我們離開eBPF的世界,進(jìn)入可觀測性的世界,看看構(gòu)成我們標(biāo)準(zhǔn)可觀測性解決方案的內(nèi)容。qh528資訊網(wǎng)——每日最新資訊28at.com

任何可觀測性解決方案都有四個主要組件:qh528資訊網(wǎng)——每日最新資訊28at.com

1.數(shù)據(jù)收集 — 從應(yīng)用程序和基礎(chǔ)設(shè)施獲取遙測數(shù)據(jù)2.數(shù)據(jù)處理 — 對收集的數(shù)據(jù)進(jìn)行過濾、索引和計(jì)算3.數(shù)據(jù)存儲 — 數(shù)據(jù)的短期和長期存儲4.用戶體驗(yàn)層 — 確定用戶如何使用數(shù)據(jù)qh528資訊網(wǎng)——每日最新資訊28at.com

在這些組件中,eBPF影響的是(截至今天)僅僅是數(shù)據(jù)收集層 — 使用eBPF直接從內(nèi)核收集遙測數(shù)據(jù)的簡便機(jī)制。qh528資訊網(wǎng)——每日最新資訊28at.com

qh528資訊網(wǎng)——每日最新資訊28at.com

0*8zMD7h66uFLgBIJH.pngqh528資訊網(wǎng)——每日最新資訊28at.com

eBPF — 對可觀測性的影響qh528資訊網(wǎng)——每日最新資訊28at.com

所以當(dāng)我們說“eBPF可觀測性”時,我們實(shí)際上是指使用eBPF作為收集遙測數(shù)據(jù)的工具,而不是使用其他方法來進(jìn)行儀器化。可觀測性解決方案的其他組件保持不變。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF可觀測性的工作原理

為了充分理解eBPF可觀測性背后的機(jī)制,我們需要了解掛鉤(hooks)的概念。qh528資訊網(wǎng)——每日最新資訊28at.com

正如我們前面所看到的,eBPF程序主要是事件驅(qū)動的,即每次發(fā)生特定事件時都會觸發(fā)它們。例如,每次進(jìn)行函數(shù)調(diào)用時,都可以調(diào)用一個eBPF程序來捕獲一些用于可觀測性目的的數(shù)據(jù)。qh528資訊網(wǎng)——每日最新資訊28at.com

  • 首先,這些掛鉤可以在內(nèi)核空間或用戶空間。因此,eBPF可以用于監(jiān)視用戶空間應(yīng)用程序以及內(nèi)核級事件。
  • 其次,這些掛鉤可以是預(yù)定義的/靜態(tài)的,也可以在運(yùn)行中動態(tài)插入到系統(tǒng)中(無需重新啟動!)

這四種不同的eBPF機(jī)制允許每一種(見下圖)qh528資訊網(wǎng)——每日最新資訊28at.com

qh528資訊網(wǎng)——每日最新資訊28at.com

1*_e2Q4FEhTJhkK2nVYkiICw.pngqh528資訊網(wǎng)——每日最新資訊28at.com

用戶空間和內(nèi)核空間的靜態(tài)和動態(tài)eBPF掛鉤:qh528資訊網(wǎng)——每日最新資訊28at.com

  • 內(nèi)核跟蹤點(diǎn) — 用于掛接到由內(nèi)核開發(fā)人員預(yù)定義的事件(使用TRACE_EVENT宏)
  • USDT — 用于掛接到應(yīng)用程序代碼中由開發(fā)人員預(yù)定義的跟蹤點(diǎn)
  • Kprobes(內(nèi)核探針) — 用于在運(yùn)行時動態(tài)掛接到內(nèi)核代碼的任何部分
  • Uprobes(用戶探針) — 用于在運(yùn)行時動態(tài)掛接到用戶空間應(yīng)用程序的任何部分

在內(nèi)核空間中有許多預(yù)定義的掛鉤,可以輕松將eBPF程序附加到其中(例如,系統(tǒng)調(diào)用、函數(shù)入口/出口、網(wǎng)絡(luò)事件、內(nèi)核跟蹤點(diǎn))。類似地,在用戶空間中,許多語言運(yùn)行時、數(shù)據(jù)庫系統(tǒng)和軟件堆棧會暴露出Linux BCC工具的預(yù)定義掛鉤,eBPF程序可以連接到這些掛鉤。qh528資訊網(wǎng)——每日最新資訊28at.com

但更有趣的是kprobes和uprobes。如果生產(chǎn)中出現(xiàn)問題,我沒有足夠的信息,并且我希望在運(yùn)行時動態(tài)添加儀表化,該怎么辦?這就是kprobes和uprobes允許強(qiáng)大的可觀測性的地方。qh528資訊網(wǎng)——每日最新資訊28at.com

qh528資訊網(wǎng)——每日最新資訊28at.com

0*4BZtZLhHeUsGWSc1.pngqh528資訊網(wǎng)——每日最新資訊28at.com

eBPF kprobes 和 uprobes:qh528資訊網(wǎng)——每日最新資訊28at.com

例如,使用uprobes,可以在不修改應(yīng)用程序代碼的情況下在運(yùn)行時掛接到應(yīng)用程序內(nèi)的特定函數(shù)。每當(dāng)執(zhí)行該函數(shù)時,都會觸發(fā)一個eBPF程序以捕獲所需的數(shù)據(jù)。這允許像實(shí)時[19]調(diào)試這樣的令人興奮的可能性。qh528資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在我們知道了eBPF可觀測性是如何工作的,讓我們來看看用例。qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF可觀測性用例

eBPF可用于幾乎所有常見的現(xiàn)有可觀測性用例,并且還提供了新的可能性。qh528資訊網(wǎng)——每日最新資訊28at.com

  • 系統(tǒng)和基礎(chǔ)設(shè)施監(jiān)控
  • 應(yīng)用程序性能監(jiān)控(APM)
  • 安全監(jiān)控
  • 故障排除

(1) 系統(tǒng)和基礎(chǔ)設(shè)施監(jiān)控qh528資訊網(wǎng)——每日最新資訊28at.com

在這個領(lǐng)域,eBPF最常用于監(jiān)控Linux主機(jī)的性能和資源使用情況。qh528資訊網(wǎng)——每日最新資訊28at.com

  • CPU和內(nèi)存使用率
  • 硬盤和網(wǎng)絡(luò)性能
  • 進(jìn)程活動和調(diào)度
  • 文件系統(tǒng)活動

eBPF程序可以輕松地在這些事件的發(fā)生時捕獲數(shù)據(jù),并將其發(fā)送到存儲后端,以便稍后分析。qh528資訊網(wǎng)——每日最新資訊28at.com

(2) 應(yīng)用程序性能監(jiān)控(APM)qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF也用于應(yīng)用程序內(nèi)部的性能監(jiān)控。例如,在Go應(yīng)用程序中,可以使用uprobes掛接到某個特定函數(shù),以捕獲函數(shù)參數(shù)、返回值和執(zhí)行時間。這對于詳細(xì)分析應(yīng)用程序性能問題非常有用。qh528資訊網(wǎng)——每日最新資訊28at.com

(3) 安全監(jiān)控qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF在安全監(jiān)控方面也非常有用。它可以用于檢測惡意行為、網(wǎng)絡(luò)攻擊和異常事件。eBPF程序可以在內(nèi)核和應(yīng)用程序級別捕獲事件,并將其傳遞給安全信息和事件管理系統(tǒng),以進(jìn)行進(jìn)一步的分析和響應(yīng)。qh528資訊網(wǎng)——每日最新資訊28at.com

(4) 故障排除qh528資訊網(wǎng)——每日最新資訊28at.com

eBPF還可以用于故障排除。它可以用于跟蹤應(yīng)用程序崩潰、性能下降或其他問題的根本原因。eBPF程序可以捕獲關(guān)鍵性能指標(biāo)、事件和上下文信息,以幫助診斷問題并進(jìn)行修復(fù)。qh528資訊網(wǎng)——每日最新資訊28at.com

實(shí)際示例

以下是一些eBPF可觀測性用例的實(shí)際示例:qh528資訊網(wǎng)——每日最新資訊28at.com

  • Tracing和Profiling — 使用eBPF捕獲應(yīng)用程序的性能數(shù)據(jù),例如函數(shù)調(diào)用、系統(tǒng)調(diào)用和內(nèi)存分配,以識別瓶頸和優(yōu)化性能。
  • 網(wǎng)絡(luò)可觀測性 — 使用eBPF來監(jiān)視網(wǎng)絡(luò)流量、分析網(wǎng)絡(luò)包,并實(shí)施防火墻策略和負(fù)載平衡。
  • 容器監(jiān)控 — 在Kubernetes集群中,使用eBPF來監(jiān)控容器內(nèi)部的資源使用情況、性能和問題。
  • 安全監(jiān)控 — 使用eBPF來檢測潛在的安全威脅,例如異常網(wǎng)絡(luò)活動、不尋常的系統(tǒng)調(diào)用和入侵嘗試。
  • 分布式跟蹤 — 使用eBPF捕獲應(yīng)用程序的分布式跟蹤數(shù)據(jù),以分析請求的流經(jīng)整個系統(tǒng)的路徑,幫助診斷和優(yōu)化性能問題。

eBPF和傳統(tǒng)觀測性的比較

現(xiàn)在讓我們來比較eBPF可觀測性和傳統(tǒng)觀測性方法。qh528資訊網(wǎng)——每日最新資訊28at.com

(1) 傳統(tǒng)觀測性qh528資訊網(wǎng)——每日最新資訊28at.com

傳統(tǒng)的可觀測性方法通常基于以下原則:qh528資訊網(wǎng)——每日最新資訊28at.com

  • 代理和代理集成 — 在目標(biāo)系統(tǒng)中安裝代理,代理負(fù)責(zé)收集和傳輸遙測數(shù)據(jù)。這通常需要在每個目標(biāo)系統(tǒng)上部署代理,而且代理也需要進(jìn)行版本控制和維護(hù)。
  • 度量指標(biāo)集成 — 需要配置和管理度量和日志指標(biāo)的集成。這通常涉及到手動配置和更新,以確保適當(dāng)?shù)闹笜?biāo)和日志數(shù)據(jù)被采集。
  • 額外的開銷 — 代理需要在目標(biāo)系統(tǒng)上運(yùn)行,這可能會引入額外的開銷,例如CPU和內(nèi)存消耗。
  • 局限性 — 傳統(tǒng)的可觀測性方法可能會受到系統(tǒng)復(fù)雜性和性能問題的限制,因?yàn)樗鼈兛赡軣o法實(shí)時捕獲足夠的數(shù)據(jù)。
  • 安全性 — 代理可能會引入潛在的安全風(fēng)險,因?yàn)樗鼈冊谀繕?biāo)系統(tǒng)上運(yùn)行并訪問敏感數(shù)據(jù)。

(2) eBPF可觀測性qh528資訊網(wǎng)——每日最新資訊28at.com

與傳統(tǒng)觀測性方法相比,eBPF可觀測性具有以下優(yōu)勢:qh528資訊網(wǎng)——每日最新資訊28at.com

  • 內(nèi)核級別的可觀測性 — eBPF程序在內(nèi)核級別運(yùn)行,可以觀察系統(tǒng)的內(nèi)部狀態(tài)和事件,無需在目標(biāo)系統(tǒng)上運(yùn)行代理。
  • 輕量級 — eBPF程序通常對系統(tǒng)資源的開銷很小,因?yàn)樗鼈冊趦?nèi)核級別運(yùn)行,無需獨(dú)立的代理。
  • 安全性 — eBPF程序受到內(nèi)核驗(yàn)證器的強(qiáng)制約束,以確保它們不會引入安全風(fēng)險。
  • 靈活性 — eBPF程序可以在運(yùn)行時動態(tài)附加到系統(tǒng)中,無需重新啟動目標(biāo)系統(tǒng),從而提供了更大的靈活性和可伸縮性。
  • 性能 — eBPF程序通常以本機(jī)機(jī)器指令運(yùn)行,因此性能很高,可以實(shí)時捕獲大量數(shù)據(jù)。

盡管eBPF可觀測性具有許多優(yōu)勢,但它也具有一些挑戰(zhàn)和限制。首先,eBPF編程需要一定的學(xué)習(xí)曲線,因?yàn)樗婕暗教囟ǖ木幊棠P秃驼Z言。此外,某些高級用例可能需要更復(fù)雜的eBPF程序。qh528資訊網(wǎng)——每日最新資訊28at.com

未來展望

eBPF可觀測性已經(jīng)取得了巨大的進(jìn)展,但仍有很多潛在的未來發(fā)展方向。qh528資訊網(wǎng)——每日最新資訊28at.com

  • 更多的工具和庫 — 隨著eBPF的流行,可以預(yù)期會有更多的工具和庫出現(xiàn),用于簡化eBPF程序的開發(fā)、調(diào)試和部署。
  • 標(biāo)準(zhǔn)化 — 隨著eBPF的廣泛應(yīng)用,可以期待出現(xiàn)更多的標(biāo)準(zhǔn)和最佳實(shí)踐,以幫助開發(fā)人員更輕松地使用eBPF進(jìn)行可觀測性。
  • 更廣泛的集成 — eBPF將繼續(xù)集成到各種云計(jì)算和容器平臺中,以幫助用戶監(jiān)控和調(diào)試分布式應(yīng)用程序。
  • 更多的可觀測性用例 — 隨著eBPF技術(shù)的不斷發(fā)展,可以預(yù)期將出現(xiàn)更多的創(chuàng)新可觀測性用例,幫助用戶更好地了解和優(yōu)化其應(yīng)用程序和基礎(chǔ)設(shè)施的性能。

總之,eBPF可觀測性是一個充滿潛力的領(lǐng)域,已經(jīng)取得了令人印象深刻的進(jìn)展。它提供了一種強(qiáng)大而靈活的方式來觀察和監(jiān)視應(yīng)用程序和基礎(chǔ)設(shè)施的行為,有望在未來繼續(xù)發(fā)展和成熟。對于那些希望更好地了解和控制其系統(tǒng)的用戶來說,eBPF可觀測性是一個令人興奮的選擇。qh528資訊網(wǎng)——每日最新資訊28at.com

引用鏈接

  • [1] eBPF在Windows上的實(shí)現(xiàn): https://github.com/microsoft/ebpf-for-windows
  • [2] 3000萬行代碼: https://www.phoronix.com/news/Linux-5.12-rc1-Code-Size
  • [3] 這個視頻: https://www.youtube.com/watch?v=DAvZH13725I
  • [4] 論文: https://www.tcpdump.org/papers/bpf-usenix93.pdf
  • [5] Brendan Gregg: https://www.brendangregg.com/
  • [6] Katran: https://engineering.fb.com/2018/05/22/open-source/open-sourcing-katran-a-scalable-network-load-balancer/
  • [7] Facebook.com: http://facebook.com/
  • [8] 網(wǎng)絡(luò)、安全和可觀測性層: https://cloud.google.com/blog/products/containers-kubernetes/bringing-ebpf-and-cilium-to-google-kubernetes-engine
  • [9] Capital One: https://www.youtube.com/watch?v=hwOpCKBaJ-w
  • [10] Adobe: https://www.youtube.com/watch?v=7UQ2CU6UEGY
  • [11] 創(chuàng)建eBPF基金會: https://isovalent.com/blog/post/2021-08-ebpf-foundation-announcement/
  • [12] Cilum: https://github.com/cilium/cilium
  • [13] Google: https://www.youtube.com/watch?v=l8jZ-8uLdVU
  • [14] Shopify: https://www.youtube.com/watch?v=6pVci31Mb6Q
  • [15] 第三方安全產(chǎn)品: https://www.traceable.ai/blog-post/ebpf-and-api-security-with-traceable
  • [16] Cloudflare: https://legacydevconf.info/2.1/session.html?bertin=
  • [17] 1000萬個數(shù)據(jù)包: https://blog.cloudflare.com/how-to-drop-10-million-packets/
  • [18] Katran: https://engineering.fb.com/2018/05/22/open-source/open-sourcing-katran-a-scalable-network-load-balancer/
  • [19] 實(shí)時: https://www.cncf.io/blog/2021/11/17/debugging-with-ebpf-part-1-tracing-go-function-arguments-in-prod/

本文鏈接:http://www.www897cc.com/showinfo-26-13468-0.html解碼eBPF可觀測性:eBPF如何改變我們所知的觀測性

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 為什么 HTTP/3 正在吞噬世界

下一篇: 全球科技行業(yè)兩年裁員40萬,LLM博士卻拿620萬年薪offer?

標(biāo)簽:
  • 熱門焦點(diǎn)
  • 之家push系統(tǒng)迭代之路

    前言在這個信息爆炸的互聯(lián)網(wǎng)時代,能夠及時準(zhǔn)確獲取信息是當(dāng)今社會要解決的關(guān)鍵問題之一。隨著之家用戶體量和內(nèi)容規(guī)模的不斷增大,傳統(tǒng)的靠"主動拉"獲取信息的方式已不能滿足用
  • 重估百度丨“晚熟”的百度云,能等到春天嗎?

    ©自象限原創(chuàng)作者|程心排版|王喻可2016年7月13日,百度云計(jì)算戰(zhàn)略發(fā)布會在北京舉行,宣告著百度智能云的正式啟程。彼時的會場座無虛席,甚至排隊(duì)排到了門外,在場的所有人幾乎都
  • “又被陳思誠騙了”

    作者|張思齊 出品|眾面(ID:ZhongMian_ZM)如今的國產(chǎn)懸疑電影,成了陳思誠的天下。最近大爆電影《消失的她》票房突破30億斷層奪魁暑期檔,陳思誠再度風(fēng)頭無兩。你可以說陳思誠的
  • 花7萬退貨退款無門:誰在縱容淘寶珠寶商家造假?

    來源:極點(diǎn)商業(yè)作者:楊銘在淘寶購買珠寶玉石后,因?yàn)楸WC金不夠賠付,店鋪關(guān)閉,退貨退款難、維權(quán)無門的比比皆是。“提供相關(guān)產(chǎn)品鑒定證書,支持全國復(fù)檢,可以30天無理由退換貨。&
  • OPPO K11搭載長壽版100W超級閃充:26分鐘充滿100%

    據(jù)此前官方宣布,OPPO將于7月25日也就是今天下午14:30舉辦新品發(fā)布會,屆時全新的OPPO K11將正式與大家見面,將主打旗艦影像,和同檔位競品相比,其最大的賣
  • 質(zhì)感不錯!OPPO K11渲染圖曝光:旗艦IMX890傳感器首次下放

    一直以來,OPPO K系列機(jī)型都保持著較為均衡的產(chǎn)品體驗(yàn),歷來都是2K價位的明星機(jī)型,去年推出的OPPO K10和OPPO K10 Pro兩款機(jī)型憑借各自的出色配置,堪稱有
  • 榮耀Magicbook V 14 2021曙光藍(lán)版本正式開售,擁有觸摸屏

    榮耀 Magicbook V 14 2021 曙光藍(lán)版本正式開售,搭載 i7-11390H 處理器與 MX450 顯卡,配備 16GB 內(nèi)存與 512GB SSD,重 1.48kg,厚 14.5mm,具有 1.5mm 鍵盤鍵程、
  • 英特爾Xe HPG游戲顯卡:擁有512EU,單風(fēng)扇版本

    據(jù)10 月 30 日外媒 TheVerge 消息報道,英特爾 Xe HPG Arc Alchemist 的正面實(shí)被曝光,不僅擁有 512 EU 版顯卡,還擁有 128EU 的單風(fēng)扇版本。另外,這款顯卡 PCB
  • 北京:科技教育體驗(yàn)基地開始登記

      北京“科技館之城”科技教育體驗(yàn)基地登記和認(rèn)證工作日前啟動。首批北京科技教育體驗(yàn)基地擬于2023年全國科普日期間掛牌,后續(xù)還將開展常態(tài)化登記。  北京科技教育體驗(yàn)基
Top 主站蜘蛛池模板: 蓬安县| 工布江达县| 汽车| 双流县| 连南| 尼木县| 新竹市| 双柏县| 广灵县| 抚远县| 乌苏市| 长泰县| 台中县| 城市| 花莲市| 青浦区| 武鸣县| 突泉县| 平塘县| 辽宁省| 淄博市| 获嘉县| 汶川县| 色达县| 枝江市| 宾川县| 文山县| 东城区| SHOW| 绥江县| 安康市| 宜君县| 衡南县| 嘉兴市| 黑龙江省| 丹寨县| 峡江县| 克山县| 惠来县| 乌什县| 绍兴市|