BumbleBee - he kete taputapu hei whakangwari i te hanga me te tohatoha o nga kaupapa eBPF

Ko Solo.io, he kamupene e whakawhanake ana i nga hua mo te whakahaere i nga punaha kapua, microservices, ipu taratahi me te rorohiko kore utu, kua whakaputahia a BumbleBee, he kete taputapu puna tuwhera e whai ana ki te whakangwari i te whakaritenga, te tohatoha me te whakarewatanga o nga kaupapa eBPF e rere ana i roto i tetahi miihini mariko motuhake o roto. te kernel Linux me te tuku i nga mahi whatunga tukatuka, te whakahaere urunga me nga punaha aroturuki. Ka tuhia te waehere ki te Haere ka tohatohahia i raro i te raihana Apache 2.0.

Ma te BumbleBee ka taea te kiki i tetahi kaupapa eBPF hei ahua ipu ki te whakatakotoranga OCI (Open Container Initiative), ka taea te whakahaere i runga i tetahi punaha kaore he whakahiato me te whakamahi i etahi atu waahanga ki te waahi kaiwhakamahi. Ko te taunekeneke ki te waehere eBPF i roto i te matua, tae atu ki te tukatuka o nga raraunga ka puta mai i te kaihautu eBPF, ka tangohia e BumbleBee, ka kaweake aunoatia enei raraunga i roto i te ahua o nga ine, histograms, rangitaki ranei, ka taea te uru atu, hei tauira, ma te whakamahi i te whaipainga curl. Ko te huarahi e whakaarohia ana ka taea e te kaiwhakawhanake te aro ki te tuhi i te waehere eBPF me te kore e whakararu i te whakahaere i te taunekeneke me tenei waehere mai i te waahi kaiwhakamahi, te huihuinga me te uta ki roto i te kernel.

Hei whakahaere i nga kaupapa eBPF, ka tukuna he taputapu "bee" momo Docker, ka taea e koe te tango tonu i te kaikawe eBPF o nga paanga mai i te putunga o waho ka whakahaere i runga i te punaha o te rohe. Ko te kete taputapu ka taea e koe te whakaputa anga waehere ki C mo nga kaikawe eBPF o tetahi kaupapa kua tohua (i tenei wa ko nga kaihautu anake mo nga mahi whatunga me nga konae ka haukotia nga waea ki te puranga whatunga me nga punaha konae kei te tautokohia). I runga i te anga i hangaia, ka taea e te kaiwhakawhanake te whakatinana tere i nga mahi e hiahia ana ia.

Kaore i rite ki te BCC (BPF Compiler Collection), kaore a BumbleBee e hanga katoa i te waehere kaihautu mo ia putanga o te kernel Linux (ka whakamahi a BCC i te whakahiato-a-rangi ma te whakamahi Clang i nga wa katoa ka whakarewahia te kaupapa eBPF). Hei whakatau i nga raruraru me te kawe, kei te whakawhanakehia nga taputapu CO-RE me te libbpf, ka taea e koe te hanga waehere kotahi anake me te whakamahi i tetahi utauta motuhake mo te ao katoa e urutau ana i te kaupapa kua utaina ki te kernel o naianei me te BTF Type Format. Ko te BumbleBee he taapiri ki te libbpf me te whakarato momo taapiri mo te whakamaori aunoa me te whakaatu i nga raraunga kei roto i nga hanganga mahere eBPF paerewa RingBuffer me HashMap.

Hei hanga i te kaupapa eBPF whakamutunga ka penapena hei ahua OCI, whakahaere noa i te whakahau "bee build file_with_code name:version", me te whakahaere i te whakahau "bee run name:version". Ma te taunoa, ka puta nga huihuinga mai i te kaihautu ki te matapihi tauranga, engari mena e tika ana, ka taea e koe te tiki raraunga ma te whakamahi i nga taputapu curl, wget ranei ki te tauranga whatunga kua herea ki te kaihautu. Ka taea te tohatoha nga Kaihautu ma roto i nga putunga hototahi-OCI, hei tauira, ki te whakahaere i tetahi kaihautu o waho mai i te putunga ghcr.io (GitHub Container Registry), ka taea e koe te whakahaere i te whakahau "bee run ghcr.io/solo-io/bumblebee/tcpconnect: $(putanga pi)". Hei whakanoho i tetahi kaihautu ki roto i te putunga, ka tukuna te whakahau "bee pana", me te here i tetahi putanga, "bee tag".

Source: opennet.ru

Tāpiri i te kōrero