Listado de la etiqueta: Clúster Ceph

Cómo implementar NFS de alta disponibilidad en Ceph con Ganesha

Introducción a Ceph y Ceph-Ganesha

Ceph-Ganesha, una herramienta NFS integrada en CEPH con potentes funciones de orquestación que permiten una alta disponibilidad y una gestión dinámica en un clúster Ceph multinodo. Nos centraremos en la simplicidad declarativa de su despliegue y en mostrar sus capacidades de HA.

 

Ceph es una plataforma de almacenamiento definida por software y de código abierto que ofrece almacenamiento de objetos, bloques y archivos altamente escalable desde un clúster unificado. En esencia, la arquitectura de Ceph se basa en una red distribuida de nodos independientes. Los datos se almacenan a través de OSDs (Object Storage Daemons), gestionados por Monitores y orquestados por Gestores.

 

Explicación de la arquitectura Ceph

El Sistema de Archivos Ceph (CephFS) es un sistema de archivos compatible con POSIX que se asienta sobre esta infraestructura, proporcionando un espacio de nombres distribuido y tolerante a fallos. Para un administrador de sistemas, Ceph ofrece una gran alternativa a las matrices de almacenamiento tradicionales, ya que proporciona una plataforma única y resistente que puede crecer linealmente con la adición de hardware básico.

 

Sus capacidades de autorreparación y autogestión son ventajas clave, ya que reducen la sobrecarga operativa asociada normalmente al almacenamiento a escala de petabytes.

 

¿Qué es NFS Ganesha en Ceph?

NFS Ganesha es un servidor NFS de código abierto que actúa como pasarela en el espacio de usuario, una distinción clave respecto a los servidores NFS convencionales que residen dentro del núcleo del sistema operativo. Esta elección de diseño fundamental proporciona un entorno de servicio más robusto y estable. Es mucho menos probable que un error en un demonio de espacio de usuario provoque un fallo catastrófico del sistema, una ventaja crucial para un punto final de servicio crítico. La arquitectura de Ganesha también está diseñada para ofrecer la máxima compatibilidad, ya que admite una gama completa de protocolos NFS, desde NFSv3 hasta NFSv4.2, lo que garantiza que pueda servir a una base de clientes diversa.

 

La verdadera genialidad de Ganesha reside en su Capa de Abstracción del Sistema de Archivos, o FSAL. Esta arquitectura modular desacopla la lógica del protocolo NFS del almacenamiento subyacente. Para un entorno Ceph, el módulo FSAL_CEPH es la clave, ya que permite a Ganesha actuar como un sofisticado cliente Ceph. Esto significa que los administradores pueden proporcionar una interfaz NFS coherente a los clientes, al tiempo que se benefician de toda la potencia y escalabilidad del clúster Ceph, todo ello sin exponer directamente la infraestructura Ceph subyacente. Si quieres profundizar en Ceph, ofrecemos un curso práctico e intensivo para aprender a dominar Ceph.

Un moderno centro de datos lleno de resplandecientes nodos de almacenamiento Ceph conectados en un clúster resistente. En el centro, una simpática deidad Ganesha de dibujos animados está sentada ante una consola con múltiples brazos que gestiona exportaciones NFS, cables y servidores. Una mano sostiene un cable de red, otra un ordenador portátil, otra un logotipo Ceph resplandeciente, que simboliza la alta disponibilidad y la orquestación.

Integración de Cephadm: Despliegue declarativo de Ceph-Ganesha

La integración de Ganesha con el orquestador Ceph (cephadm) eleva su despliegue de una tarea manual, específica de cada host, a una elegante operación a nivel de clúster. Esta asociación permite un enfoque declarativo de la gestión de servicios, en el que un único comando puede gestionar todo el ciclo de vida del servicio Ganesha.

 

Para cualquier servicio de misión crítica, la principal preocupación de un administrador de sistemas es garantizar la continuidad del negocio. Un tiempo de inactividad no planificado puede provocar una pérdida significativa de datos, pérdida de productividad y una reputación dañada. La Alta Disponibilidad (HA) es el principio arquitectónico que aborda esta preocupación eliminando los puntos únicos de fallo. Para un servicio NFS, esto significa que si un nodo del servidor se desconecta, otro nodo puede asumir sus funciones sin problemas. Esto proporciona tranquilidad a los administradores y permite un mantenimiento planificado sin afectar al usuario final. En el caso de Ceph, su naturaleza distribuida inherente es el complemento perfecto para un servicio NFS de HA, ya que el almacenamiento subyacente ya es resistente a los fallos de los nodos.

 

Preparar el almacenamiento CephFS para Ganesha

Un despliegue satisfactorio de Ganesha comienza con la preparación del almacenamiento CephFS subyacente. Un administrador experimentado aprovisionará los pools necesarios para alojar los datos y metadatos del sistema de archivos, preparando el escenario para el despliegue del servicio.

 

