BumbleBee нь eBPF програмуудыг үүсгэх, түгээх ажлыг хялбарчлах гайхалтай төсөл юм

solo.io, үүлэн тооцооллын компани, бичил үйлчилгээ, хамгаалалттай, сервергүй, "BumbleBee" нээлттэй эхийн төслийг танилцууллаа.. Шинэ төсөл нь хөгжүүлэгчийн туршлагыг хялбаршуулсан eBPF хэрэгслийг бүтээх, багцлах, түгээх, Сологийн хэлснээр.

зөгий автоматаар хэрэглэгчийн орон зайн кодыг үүсгэдэг eBPF хэрэгслүүдийг хөгжүүлэхэд зориулагдсан гэж тус компани тайлбарлав. Энэ нь мөн Docker-тэй төстэй туршлагыг өгдөг eBPF програмыг багцлах. Энэ нь танд нийтлэх, түгээх зорилгоор бусад OCI зургийн ажлын урсгалтай холбогдох боломжийг олгоно.

BumbleBee-ийн тухай

зөгий eBPF програмыг контейнерийн дүрс болгон багцлах боломжтой болгодог ямар ч систем дээр ажиллах боломжтой Open Container Initiative (OCI)-аас дахин эмхэтгэх, нэмэлт бүрэлдэхүүн хэсгүүдийг ашиглахгүйгээр хэрэглэгчийн орон зайд.

Цөм дэх eBPF кодтой харилцах, түүний дотор eBPF процессороос ирж буй өгөгдлийн боловсруулалтыг BumbleBee хариуцдаг бөгөөд энэ өгөгдлийг хэмжигдэхүүн, гистограмм эсвэл лог хэлбэрээр автоматаар экспортлодог бөгөөд жишээлбэл, ашиглах боломжтой. curl хэрэгсэл. Санал болгож буй арга нь хөгжүүлэгчид eBPF код бичихэд анхаарлаа төвлөрүүлэх боломжийг олгодог. Хэрэглэгчийн орон зай, угсралт, цөмд ачаалагдахаас эхлээд энэ кодтой харилцах ажлыг зохион байгуулахад анхаарал сарниулах хэрэггүй.

Solo.io-ийн гүйцэтгэх захирал, Идит Левин хэлэхдээ:

Тус компани нь цөмийн түвшинд ажилладаг eBPF технологид нэвтрэхэд шаардлагатай хэрэглэгчийн зайны кодыг автоматаар үүсгэхийн тулд BumbleBee-г боловсруулсан. BumbleBee нь лог, хэмжигдэхүүн, гистограмм зэрэг газрын зургийг автоматаар ил гаргах замаар eBPF программуудын хэрэглэгчийн зайны кодыг автоматаар үүсгэдэг тушаалын мөрийн интерфейсийг (CLI) агуулдаг.

eBPF програмуудыг удирдахын тулд, Докер маягийн "зөгий" хэрэглүүрийг өгсөн бөгөөд үүний тусламжтайгаар та eBPF драйверийг шууд татаж авах боломжтой гадаад репозитороос сонирхож, дотоод систем дээр ажиллуул.

Хэрэгслийн хэрэгсэл нь сонгосон сэдвийн eBPF драйверуудад зориулж C кодын хүрээ үүсгэх боломжийг олгодог (одоогоор зөвхөн сүлжээний стек болон файлын систем рүү залгасан дуудлагыг таслан зогсоох файл болон сүлжээний драйверуудыг дэмждэг). Үүсгэсэн хүрээн дээр үндэслэн хөгжүүлэгч нь түүний сонирхсон функцийг хурдан хэрэгжүүлэх боломжтой.

BCC (BPF Compiler Collection) -ээс ялгаатай нь BumbleBee нь цөмийн хувилбар бүрийн драйверын кодыг бүрэн сэргээдэггүй Линукс (BCC нь eBPF програмыг ажиллуулах бүрт Clang-тэй шууд эмхэтгэлийг ашигладаг).

