bpftune, det nye automatiske BPF-optimeringssystem til Linux

bpftune

bpftune sigter mod at give letvægts, altid tændt automatisk tuning af systemets adfærd.

nylig Oracle afsløret ved at sende dit nye system "bpftune" hvilken en er designet til automatisk at optimere kernekonfigurationen baseret på udførte opgaver, systemaktivitet og belastningsmønstre.

bpftune kører i baggrunden og overvåger systemudnyttelsen og netværksstakken. Årsagen til oprettelsen af ​​projektet er behovet for at optimere selvstændige systemer designet til at arbejde med minimal administratorintervention, såvel som den stigende kompleksitet af den moderne kerne, hvilket øger arbejdet med manuelle optimeringer.

Og det kernen giver mere end 1500 parametre som påvirker ydeevne og ressourceforbrug, og ofte kopierer administratoren blot færdige opskrifter uden at dykke ned i deres essens i detaljer og håbe på, at de vil hjælpe).

Bpftune justerer automatisk og løbende kernekonfigurationen. Systemet overvåges ved hjælp af de tilsvarende funktioner i Berkeley Packet Filter (BPF).

Linux-kernen indeholder over 1500 indstillelige parametre, og korrekt indstilling af disse parametre kan forbedre systemets ydeevne og udnyttelse markant! I årevis har vi forsøgt at give de korrekte hints til disse justerbare parametre gennem softwareudgivelsesbemærkninger og forbedrede standardindstillinger, men mange systembelastninger vil drage fordel af dynamisk justering af disse værdier.

Vi introducerer bpftune, en automatisk konfigurator, der overvåger dine arbejdsbelastninger og indstiller de korrekte kerneparameterværdier! bpftune er et open source-projekt tilgængeligt i Oracle Linux-lagrene

Om Bpftune

Bpftune overvåger løbende systemets status, justerer adaptivt kerneparametre, der påvirker ydeevnen, og evaluerer ændret adfærd for at opnå optimale resultater. Tak til BPF, ikke kun statistik tages i betragtning af hele systemet, men også detaljerne i de enkelte komponenters adfærd, som for eksempel giver dig mulighed for at justere indstillinger på niveau med individuelle stikkontakter og enheder.

Gennemførelsen af individuelle optimeringer overført til plugins som indlæses under processtart i form af biblioteker. Hvert plugin, der implementerer en bestemt optimering, indeholder en BPF-driver, der kører i kernen og en komponent, der kører i brugerrummet.

De vigtigste fordele, det giver, er:

  • Kontinuerlig overvågning og tuning af systemadfærd gennem brug af BPF (Berkeley Packet Filter) observationsfunktioner.
  • Tuning af systemadfærd på et finkornet niveau, gjort muligt, fordi vi kan observere flere detaljer om systemtilstanden ved hjælp af BPF.

Alle plugins bruger en fælles global BPF-ringbuffer til at videregive kernehændelser til brugerområdet. Plugins kan vælges efter administratorens behov og de kan også deaktiveres automatisk, hvis administratoren manuelt ændrer kernekonfigurationen forbundet med dem.

Under den automatiske tuning-proces, bpftune forsøger at opnå den optimale balance mellem udbud og forbrug af ressourcer, under hensyntagen til ændringernes indirekte virkning. For at øge ydeevnen skal du for eksempel øge størrelsen af ​​netværksbufferen, men en forøgelse af den fører til højere hukommelsesforbrug og længere dataoverførselsforsinkelser, så disse parametre skal tages i betragtning, når bufferstørrelsen øges. .

Plugins, der er tilgængelige til brug, omfatter:

  • bpftune-tcp-cong: automatisk valg af optimal netværkskontrolalgoritme
  • bpftune-neigh: automatisk valg af MAC-adressetabellens størrelse for naboværter
  • bpftune-route: Automatisk valg af størrelse på routingtabel.
  • bpftune-sysctl – Overvåger sysctl-indstillinger og deaktiverer den tilknyttede tuner, hvis den er i konflikt med manuelle indstillinger.
  • bpftune-tcp-buffer: automatisk valg af initial- og maksimumstørrelser af TCP-buffere
  • bpftune-net-buffer: automatisk konfiguration af grundlæggende netværksbuffere
  • bpftune-netns – Sporer tilføjelse og fjernelse af netværksnavneområder (netnavnerum)

Endelig hvis du er interesseret i at vide mere om det, skal du vide, at koden for projektet er skrevet på C-sprog og distribueres under GPLv2-licensen, og du kan kontrollere detaljerne i følgende link.


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.