Parker: la nova tecnologia que permet executar múltiples kernels de Linux sense virtualització

  • Parker és una proposta de ByteDance per executar múltiples nuclis de Linux sense virtualització.
  • Cada nucli opera sobre la seva pròpia partició de CPU, memòria i dispositius.
  • El nucli principal gestiona el maquinari mentre els secundaris funcionen de manera independent.
  • La versió inicial no compta amb aïllament de fallades entre kernels.
  • L'objectiu principal és millorar l'escalabilitat en sistemes amb una gran quantitat de nuclis.

ByteDance-Parker-multikernel

Fa pocs dies es va donar a conèixer la notícia que la companyia ByteDance (creadora de TikTok), ha sorprès la comunitat del programari lliure amb la publicació de Parker (PARtitioned KERnel), una tecnologia experimental que permet executar diversos nuclis de Linux de manera simultània en una sola màquina física, sense dependre de solucions de virtualització tradicionals com a KVM.

Aquest avenç, proposat a través de la llista de correu de desenvolupadors del nucli de Linux, apunta a resoldre un dels desafiaments més importants en els sistemes moderns: l'escalabilitat en equips amb grans quantitats de nuclis de CPU.

Hola a tots,

Parker és una característica proposada a Linux perquè s'executin múltiples nuclis de Linux.
simultàniament en una sola màquina, sense la virtualització KVM tradicional. Això
S'aconsegueix particionar els nuclis de la CPU, la memòria i els dispositius per
nucli de Linux que té en compte les particions.

Parker, una solució sense hipervisors ni màquines virtuals

Parker es basa en un concepte de particionament físic del maquinari, dividint els nuclis de CPU, la memòria i els dispositius d'entrada/sortida a regions independents. Cada instància del nucli (anomenada kernel d'aplicació) opera sobre els seus propis recursos assignats, mentre que el nucli d'arrencada (o boot kernel) gestiona la configuració inicial del sistema i l'assignació del maquinari.

A diferència de la virtualització tradicional, totes les instàncies de Parker comparteixen una mateixa imatge del nucli, cosa que simplifica la implementació i redueix la sobrecàrrega d'execució. No obstant això, cadascuna pot tenir les seves pròpies optimitzacions, configuracions i paràmetres de rendiment, adaptant-se a diferents càrregues de treball o escenaris dús.

Funcionament intern i gestió de recursos

El mecanisme central de Parker utilitza kexec per carregar dinàmicament noves instàncies del nucli en regions de memòria reservades. Abans d'iniciar aquestes instàncies, el nucli principal allibera nuclis de CPU, reserva memòria física mitjançant CMA (Contiguous Memory Allocator) i desvincula dispositius PCI que seran dedicats als kernels secundaris.

Cada partició requereix els vostres propis dispositius PCIe, com a unitats NVMe o adaptadors de xarxa dedicats, el que garanteix un entorn d'E/S completament independent. Parker, a més, ofereix una interfície d'administració basada en kernfs, que permet gestionar les particions i supervisar l'estat de cada nucli en execució.

Limitacions actuals i full de ruta futur

En aquesta primera versió, totes les instàncies del kernel comparteixen el mateix domini d'aïllament, lo que significa que una fallada en una podria afectar el sistema complet. ByteDance reconeix aquesta limitació com una decisió de disseny inicial, prioritzant la simplicitat i la baixa sobrecàrrega sobre l'aïllament complet.

No obstant això, els desenvolupadors ja planegen aprofitar capacitats d'aïllament a nivell de maquinari, com les tecnologies de virtualització assistida per CPU, per millorar la tolerància a fallades i permetre que cada kernel funcioni de manera totalment autònoma i segura.

Tot i que Parker comparteix el mateix objectiu que el projecte Multikernel (presentat recentment per altres desenvolupadors de l'ecosistema Linux), tots dos difereixen tant en la seva arquitectura com en el seu enfocament tècnic. Parker adopta un model de nucli compartit i recursos físicament segmentats, mentre que Multikernel busca un entorn de cooperació entre múltiples nuclis coordinats.

ByteDance subratlla que la seva implementació és completament independent i espera que la comunitat de desenvolupadors aporti idees i comentaris per refinar aquesta tecnologia.

Cal esmentar que Parker es perfila com un experiment prometedor que podria redefinir la manera com el nucli de Linux escala en servidors multinucli. En eliminar la capa de virtualització tradicional i aprofitar directament els recursos físics, aquesta tecnologia obre el camí a més eficiència, menor latència i configuracions més flexibles en sistemes dalt rendiment.

Tot i que fins i tot en fase primerenca, la iniciativa de ByteDance demostra el creixent interès de les grans companyies tecnològiques per innovar dins del nucli de Linux, consolidant el seu paper no només com a usuari del sistema, sinó com un actor actiu en la seva evolució.

Finalment, si estàs interessat a poder conèixer més sobre això, pots consultar els detalls al següent enllaç.