BumbleBee, отличен проект за опростяване на създаването и разпространението на eBPF програми

solo.io, компанията за облачни изчисления, микроуслуги, пясъчни и безсървърни, представи проекта с отворен код "BumbleBee". Новият проект опростява изживяването на разработчиците за изграждане, пакетиране и разпространение на инструменти на eBPF, според Соло.

земна пчела автоматично генерира код за потребителско пространство шаблон за разработване на инструменти на eBPF, обясниха от компанията. Той също така предоставя изживяване, подобно на Docker за пакетиране на програма eBPF. Това ви позволява да се свържете с други работни потоци на OCI изображения за публикуване и разпространение.

Относно BumbleBee

земна пчела прави възможно пакетирането на eBPF програма като изображение на контейнер от Open Container Initiative (OCI), който може да работи на всяка система без прекомпилиране или използване на допълнителни компоненти в потребителското пространство.

Взаимодействието с eBPF кода в ядрото, включително обработката на данни, идващи от eBPF процесора, се обработва от BumbleBee, който автоматично експортира тези данни под формата на показатели, хистограми или регистрационни файлове, до които може да бъде достъпен, например, чрез помощната програма curl. Предложеният подход позволява на разработчика да се концентрира върху писането на eBPF код. и да не се разсейвате, като организирате взаимодействие с този код от потребителско пространство, сглобяване и зареждане в ядрото.

Главният изпълнителен директор на Solo.io, Идит Левайн казва, че:

Компанията разработи BumbleBee за автоматично генериране на стандартния код на потребителското пространство, който е необходим за достъп до eBPF технологии, които се изпълняват на ниво ядро. BumbleBee включва интерфейс на командния ред (CLI), който автоматично генерира код на потребителското пространство за eBPF програми чрез автоматично излагане на карти като регистрационни файлове, метрики и хистограми.

За да управлявате eBPF програми, Осигурена е помощна програма "пчела" в стил Docker, с която можете незабавно да изтеглите драйвера за eBPF от външно хранилище и го стартирайте в локалната система.

Инструментариумът ви позволява да генерирате рамка на C код за eBPF драйверите на избрана тема (в момента се поддържат само файлови и мрежови драйвери, които прихващат повиквания към мрежовия стек и файловите системи). Въз основа на генерираната рамка разработчикът може бързо да приложи функционалността, която го интересува.

За разлика от BCC (BPF Compiler Collection), BumbleBee не възстановява напълно кода на драйвера за всяка версия на ядрото Linux (BCC използва компилация в движение с Clang всеки път, когато се стартира програмата eBPF).

За да разрешите проблеми с преносимост, Развиват се комплектите инструменти 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 използва мрежов софтуер Cilium с отворен код в рамките на своите управлявани предложения на Kubernetes. 

В бъдеще обаче Левайн казва, че сега е само въпрос на време eBPF да стане много по-широко приет, тъй като повече операционни системи позволяват тази възможност.

Накрая ако искате да научите повече за това, можете да проверите подробностите В следващия линк.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.