Crear un pool dedicado para datos NFS Ganesha con autoescalado activado

# sudo ceph osd pool create ganeshapool 32 32

# sudo ceph osd pool set ganeshapool pg_autoscale_mode on

 

Crea un conjunto de metadatos, marcado como masivo para un comportamiento optimizado

# sudo ceph osd pool create ganeshapool_metadata 16 16

# sudo ceph osd pool set ganeshapool_metadata bulk true

 

Vincular los pools a un nuevo sistema de archivos CephFS

# sudo ceph osd pool application enable ganeshapool cephfs

# sudo ceph osd pool application enable ganeshapool_metadata cephfs

# sudo ceph fs new ganeshafs ganeshapool_metadata ganeshapool

# ceph fs set ganeshafs max_mds 3

# ceph orch apply mds cephfs --placement="3 ceph-node1 ceph-node2"

Despliegue del servicio Ceph NFS Ganesha

Una vez sentadas las bases del almacenamiento, el despliegue de Ganesha propiamente dicho puede hacerse con .yamls o con sencillos comandos CLI de orquestación. El comando ceph orch apply es una poderosa instrucción al orquestador, que le indica que garantice el estado deseado del servicio NFS. Especificando un recuento de ubicaciones y enumerando los hosts del clúster, el administrador se asegura de que se ejecutará un demonio Ganesha en cada nodo designado, un paso crítico para un servicio resistente y de alta disponibilidad.

 

Despliega el servicio NFS de Ganesha en los tres hosts especificados

 

# sudo ceph orch apply nfs myganeshanfs ganeshafs --placement="3 ceph-node1 ceph-node2 ceph-node3"

 

Este único comando inicia un despliegue complejo y polifacético. El orquestador extrae las imágenes de contenedor necesarias, configura los demonios y los distribuye entre los hosts especificados. Esto contrasta claramente con las instalaciones manuales, host por host, mostrando el poder de la orquestación centralizada. Estos escenarios se abordan en detalle en nuestro curso avanzado de Ceph, donde cubrimos paso a paso la orquestación con cephadm y las configuraciones de HA

 

Capacidades avanzadas: Exportaciones dinámicas y resistencia del servicio

Una vez que el servicio Ganesha está en marcha, su potencia se revela aún más a través de sus capacidades de gestión dinámica de exportaciones. En lugar de editar archivos de configuración estáticos, un experto puede crear, modificar y eliminar exportaciones NFS sobre la marcha mediante una serie de sencillos comandos. Esto tiene un valor incalculable en entornos dinámicos en los que las necesidades de almacenamiento cambian rápidamente.

 

Crea una nueva exportación para hacer accesible el sistema de archivos CephFS

 

# sudo ceph nfs export create cephfs myganeshanfs /ganesha ganeshafs --path=/

El verdadero valor de este despliegue distribuido reside en la resistencia de sus servicios. El orquestador Ceph supervisa constantemente la salud de los demonios Ganesha. Si falla un host, el orquestador detectará automáticamente la pérdida y tomará medidas para garantizar que el servicio siga disponible. Este proceso automatizado de conmutación por error proporciona un alto grado de transparencia a los clientes, haciendo que Ganesha pase de ser una simple pasarela a un servicio de alta disponibilidad real. Su arquitectura está construida para soportar interrupciones, lo que la convierte en una parte indispensable de una estrategia de almacenamiento robusta.

Ejemplo real

Digamos que tenemos un clúster con 3 nodos preparados para ganesha, eso significa que podemos exportar con éxito el fs ceph subyacente del nodo 1 al nodo 2 y del nodo 2 al nodo 3, ¡o de la forma que queramos!

Conclusión: Por qué Ceph-Ganesha es esencial para el almacenamiento moderno

NFS Ganesha es algo más que una pasarela; es un componente crítico para integrar los servicios de archivos tradicionales con el almacenamiento moderno y escalable. Aprovechando la orquestación de línea de comandos de cephadm, los administradores pueden desplegar un servicio altamente disponible, resistente y gestionable dinámicamente. El proceso es un testimonio del poder de la gestión declarativa de infraestructuras, simplificando lo que de otro modo sería una tarea compleja. El diseño arquitectónico de Ganesha, combinado con la potencia del orquestador Ceph, lo convierte en una solución perfecta para satisfacer los exigentes requisitos de almacenamiento de los entornos híbridos actuales, y precisamente por ello en SIXE no solo ofrecemos formación en Ceph, sino también soporte especializado para garantizar que las empresas puedan mantener la estabilidad de sus infraestructuras en producción.

👉 SOPORTE técnico para CEPH

 

👉 Curso INTENSIVO en CEPH

 

👉 Curso AVANZADO en Ceph

 

 

SIXE