All’interno dell’articolo di The New Stack intitolato appunto How Meta Patches Linux at Hyperscale viene infatti descritta la modalità con cui i milioni (sì, avete letto bene, non migliaia) di server Linux vengono aggiornati. Modalità che, letteralmente per la legge dei grandi numeri, non può essere quella “classica” in cui un host viene riavviato per l’applicazione delle eventuali patch.
Questo perché, come spiega l’articolo, “Draining and un-draining hosts is hard“, infatti quando un host come quelli di Facebook deve essere riavviato, onde evitare disservizi, va svuotato del proprio carico il quale viene ripartito su altri server. Si fa in fretta a capire come un approccio simile, dati i numeri, sia complicato da applicare.
Ecco perché Meta utilizza il Kernel Live Patching (KLP) che mediante la tecnologia Kpatch promossa da Red Hat consente di applicare le patch live, senza cioè dover riavviare la macchina. In realtà Kpatch non è “niente di nuovo sotto il sole”, pensate infatti che la prima volta in cui ne abbiamo parlato qui sul portare era quasi dieci anni fa, nell’articolo Red Hat introduce il patching del kernel live con Kpatch ed ancora prima, nel febbraio del 2014 raccontavamo di Kgraft, lo stesso tipo di tecnologia ma in salsa SUSE.