LINUX

Comprensión de Ceph: una plataforma de almacenamiento distribuido de código abierto

Ceph es una plataforma de almacenamiento distribuida basada en software que se ejecuta en hardware básico. Para comprender la eficiencia de Ceph, veamos primero qué es el hardware básico. Las computadoras básicas son componentes de hardware desarrollados por múltiples proveedores, que incorporan componentes de hardware basados ​​en un único estándar abierto. En comparación con las supermicrocomputadoras, las computadoras básicas son de bajo costo y sus estándares abiertos aseguran una menor diferenciación entre los productos de diferentes proveedores. El clúster de almacenamiento de Ceph se ejecuta en estos equipos básicos y utiliza PERSONA ESPECIAL (Replicación controlada bajo hash escalable) algoritmo para garantizar la distribución y el escalado de datos entre el clúster. Los principales objetivos del desarrollo de Ceph son proporcionar un mecanismo de almacenamiento extremadamente escalable, basado en objetos, bloques y archivos. Ceph ofrece una única plataforma de almacenamiento que puede manejar todo tipo de mecanismos de almacenamiento de datos (objeto, bloque y archivo). Es altamente escalable, es decir, hasta el nivel de Exabyte y tolerancia a fallas incorporada y mecanismo de replicación de datos para la consistencia de datos.

Historia de Ceph

Fue creado como un proyecto de código abierto por Sage Weil, comenzó en 2004, y el software estuvo disponible bajo una licencia de código abierto en 2006. Weil fue el fundador de la empresa «Inktank Storage», que siguió trabajando en el desarrollo de Ceph hasta Red Hat. la corporación compró Inktank y trajeron el desarrollo de Ceph internamente. La primera versión estable importante de Ceph se lanzó en 2012. En octubre de 2014, el equipo de desarrollo lanzó «Giant», la séptima versión estable importante de Ceph. Todavía es un trabajo en progreso en aras de la madurez y la perfección.

Un clúster de almacenamiento Ceph consta de dos tipos de demonios:

Demonio OSD de Ceph

Dispositivos de almacenamiento de objetos (OSD) es una parte importante del clúster basado en Ceph. Los OSD realmente almacenan el contenido de archivos / datos. Usan el sistema de archivos para almacenar estos datos. OSD Daemon se utiliza para administrar todos estos discos en el clúster. Este demonio es responsable de almacenar datos en un sistema de archivos local y proporcionar acceso a estos datos a través de la red a través de diferentes medios de acceso o software cliente. Este demonio es responsable de agregar y quitar discos, particionar un disco, administrar OSD, el espacio de nivel inferior y las funciones de seguridad, y los discos de acceso a la replicación de datos.

Monitor Ceph

Ceph Monitor es el único demonio que se utiliza para supervisar la agrupación en clústeres completa. Si tiene un clúster basado en Ceph en funcionamiento, necesitará Ceph Monitor a diario para ver la salud y el estado de su clúster. Monitorear un clúster a diario implica tareas como verificar el estado general de los OSD, el sistema de archivos o el estado de los datos a nivel de bloque. Puede administrar el equilibrio de carga y los detalles de la replicación de datos utilizando este demonio.

Para comprender mejor el funcionamiento del clúster Ceph, veamos cómo maneja los tres tipos de mecanismos de almacenamiento.

Almacenamiento de objetos Ceph

Cuando los datos se escriben en Ceph, utiliza su mecanismo integrado para dividir y replicar automáticamente estos datos en todo el clúster. No solo se puede acceder a los datos de almacenamiento de objetos de Ceph mediante las API de Ceph integradas, sino que también puede utilizar los servicios de Amazon S3 o las API basadas en REST para acceder a ellos. El mecanismo de almacenamiento en bloque de Ceph ofrece RADOS (Almacén de objetos distribuido autónomo confiable). El servicio RADOS es una parte integral del mecanismo de almacenamiento; tiene la capacidad de escalar a miles de dispositivos de hardware (comúnmente denominados «nodos») mediante el uso del software de administración que ya está instalado en estos nodos.

Almacenamiento en bloque Ceph

Este modo de almacenamiento permite a los usuarios montar Ceph como un dispositivo de bloque de aprovisionamiento fino. El servicio RADOS también se utiliza en el nivel de almacenamiento en bloque para garantizar la escalabilidad de los datos. Librados está involucrado en este nivel; es una biblioteca de software que los usuarios utilizan para comunicarse con los servidores o nodos de Stoage. Es una biblioteca basada en Python, es una aplicación de código abierto, por lo que también puede ajustar y mejorar librados según sus propias necesidades para una mejor comunicación con los nodos Ceph. Utiliza «Dispositivo de bloque RADOS» también conocido como RBD para integrar con el back-end. RBD también hereda la funcionalidad de Librados y también se puede usar para tomar instantáneas y restaurar datos en el clúster.

Almacenamiento de archivos Ceph

CephFS es un sistema de archivos compatible con la interfaz de sistema operativo portátil (POSIX) para clústeres de almacenamiento basados ​​en Ceph. Proporciona servicios que asignan los archivos y directorios de datos reales a los objetos almacenados en RADOS. De esta manera, CephFS y RADOS trabajan con las manos en las manos. RADOS funciona aquí distribuyendo dinámicamente datos de manera uniforme entre diferentes nodos. Este sistema de archivos ofrece soporte para almacenamiento de datos ilimitado y mayor seguridad de datos. Ceph es bien conocido por el clúster de almacenamiento de archivos, ya que ofrece el máximo rendimiento y escalabilidad. Tenga en cuenta que también puede usar btrfs o EXT4 con Ceph, pero para eso RedHat recomienda usar un kernel de Linux reciente (v3.14 o posterior).

Conclusión

Ceph, que opera bajo el paraguas de Redhat, ofrece funciones de agrupación de datos rentables, fáciles de administrar y altamente confiables. Redhat está trabajando activamente en ello., su desarrollo continuo asegura que se agreguen regularmente correcciones de errores y nuevas funciones. Es de código abierto y fácilmente modificable según sus necesidades.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar