BumbleBee - ib lub cuab yeej los ua kom yooj yim rau kev tsim thiab faib cov kev pab cuam eBPF

Solo.io, lub tuam txhab uas tsim cov khoom lag luam rau kev khiav haujlwm huab cua, microservices, cov thawv cais thiab serverless suav, tau luam tawm BumbleBee, cov cuab yeej qhib rau kev yooj yim rau kev npaj, faib thiab tso tawm ntawm eBPF cov kev pab cuam uas khiav hauv lub tshuab virtual tshwj xeeb sab hauv. lub Linux kernel thiab tso cai rau kev ua haujlwm network, tswj kev nkag mus thiab saib xyuas cov tshuab. Cov cai tau sau rau hauv Go thiab faib raws li Apache 2.0 daim ntawv tso cai.

BumbleBee ua rau nws tuaj yeem ntim cov kev pabcuam eBPF ua cov duab ntim hauv OCI (Open Container Initiative) hom, uas tuaj yeem khiav ntawm txhua qhov system yam tsis muaj kev rov ua dua thiab siv cov khoom siv ntxiv hauv cov neeg siv qhov chaw. Kev cuam tshuam nrog eBPF code hauv cov tub ntxhais kawm, suav nrog kev ua cov ntaub ntawv los ntawm eBPF handler, raug coj los ntawm BumbleBee, uas cia li xa tawm cov ntaub ntawv no hauv daim ntawv ntsuas, histograms lossis cov cav, uas tuaj yeem nkag tau, piv txwv li, siv cov Curl siv. Txoj kev npaj tau tso cai rau tus tsim tawm tsom mus rau kev sau eBPF code thiab tsis txhob cuam tshuam los ntawm kev teeb tsa kev sib cuam tshuam nrog cov cai no los ntawm cov neeg siv qhov chaw, sib sau ua ke thiab thauj mus rau hauv cov ntsiav.

Txhawm rau tswj hwm eBPF cov kev pab cuam, Docker-style "bee" kev siv hluav taws xob tau muab, uas koj tuaj yeem rub tawm tam sim ntawd eBPF tus neeg saib xyuas kev txaus siab los ntawm qhov chaw cia sab nraud thiab khiav nws ntawm lub hauv paus system. Cov cuab yeej tso cai rau koj los tsim cov txheej txheem cai hauv C rau eBPF cov neeg ua haujlwm ntawm cov ncauj lus xaiv (tam sim no tsuas yog cov neeg ua haujlwm rau lub network thiab cov haujlwm ua haujlwm uas cuam tshuam kev hu mus rau pawg network thiab cov ntaub ntawv tau txais kev txhawb nqa). Raws li lub moj khaum tsim, tus tsim tawm tuaj yeem siv sai sai rau kev ua haujlwm uas nws nyiam.

Tsis zoo li BCC (BPF Compiler Collection), BumbleBee tsis tas rov tsim kho tus neeg tuav ntaub ntawv rau txhua lub version ntawm Linux kernel (BCC siv on-the-fly compilation siv Clang txhua zaus eBPF program yog launched). Txhawm rau daws cov teeb meem nrog kev txav mus los, CO-RE thiab libbpf cov cuab yeej tab tom tsim, tso cai rau koj los tsim cov cai ib zaug thiab siv lub tshuab thauj khoom tshwj xeeb thoob ntiaj teb uas hloov cov kev pabcuam thauj khoom mus rau cov ntsiav tam sim no thiab BTF Hom Hom. BumbleBee yog ib qho ntxiv rau libbpf thiab muab ntau hom kev txhais lus tsis siv neeg thiab tso saib cov ntaub ntawv nyob rau hauv tus qauv eBPF daim ntawv qhia qauv RingBuffer thiab HashMap.

Txhawm rau tsim qhov kawg eBPF qhov kev pab cuam thiab txuag nws ua ib daim duab OCI, tsuas yog khiav cov lus txib "bee build file_with_code name:version", thiab khiav cov lus txib "bee run name:version". Los ntawm lub neej ntawd, cov xwm txheej tau txais los ntawm tus neeg tuav ntaub ntawv yuav raug tso tawm rau lub qhov rais davhlau ya nyob twg, tab sis yog tias tsim nyog, koj tuaj yeem tau txais cov ntaub ntawv los ntawm kev siv curl lossis wget utilities rau lub network chaw nres nkoj khi rau tus tuav. Cov neeg tuav tuaj yeem muab faib los ntawm OCI-compatible repositories, piv txwv li, khiav ib tus neeg sab nraud los ntawm ghcr.io repository (GitHub Container Registry), koj tuaj yeem khiav cov lus txib "bee run ghcr.io/solo-io/bumblebee/tcpconnect: $(bee version)”. Txhawm rau tso tus neeg tuav pov hwm rau hauv qhov chaw cia khoom, cov lus txib "bee push" yog npaj, thiab khi ib qho version, "npiv tag".

Tau qhov twg los: opennet.ru

Ntxiv ib saib