Зөөврийн асуудлыг шийдвэрлэхийн тулд, Хөгжиж байна хэрэгслийн иж бүрдэл CO-RE болон libbpf нь кодыг нэг удаа эмхэтгэх боломжийг олгодог ачаалагдсан программыг одоогийн цөм болон BTF (BPF Type Format) төрөлд тохируулдаг тусгай бүх нийтийн дуудагч ашиглана уу.

BumbleBee нь libbpf-ийн дээд талын залгаас бөгөөд стандарт RingBuffer болон HashMap eBPF газрын зургийн бүтцэд байрлуулсан өгөгдлийг автоматаар тайлбарлах, харуулах нэмэлт төрлүүдийг өгдөг.

Эцсийн eBPF програмыг бүтээж, OCI дүрс болгон хадгалахын тулд дараах тушаалыг ажиллуулна уу:

bee build file_with_code name:version

Мөн тушаалыг ажиллуул

bee run name:version

Анхдагч байдлаар, хянагчаас хүлээн авсан үйл явдлууд нь терминалын цонхонд харагдах боловч шаардлагатай бол хянагчтай холбогдсон сүлжээний порт дээрх curl эсвэл wget хэрэгслийг дуудаж өгөгдлийг авах боломжтой.

Драйверуудыг OCI-д нийцсэн репозиторуудаар тарааж болно, жишээлбэл, ghcr.io (GitHub Container Registry) репозитороос гадаад драйвер ажиллуулахын тулд та тушаалыг ажиллуулж болно.

bee run ghcr.io/solo-io/bumblebee/tcpconnect:$(bee version)

Хянагчийг репозиторт оруулахын тулд командыг санал болгож байна

bee push

Мөн хувилбарыг холбохын тулд

bee tag

eBPF-ийн хамгийн том давуу тал бол зүгээр л үр ашиг юм. Аюулгүй байдал, сүлжээ, хадгалах платформыг боловсруулахад шаардагдах нийт зардал нь илүү олон үйлчилгээ үзүүлэгчид боломжоо ашиглах тусам буурах ёстой. 

Одоогоор, eBPF-ийг үүлэн үйлчилгээ үзүүлэгч зэрэг вэб хэмжээний компаниуд өргөнөөр ашигладаг. Facebook үүнийг дата төвүүддээ програм хангамжаар тодорхойлсон ачааллын тэнцвэржүүлэгч болгон ашиглаж байгаа бол Google нь Kubernetes-ийн санал болгож буй нээлттэй эхийн Cilium сүлжээний програм хангамжийг ашиглаж байна. 

Цаашид, илүү олон үйлдлийн системүүд энэ боломжийг идэвхжүүлснээр eBPF илүү өргөн тархсан болох нь цаг хугацааны л асуудал гэж Левин хэлэв.

Эцэст нь Хэрэв та энэ талаар илүү ихийг мэдэхийг хүсч байвал, та дэлгэрэнгүй мэдээллийг шалгаж болно Дараах холбоос дээр.


Сэтгэгдэл бичих эхний хүн бай

Сэтгэгдэлээ үлдээгээрэй

Таны и-мэйл хаяг хэвлэгдсэн байх болно. Шаардлагатай талбарууд нь тэмдэглэгдсэн байна *

*

*

  1. Мэдээллийг хариуцах: AB Internet Networks 2008 SL
  2. Мэдээллийн зорилго: СПАМ-ыг хянах, сэтгэгдлийн менежмент.
  3. Хууль ёсны байдал: Таны зөвшөөрөл
  4. Мэдээллийн харилцаа холбоо: Хуулийн үүргээс бусад тохиолдолд мэдээллийг гуравдагч этгээдэд дамжуулахгүй.
  5. Өгөгдөл хадгалах: Occentus Networks (ЕХ) -с зохион байгуулсан мэдээллийн сан
  6. Эрх: Та хүссэн үедээ мэдээллээ хязгаарлаж, сэргээж, устгаж болно.