A la documentació de Ceph hi ha una taula que no apareix en cap nota de premsa i que ordena la feina d'aquesta tardor millor que qualsevol full de ruta: la de cicle de vida de les versions. Diu que Squid (19.2) —la branca que hi ha sota gairebé tots els clústers hiperconvergents muntats els darrers dos anys— té el final de vida estimat el 19 de setembre del 2026. Cinquanta dies des d'avui. El que fa mal arriba quan ho mires de prop: actualitzar Ceph gairebé mai no cap en una sola finestra.
Operem Proxmox VE amb Ceph en producció repartit en diversos datacenters, així que aquest compte enrere ens toca de ple i l'hem fet per a nosaltres abans d'escriure'l. Això és el que n'hem tret: les dates reals, la seqüència obligada i l'ordre en què va, dos canvis de Tentacle que passen desapercebuts i la seqüència concreta d'ordres. Res d'això és dramàtic. El que surt car és descobrir-ho el dissabte a les onze de la nit.
Les tres dates que manen
Tot surt de la taula oficial de versions. Les dates de final de vida futures estan marcades com a estimades, i convé llegir-les així: el projecte publica una intenció i ja l'ha moguda altres vegades.
Llegit del dret: Squid va rebre una versió de manteniment a mitjan juliol i li queden set setmanes. Tentacle porta vuit mesos de rodatge i dues versions de manteniment a sobre. Reef és entre les arxivades des del març de l'any passat, és a dir, sense manteniment; si el teu clúster encara hi és, la conversa és una altra i més urgent.
A Proxmox la cosa va anar al seu propi ritme. Quan Tentacle va arribar als seus repositoris, al gener, era només a test i amb l'etiqueta de vista prèvia ben posada. Ja no: Proxmox VE 9.2, del 21 de maig, va canviar el valor per defecte per a instal·lacions noves —pveceph install en un node sense Ceph i l'assistent d'un clúster sense Ceph ja proposen Tentacle 20.2.1—, i un desenvolupador de Proxmox ho va confirmar per escrit al juliol: va quedar marcat com a estable amb la 9.2. Els clústers que ja existeixen no es mouen sols, perquè l'assistent continua fixant els nodes nous a la versió que el clúster ja fa servir. Aquesta part continua sent feina teva.
Per què no és un salt, són tres
Aquí hi ha el nus. Ceph, en un clúster hiperconvergent, no s'actualitza sol: va lligat a la versió de Proxmox que té a sota. La guia oficial de Squid a Tentacle demana Proxmox VE 9.1 o superior (amb pve-manager 9.1.4 o més nou i paquets de Ceph 19.2.3-pve3 endavant). I la guia d'actualització de Proxmox VE 8 a 9 demana el contrari a l'altre extrem: portar Ceph a Squid abans de començar el salt de l'hipervisor.
Ajunta les dues regles i en surt una seqüència que no tria ningú: Ceph a Squid → Proxmox VE a 9 → Ceph a Tentacle. Tres feines diferents, cadascuna amb la seva finestra i la seva comprovació de l'endemà. Si ets a Reef i a Proxmox VE 8, les tens totes tres al davant i, a més, la branca 8 de l'hipervisor caduca aquest agost: en vam parlar fa dos dies a l'article sobre el final de suport de Proxmox VE 8. Dos comptes enrere encadenats —el de la branca 8, que Proxmox data només per mes (2026-08), i el de Squid, que sí que té dia: el 19 de setembre— i un ordre que no admet dreceres.
Upstream, per cert, és una mica més permissiu: les notes de Tentacle diuen que cal ser a Reef (18.2.z) o a Squid (19.2.z) per fer el salt. Però a Proxmox el que hi ha documentat són dues guies separades, Reef a Squid i Squid a Tentacle, i nosaltres anem amb les guies. En emmagatzematge distribuït, la creativitat es paga amb dades.
Quinze minuts de comprovacions abans de decidir res
Abans de posar dates en un calendari cal saber d'on se surt. Això es fa avui, amb el clúster tranquil i a plena llum del dia, no la nit de la finestra:
Amb aquestes sis sortides ja saps a quin esglaó ets, quantes finestres et separen de Tentacle i —això es mira poc— si el salt et deixarà sense visibilitat. Hi anem.
El mòdul que desapareix (i a qui li farà mal)
Tentacle elimina dos mòduls del manager: mgr/restful i mgr/zabbix. Les notes de la versió van al gra: estaven obsolets des del 2020, ningú no els mantenia activament i arrossegaven vulnerabilitats a la seva cadena de dependències. Com a decisió de projecte ens sembla la correcta —codi sense amo dins del component que ho veu tot del clúster acaba costant més del que dóna—, però si el teu monitoratge de Ceph hi passa, el dia que actualitzis deixes de rebre dades i l'avís te'l donarà el silenci.
Nosaltres monitoritzem amb Zabbix, i el que en traiem és simple: el monitoratge va dins del pla d'actualització, no en les seves conseqüències. Si ceph mgr module ls et torna zabbix entre els actius, la substitució (el mòdul prometheus del mateix manager, la via de l'agent, o la integració que Proxmox va publicar aquest any i que vam comentar a aquest article) es munta i es valida abans del salt, no després. Un clúster sense mètriques just la setmana en què acabes de tocar-lo és exactament el moment en què més les necessites.
El que canvia de debò a Tentacle
La llista de novetats és llarga; el que de debò mou l'agulla en un clúster d'empresa cap en quatre punts, i tres d'ells tenen lletra petita:
- ✓Optimitzacions per a erasure coding (FastEC): lectures i escriptures parcials en pools amb codi d'esborrat, que és justament on aquest tipus de pool ho passava pitjor. La lletra petita: no s'activen soles. Cal posar el flag
allow_ec_optimizationsa cada pool, i els pools existents només poden fer-ho un cop actualitzats els OSD i els monitors. Si tens dubtes sobre si el teu pool hauria de ser rèplica o codi d'esborrat, aquest debat el vam fer amb els comptes fets a rèplica 3 enfront d'erasure coding. - ✓BlueStore millora la compressió i estrena un WAL més ràpid. És la mena de millora que no es nota en una demo i sí a la cua d'escriptures d'un dimarts al matí. Aquí no cal fer res: ve amb el salt.
- ✓El plugin per defecte d'erasure coding passa de Jerasure a ISA-L, perquè Jerasure ja no es manté. Compte amb el matís, que és el que evita ensurts: només afecta els clústers creats a Tentacle o posterior. Els que actualitzen conserven els seus valors per defecte i els seus pools no es toquen.
- ✓mClock incorpora llindars mínims d'IOPS en mesurar la capacitat de cada OSD (50 en disc mecànic, 1.000 en SSD, tots dos configurables). Traduït: si una mesura surt absurdament baixa, el planificador deixa de creure-se-la. És una d'aquelles millores que només aprecies si alguna vegada has vist un clúster autoestrangular-se per una mesura dolenta.
I sobre aquest primer punt, un avís amb història. A la 20.2.0, activar allow_ec_optimizations sobre un pool de codi d'esborrat ja existent va tombar OSD en cadena en un clúster real —hi ha una anàlisi pública de l'incident, del gener, amb la traça a ECTransaction::WritePlanObj— i a més va aparèixer una tanda d'errors de scrub que van resultar ser falsos positius: en activar les optimitzacions, els objectes escrits abans deixen d'anar emplenats fins a l'amplada de la franja i el comprovador es confonia. La 20.2.1, d'abril, porta correccions d'aquesta part (entre altres, prohibir les optimitzacions quan la mida del tros no està alineada a 4K) i la branca ja va per la 20.2.2. Res d'això és motiu per no anar a Tentacle. És motiu per activar el flag en un pool, mirar-lo una setmana amb calma i continuar després, en comptes d'encendre'l a tots la mateixa tarda.
Cap d'aquestes quatre coses justifica per si sola una finestra de manteniment. La raó per saltar continua sent la de sempre i és més avorrida: a l'altra banda del setembre, Squid deixa de rebre arreglaments, i les correccions de seguretat a la capa on viuen les dades no són opcionals.
L'ordre del salt, sense misteri
La seqüència de Squid a Tentacle és al wiki oficial i és curta. El que no és al wiki és el ritme: entre pas i pas s'espera que el clúster torni a HEALTH_OK, i ningú no té pressa.
Dos avisos que el wiki dona i que convé tenir presents. Si fas servir CephFS, els dimonis MDS tenen la seva pròpia coreografia: es desactiva el standby replay, es baixa el nombre de rangs actius a un, s'aturen els MDS en espera, es reinicia el que queda, es tornen a arrencar els altres i al final es restauren max_mds i el standby replay. I entre el punt 5 i el 6 el clúster et dirà que tots els OSD corren Tentacle però que require_osd_release continua endarrerit: aquest avís és normal i desapareix amb l'ordre del punt 6. No hi ha res trencat: el clúster t'està demanant que confirmis que ja no penses fer marxa enrere.
Aquest darrer punt es mereix una frase més, perquè és la part incòmoda: a Ceph, la tornada enrere real no existeix un cop has fixat la versió mínima d'OSD. El teu pla B no és «desfer», és restaurar. Per això les còpies verificades —i una restauració que algú hagi cronometrat de debò— formen part de la feina d'aquesta finestra.
Cinquanta dies, repartits
Comptant des d'avui, 31 de juliol, així és com repartiríem la feina per arribar al 19 de setembre sense èpica:
- 1.Aquesta setmana: les sis comprovacions de dalt. Saps a quina branca ets, quina versió d'hipervisor tens a sota i si el mòdul
zabbixhi és en joc. Quinze minuts, i ja no decideixes a cegues. - 2.Primera quinzena d'agost: el monitoratge substitut, muntat i donant dades en paral·lel. I una restauració de prova amb cronòmetre, que és el pla B de tota la resta.
- 3.Segona quinzena d'agost: si continues a Reef, Ceph a Squid. És la precondició que el wiki de l'actualització de Proxmox VE 8 a 9 posa per escrit, no una recomanació amable.
- 4.Finals d'agost: el salt de l'hipervisor a la 9, sol i amb Ceph ja a Squid. Amb el matís que defensàvem fa dos dies: si caus en algun dels sis casos en què aquest salt no toca a l'agost, Tentacle tampoc no toca al setembre. Arribar tard a totes dues en ordre és millor que arribar puntual a una i trencar l'altra.
- 5.Primeres dues setmanes de setembre: Squid a Tentacle, amb la seqüència de dalt i el clúster mirat l'endemà al matí. Deixa la darrera setmana lliure a propòsit; el marge hi és per això.
I si no hi arribes, tampoc no passa res catastròfic el dia 20: un final de vida no és una bomba de rellotgeria: marca el punt a partir del qual ja ningú no arregla les fallades que apareguin. El que sí que passa és que el risc s'acumula sense avisar, i en emmagatzematge distribuït això es nota tard i de cop.
La part avorrida és la que salva el clúster
L'actualització de Ceph té mala fama i en general no se la mereix: els passos són pocs, estan documentats i el projecte fa anys que els fa avorrits a propòsit. El que sí que mereix respecte és la planificació, perquè el salt gairebé mai no ve sol. La nostra regla operant aquests clústers és curta: una cosa per finestra, el clúster en verd abans de cada pas, el monitoratge viu des del minut u i una data al calendari amb nom i cognoms. Res de glamurós, i funciona: el dilluns al matí ningú no s'assabenta que el cap de setmana hi va haver feina.
Fonts (verificades): dates de les branques i final de vida estimat (Squid 19.2 publicada el 26-09-2024, última 19.2.5 el 14-07-2026, final de vida estimat el 19-09-2026; Tentacle 20.2.0 el 18-11-2025, 20.2.2 el 16-06-2026, final de vida estimat el 18-11-2027; Reef 18.2 entre les versions arxivades) — índex de versions de Ceph. Eliminació de mgr/restful i mgr/zabbix («obsolets des del 2020», sense manteniment i amb vulnerabilitats a la seva cadena de dependències), canvi del plugin per defecte d'erasure coding a ISA-L només en clústers nous, flag allow_ec_optimizations per pool, llindars de mClock (50 IOPS en disc mecànic, 1.000 en SSD) i requisit de partir de Reef o Squid — notes de la versió Tentacle. FastEC i BlueStore (compressió i WAL) — anunci de v20.2.0 Tentacle. Requisits i seqüència del salt a Proxmox (PVE 9.1 o superior, pve-manager 9.1.4, Ceph 19.2.3-pve3, noout, ordre monitors → managers → OSD → MDS, require-osd-release) — wiki oficial Ceph Squid to Tentacle. Estat a Proxmox: anunci del 09-01-2026 amb Tentacle només al repositori de proves i Squid «suportat fins al setembre del 2026 per ara», més la confirmació d'un desenvolupador de Proxmox el 03-07-2026 que va quedar marcat com a estable amb Proxmox VE 9.2 — fil oficial al fòrum de Proxmox. Tentacle 20.2.1 com a valor per defecte per a instal·lacions noves des de Proxmox VE 9.2 (21-05-2026), amb els clústers existents fixats a la versió que ja fan servir — full de ruta oficial de Proxmox VE. Caigudes d'OSD en activar allow_ec_optimizations sobre un pool de codi d'esborrat existent a la 20.2.0, amb la traça a ECTransaction::WritePlanObj, i els errors de scrub pel canvi d'emplenat dels objectes — anàlisi pública de l'incident (13-01-2026). Correccions d'aquesta àrea i prohibició de les optimitzacions amb mides de tros no alineades a 4K a la 20.2.1 del 06-04-2026 — notes de la versió 20.2.1.
Tens un clúster Ceph amb data al calendari?
A everyWAN dissenyem i operem emmagatzematge distribuït amb Ceph en producció, juntament amb infraestructura Proxmox VE repartida en diversos datacenters. Mirem el teu clúster, et diem quantes finestres et separen de Tentacle i en quin ordre van — i si veiem que aguanta perfectament fins després del setembre, també t'ho diem.
Parlar amb everyWAN