El almacenamiento es un tema que en el mundo actual ha tomado mucha importancia ya que en base a sus capacidades podemos disponer de la disponibilidad de los datos. Para ninguno de nosotros es un secreto que hoy en día se mueven datos en cantidades asombrosas de todo tipo (voz, audio, imágenes) y si el almacenamiento no tiene la capacidad suficiente para alojar estos datos, estaremos ante un riesgo latente de perdida de ellos.
Pensando en esto, Red Hat ha desarrollado Red Hat OpenShift Container Storage el cual se constituye como un almacenamiento definido por un software integrado que ha sido optimizado para Red Hat OpenShift Container Platform. En el siguiente enlace encontrarás más información acerca de ello:
OpenShift Container Storage en su versión 4.2 está basada en Red Hat Ceph® Storage, Rook y NooBaa los cuales nos permiten entregar servicios de almacenamiento nativo enfocados en contenedores que son compatibles con los servicios de bloques, archivos y objetos. Esto da como resultado un cubrimiento más integral de las capacidades de almacenamiento.
- Amazon Web Services
- VMware
- GCP
- IBM Z
- OpenStack
- VSphere
- Tecnología Red Hat integrada
- Modelo de desarrollo de código abierto
- Implementaciones en la nube híbrida
- Almacenamiento de objetos para fines de archivo, copias de seguridad o almacenamiento de medios
- Bloques de almacenamiento enfocados en bases de datos y mensajería
- Almacenamiento de archivos compartidos para fines de integración continua y adición de datos
- automatización de flujos de trabajo
- implementación
- arranque
- configuración
- aprovisionamiento
- escalado
- actualización
- monitoreo
- gestión de recursos
En resumen, esto permite al usuario un control total sobre la instalación, actualización y administración del almacenamiento en OpenShift.
Para que comprendamos un poco el tema de los operadores, estos son una forma simple para empaquetar, implementar y administrar una aplicación nativa de Kubernetes. Estas aplicaciones son implementadas en Kubernetes y su gestión se realiza a través de las API de Kubernetes y las herramientas de kubectl.
- Implementar servicios de almacenamiento en su red
- Ampliar las capacidades de almacenamiento
- Crear una alerta a los usuarios en el momento en que se presente un problema de almacenamiento
- Integrar paneles en la Consola de administrador de OpenShift donde se puede ver el estado de la utilidad y el nivel del almacenamiento.
OpenShift hace uso de los Operator framework (marcos de operador de Kubernete) los cuales automatizan en su mayoría las acciones de almacenamiento nativo en la nube para OpenShift. Esto da un enfoque global y controlado sobre aspectos vitales como lo son la programación, el ciclo de vida, la gestión de recursos, el análisis, el monitoreo y la seguridad de los datos alojados en el contenedor.
- Almacenamiento de archivos para entornos de creación de CI / CD
- Entornos de prueba donde se trabajen bases de datos, almacenes de documentos y sistemas de mensajería complejos
- Almacenamiento de aplicaciones web
- Almacenamiento de objetos en múltiples nubes
Vamos a conocer el proceso de instalación y uso de OpenShift Container Storage.
1. Cómo descargar OpenShift Container Storage Red Hat
El primer paso será ir al enlace oficial de OpenShift Container Storage y crea nuestra cuenta de Red Hat o bien iniciar sesión:
Allí debemos ingresar todos los datos que son solicitados:
Después de esto, se ofrece la posibilidad de acceder a escenarios de aprendizaje:
Con esto es posible hacernos a una idea global del funcionamiento de OpenShift Container Storage.
Para montarlo y administrarlo en físico, debemos instalar OpenShift 4 según las indicaciones del enlace arriba mencionado y en primer lugar validar que el equipo cuente con los requisitos mínimos, en este caso Windows 10, que son:
- Contar con Hyper-V habilitado
- Versión Windows 10 Falls Creator o superior
- Windows 10 Pro
Para esto accedemos al símbolo del sistema y vamos a la ruta donde se ha extraído OpenShift 4 y ejecutamos:
crc setup
A continuación creamos el clúster que es donde se configurara OpenShift Container Storage 4 con el siguiente comando:
crc start
Una vez finalice este proceso podemos comprobar su estado con:
crc status
Debemos acceder al clúster ejecutando:
crc console
Allí ingresamos los datos de usuario y en la siguiente ventana iremos a la sección “Storage” donde veremos los siguiente:
Existen tres tipos de almacenamiento que son:
En este caso seleccionamos Persistent Volumes y veremos lo siguiente. Allí vemos los volúmenes actuales y OpenShift Container Storage nos permite crear el volumen dando clic en “Create Persistent Volume”
En la consola existen una serie de valores predefinidos que son:
El valor de capacidad y modo de acceso podemos editarlo directamente en la consola y a continuación damos clic en “Create” para crear el volumen gracias a OpenShift Container Storage:
Si deseamos editar alguna variable de este volumen de almacenamiento creado vamos al botón “Actions” y allí podemos realizar lo siguiente:
- Editar las etiquetas.
- Editar el volumen en si.
- Editar las anotaciones.
- Elimina el volumen persistente.
Si vamos a la pestaña YAML veremos todos los parámetros en modo de consola:
Si deseamos crear un volumen del tipo “Persistent Volumes Claims” damos clic allí y seguimos los mismos pasos:
Allí damos clic sobre “Create Persistent Volume Claim” y a continuación ingresamos:
- Nombre del volumen
- Tamaño en GB a usar
- Modo de acceso, usuario simple (RWO), acceso compartido (RWX) o solo lectura (ROX)
Damos clic en “Create” para su creación:
Al igual desde YAML veremos los parámetros en consola:
Lo veremos creado:
En caso de desear borrar alguno de los volúmenes de almacenamiento creados siempre recibiremos una advertencia:
Finalmente, si optamos por usar la opción “Storage Classes” damos clic allí y veremos lo siguiente:
Al dar clic en “Create Storage Classes” y será necesario:
- Ingresar nombre y descripción del volumen
- Asignar la política de reclamación
- Seleccionar el proveedor
Como podemos ver, gracias a OpenShift Container Storage 4 tenemos las capacidades para crear estos tipos de volúmenes cada uno con las medidas de seguridad necesarias para ser un volumen fiable e integral.