Por qué las características de ceph no coinciden con las versiones de ceph.
Nuestro clúster Ceph fue actualizado hace un tiempo de luminous a nautilus 14.2.8, pero el proceso no se completó obviamente como se muestra por ejemplo por las versiones heterogéneas. Es muy probable que se haya utilizado ceph-deploy para ello.
Desde https://docs.ceph.com/en/latest/releases/nautilus/#upgrading-from-mimic-or-luminous junto con los pasos obvios que faltan, los monitores al menos no se reiniciaron y faltó este paso importante:
# ceph osd require-osd-release nautilus
He completado todos los pasos que pude obtener de esta página, y el clúster está saludable, pero aunque la versión es consistente en todos los nodos:
h1>ceph versions
<p>...
"overall": {
"ceph version 14.2.8 (2d095e947a02261ce61424021bb43bd3022d35cb) nautilus (stable)": 20
}
}
# ceph features
solo muestra "release": "luminous",
… mientras que:
h1>ceph mon feature ls
<p>all features
supported: [kraken,luminous,mimic,osdmap-prune,nautilus]
persistent: [kraken,luminous,mimic,osdmap-prune,nautilus]
on current monmap (epoch 3)
persistent: [kraken,luminous,mimic,osdmap-prune,nautilus]
required: [kraken,luminous,mimic,osdmap-prune,nautilus]
<code>
</code></p>
<h1>ceph osd dump | grep min<em>compat</em>client</h1>
<p>require<em>min</em>compat<em>client nautilus
min</em>compat_client jewel
Esto no parece afectar la capacidad de ejecutar una función Nautilus como disminuir el número de PGs. ¿Por qué # ceph features
no refleja la versión de Nautilus? ¿Y esto podría tener un impacto al intentar actualizar el clúster aún más a Octopus, o Pacific (al menos v16.2.7) cuando estén disponibles?
davy.ai
Solución
Parece que se han omitido algunos pasos durante la actualización de luminous a nautilus, como lo indican las versiones heterogéneas en todo el clúster. Un paso importante que no se realizó es reiniciar los monitores después de la actualización y ejecutar el comando
ceph osd require-osd-release nautilus
.Aunque el clúster parece saludable y la versión es consistente en todas las nodos, la salida de
ceph features
solo muestrarelease: luminous
, mientras queceph mon feature ls
incluyenautilus
entre las características compatibles y persistentes.Esta inconsistencia puede afectar la capacidad de actualizar aún más el clúster a Octopus o Pacific. Para resolver este problema, los pasos recomendados son:
ceph osd require-osd-release nautilus
para establecer la versión mínima de OSD en nautilusceph osd require-osd-release nautilus
nuevamente para asegurarse de que todos los OSD estén ejecutando la versión nautilusceph -s
y comprobar siceph features
ahora muestra la versión correcta denautilus
Completando estos pasos, el clúster debería actualizarse correctamente y debería ser seguro continuar con más actualizaciones a versiones más nuevas como Octopus o Pacific.