29 Módulos de Ceph Manager #
La arquitectura de Ceph Manager (consulte el Sección 1.2.3, “Nodos y daemons de Ceph” para obtener una breve introducción) permite ampliar su funcionalidad mediante módulos, como la "consola" (consulte la Parte I, “Ceph Dashboard”), "prometheus" (consulte el Capítulo 16, Supervisión y alertas), o el "equilibrador".
Para mostrar todos los módulos disponibles, ejecute:
cephuser@adm >
ceph mgr module ls
{
"enabled_modules": [
"restful",
"status"
],
"disabled_modules": [
"dashboard"
]
}
Para habilitar o inhabilitar un módulo específico, ejecute:
cephuser@adm >
ceph mgr module enable MODULE-NAME
Por ejemplo:
cephuser@adm >
ceph mgr module disable dashboard
Para mostrar los servicios que proporcionan los módulos habilitados, ejecute:
cephuser@adm >
ceph mgr services
{
"dashboard": "http://myserver.com:7789/",
"restful": "https://myserver.com:8789/"
}
29.1 Equilibrador #
El módulo del equilibrador optimiza la distribución del grupo de colocación (PG) entre los OSD para conseguir una distribución más equilibrada. Aunque el módulo se activa por defecto, está inactivo. Admite los dos modos siguientes: crush-compat
y upmap
.
Para ver el estado actual del equilibrador y los datos de configuración, ejecute:
cephuser@adm >
ceph balancer status
29.1.1 Modo "crush-compat" #
En el modo "crush-compat", el equilibrador ajusta los conjuntos de reequilibrio de peso de los OSD para lograr una mejor distribución de los datos. Mueve los grupos de colocación por los OSD, lo que causa que el clúster tenga temporalmente el estado HEALTH_WARN
debido a los grupos de colocación descolocados.
Aunque "crush-compat" es el modo por defecto, se recomienda activarlo explícitamente:
cephuser@adm >
ceph balancer mode crush-compat
29.1.2 Planificación y ejecución del equilibrado de datos #
Mediante el módulo de equilibrador, puede crear un plan para equilibrar los datos. A continuación, puede ejecutar el plan manualmente o dejar que los grupos de colocación se equilibren continuamente de forma automática.
La decisión de ejecutar el equilibrador en modo manual o automático depende de varios factores, como el desequilibrio actual de los datos, el tamaño del clúster, el número de grupos de colocación o la actividad de E/S. Se recomienda crear un plan inicial y ejecutarlo en un momento de baja carga de E/S en el clúster. El motivo es que, probablemente, el desequilibrio inicial será considerable y es una buena práctica para reducir el impacto en los clientes. Después de una ejecución manual inicial, considere la posibilidad de activar el modo automático y de supervisar el tráfico de reequilibrio bajo una carga de E/S normal. Deben sopesarse las mejoras en la distribución del grupo de colocación frente al tráfico de reequilibrio causado por el equilibrador.
Durante el proceso de equilibrio, el módulo de equilibrador regula los movimientos de los grupos de colocación para que solo se mueva una fracción configurable de ellos. El valor por defecto es el 5 %, y se puede ajustar, por ejemplo al 9 %, ejecutando el comando siguiente:
cephuser@adm >
ceph config set mgr target_max_misplaced_ratio .09
Para crear y ejecutar un plan de equilibrio, siga estos pasos:
Compruebe la puntuación actual del clúster:
cephuser@adm >
ceph balancer evalCree un plan. Por ejemplo, "great_plan":
cephuser@adm >
ceph balancer optimize great_planVea qué cambios implicará el plan "great_plan":
cephuser@adm >
ceph balancer show great_planCompruebe la puntuación potencial del clúster si decide aplicar el plan "great_plan":
cephuser@adm >
ceph balancer eval great_planEjecute el plan "great_plan" una sola vez:
cephuser@adm >
ceph balancer execute great_planObserve el equilibrio del clúster con el comando
ceph -s
. Si el resultado es satisfactorio, active el equilibrio automático:cephuser@adm >
ceph balancer onSi más adelante decide desactivar el equilibrio automático, ejecute:
cephuser@adm >
ceph balancer off
Es posible activar el equilibrio automático sin ejecutar un plan inicial. En tal caso, el reequilibrio de los grupos de colocación puede tardar bastante tiempo.
29.2 Habilitación del módulo de telemetría #
El complemento de telemetría envía datos anónimos del proyecto Ceph sobre el clúster en el que se ejecuta el complemento.
Este componente (que hay que aceptar explícitamente) incluye contadores y estadísticas sobre cómo se ha distribuido el clúster, la versión de Ceph, la distribución de los hosts y otros parámetros que ayudan al proyecto a comprender mejor la forma en que se usa Ceph. No contiene datos confidenciales como nombres de repositorios, nombres de objetos, contenido de objetos ni nombres de host.
El propósito del módulo de telemetría es proporcionar comentarios automatizado para que los desarrolladores puedan cuantificar las tasas de adopción y el seguimiento o detectar los elementos que deben explicarse o validarse mejor durante la configuración para evitar resultados no deseados.
El módulo de telemetría requiere que los nodos de Ceph Manager tengan la capacidad de enviar datos a través de HTTPS a los servidores de fases anteriores. Asegúrese de que su cortafuegos corporativos permita esta acción.
Para habilitar el módulo de telemetría:
cephuser@adm >
ceph mgr module enable telemetryNotaEste comando solo permite ver los datos localmente. No comparte datos con la comunidad de Ceph.
Para permitir que el módulo de telemetría comience a compartir datos:
cephuser@adm >
ceph telemetry onPara inhabilitar el uso compartido de los datos de telemetría:
cephuser@adm >
ceph telemetry offPara generar un informe JSON que se pueda imprimir:
cephuser@adm >
ceph telemetry showPara añadir un contacto y una descripción al informe:
cephuser@adm >
ceph config set mgr mgr/telemetry/contact John Doe john.doe@example.comcephuser@adm >
ceph config set mgr mgr/telemetry/description 'My first Ceph cluster'El módulo compila y envía un informe nuevo cada 24 horas por defecto. Para ajustar este intervalo:
cephuser@adm >
ceph config set mgr mgr/telemetry/interval HOURS