Servidor Couchbase

Couchbase en OpenShift en acción

OpenShift es una plataforma como servicio (PaaS) de Red Hat basada en contenedores Docker y Kubernetes. Se trata de una plataforma de aplicaciones en contenedores de código abierto de Red Hat basada en contenedores Docker y el gestor de clústeres de contenedores Kubernetes para el desarrollo y la implantación de aplicaciones empresariales.

Couchbase's Operator también es compatible con OpenShift. Ahora, vamos a ver cómo se puede escalar rápidamente hacia arriba y hacia abajo, recuperarse de fallos, o incluso cambiar la arquitectura de su clúster con sólo unos pocos comandos de línea:

 

Transcripción del vídeo:

Código:

Requisitos previos

 

Inicio de Minishift

Para iniciar su minishift, sólo tiene que escribir el siguiente comando:

 

Starting Minishift

Una vez que se haya iniciado, ejecute el siguiente comando para añadir oc a su Classpath:

 Además, también puede incluir el siguiente complemento para poder acceder a su clúster como administrador:

Ahora, para acceder a OpenShift, puede utilizar el siguiente comando:

 

Configuración de Minishift

 Hay algunas cosas que deben ser creadas antes de empezar. Me limitaré a enumerar todos los comandos necesarios, pero puedes consultar la documentación oficial aquí.

1 - Crear un proyecto Openshift

2 - Crear una nueva Definición de Recurso Personalizada y Rol de Cluster

3- Configuración de RBAC para un proyecto OpenShift

 

Despliegue del operador de Couchbase en OpenShift

 

Ahora que hemos configurado todo, vamos a desplegar el Operador de Couchbase. Como he mencionado en un entrada anteriorEl Operador es responsable de automatizar parte del trabajo del DBA, como unir un nuevo nodo al cluster, reequilibrar datos, consolidar logs, etc.

Puede desplegar el operador ejecutando el siguiente comando:

Ejecute el siguiente comando para verificar que su despliegue se ha ejecutado correctamente:

 

Despliegue de Couchbase en OpenShift

 

Desplegar Couchbase en OpenShift es casi lo mismo que despliegue en Kubernetessólo tienes que ejecutar el siguiente comando dentro del directorio "kubernetes":

Nuestro archivo yaml contiene la especificación del clúster, como el nombre del bucket, el número de servidores, servicios, etc:

secret.yaml

 

couchbase-cluster.yaml

 

Consulte el documentación oficial para comprender la función de cada propiedad.

En el archivo anterior, hemos especificado que queremos 3 nodos, lo que significa que deberíamos tener 3 nodos ejecutando Couchbase:

 

Acceso a su base de datos en OpenShift

 

Hay muchas maneras de exponer la consola web al mundo externo. En este artículo, vamos a simplemente reenviar el puerto a la máquina local con el siguiente comando:

Ahora, debería poder acceder a la consola web de Couchbase en su máquina local en http://localhost:8091:

Observa que todos los nodos creados ya forman parte de un cluster. Todo fue hecho automáticamente por el Operador de Couchbase.

 

Cómo recuperarse de un fallo de nodo de base de datos en OpenShift

 

Matemos una de nuestras instancias para ver cómo se comporta el clúster:

Couchbase se dará cuenta inmediatamente de que un nodo "desapareció" y se iniciará el proceso de recuperación. Como especificamos en couchbase-cluster.yaml que siempre queremos 3 servidores funcionando, Kubernetes iniciará una nueva instancia llamado cb-example-0004:

 

Una vez cb-ejemplo-004 el operador se encarga de unir el nodo recién creado al clúster y, a continuación, activa el reequilibrio de datos.

 

Reducción de Couchbase en Open Shift

 

Si crees que escalar una base de datos es difícil, deberías intentar escalarla a la baja. Por suerte, es algo realmente sencillo con Couchbase y OpenShift. Todo lo que necesitas es cambiar la configuración de tu clúster:

couchbase-cluster.yaml

Y luego ejecute el siguiente comando para empujar su cambio a OpenShift:

Sin embargo, aquí hay un pequeño detalle, ya que no podemos matar 2 nodos al mismo tiempo sin correr cierto riesgo de pérdida de datos. Para evitar este problema, el operador reduce el clúster gradualmente, una instancia cada vez, activando el reequilibrio para garantizar que no se pierden datos durante el proceso:

 

Ampliación de Couchbase en OpenShift

 

Volvamos a escalarlo a 3 nodos. Como habrás adivinado, todo lo que tenemos que hacer es cambiar la directiva talla parámetro en couchbase-cluster.yaml volver a 3:

A continuación, actualizamos nuestra configuración ejecutando

Después de unos minutos, verá que ahora tenemos 3 nodos de nuevo:

 

Escala multidimensional

También puede aprovechar el escalado multidimensional especificando los servicios que desea ejecutar en cada nodo:

couchbase-cluster.yaml  

Una vez más, tenemos que empujar nuestros cambios a OpenShift con el siguiente comando:

 

En este caso, se crearán tres nuevos nodos: dos de datos e índice y uno de búsqueda y consulta de texto completo.

 

 

Conectando su aplicación a Couchbase en OpenShift

Desplegar una aplicación en OpenShift es muy similar a desplegarla en Kubernetes. La principal diferencia es que debe utilizar oc en lugar de utilizar kubectl. Este artículo muestra paso a paso cómo hacerlo.

 

Si tienes alguna pregunta, envíame un tweet a @deniswsrosa o deje un comentario a continuación.

 

 

Lea también:

 

 

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por Denis Rosa, Defensor del Desarrollador, Couchbase

Denis Rosa es un Developer Advocate para Couchbase y vive en Munich - Alemania. Tiene una sólida experiencia como ingeniero de software y habla con fluidez Java, Python, Scala y Javascript. A Denis le gusta escribir sobre búsqueda, Big Data, AI, Microservicios y todo lo que pueda ayudar a los desarrolladores a hacer una aplicación hermosa, más rápida, estable y escalable.

3 Comentarios

  1. Un blog muy bien escrito. Es bueno para mostrar cómo escalar hacia arriba / abajo, mostrar la capacidad multidimensional, todo en el mismo blog.

    1. Denis Rosa, Defensor del Desarrollador, Couchbase junio 18, 2018 a 10:09 am

      muchas gracias!, si tiene alguna pregunta, no dude en preguntar.

  2. Hola Denis

    Gracias por este artículo, parece fantástico, pero parece que el enlace ya no funciona es decir https://packages.couchbase.com/kubernetes/0.8.1-beta2/openshift/crd.yaml

    ¿Puede indicarme dónde viven ahora?

    Muchas gracias, Adrian

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.