Docker Swarm y Service Mode para crear Couchbase Cluster explicaba cómo crear un clúster de Couchbase utilizando Docker. Utilizó el concepto de un servicio "maestro" y otro "trabajador" para simplificar y automatizar la creación del cluster. A continuación, se creó el clúster homogéneo como se muestra en el siguiente diagrama de arquitectura:
docker-service-couchbase-cluster
Para más información y antecedentes, consulte el Cluster Couchbase usando Docker blog.

Docker 1.13 se publicó la semana pasada. Una nueva función de esta versión permite desplegar una aplicación multicontenedor definida mediante Docker Compose en varios hosts habilitado utilizando el modo Enjambre. Idealmente, nos gustaría tener un único Docker Compose que permite arrancar el servicio "maestro" y arrancar/escalar el servicio "trabajador". Pero el servicio "maestro", y lo que es más importante, el contenedor dentro del servicio, tiene que estar completamente en marcha antes de que se pueda iniciar el servicio "trabajador". Esto se debe a que los contenedores del servicio "trabajador" se registran con el contenedor del servicio "maestro" para crear el clúster. Esto normalmente requiere un poco de trabajo manual como se define en Control del orden de inicio en Compose. Así que volveremos a esa versión más adelante.

Este blog proporcionará una actualización rápida de los pasos del original utilizando Docker 1.13. Lea este blog para una rápida cómo y la blog original para saber por qué.

Crear red:

Compruebe la red creada mediante docker network ls mando:

Cree el servicio "maestro" de Couchbase:

Compruebe el servicio creado mediante docker service ls mando:

Crear el servicio "worker" de Couchbase:

Compruebe de nuevo el servicio creado utilizando docker service ls mando:

Compruebe los registros del servicio de trabajadores utilizando el comando recién introducido docker service logs couchbase-worker comando. Este comando, introducido recientemente en Docker 1.13, extrae los registros de todos los contenedores del servicio y los transmite a la consola. No hay necesidad de rastrear qué contenedores se están ejecutando en qué hosts.

Los registros completos muestran cómo se creó el servicio "trabajador" y se unió al clúster creado originalmente por "maestro".

Escala el clúster escalando el servicio Docker:

Compruebe de nuevo el servicio mediante docker service ls mando:

Ahora tienes un cluster Couchbase de tres nodos. Antes de reequilibrio del clústervamos a comprobar rápidamente lo que hace Consola web de Couchbase espectáculos.

Se puede acceder a la consola web de Couchbase en http://localhost:8091 y muestra un único nodo Couchbase con datos, índice y servicio de consulta. Este nodo se creó utilizando el servicio "master". Dos nodos adicionales creados utilizando el servicio "worker" se muestran en Pendiente de reequilibrio ficha:
docker-couchbase-cluster-1.13-three-nodes
Haga clic en Reequilibrar para reequilibrar el clúster y ver el clúster totalmente reequilibrado:
docker-couchbase-cluster-1.13-rebalanced

¿Quieres empezar a usar Couchbase? Mira en Kits de inicio de Couchbase.

¿Quieres saber más sobre cómo ejecutar Couchbase en contenedores?

Autor

Publicado por Arun Gupta, Vicepresidente, Defensa del Desarrollador, Couchbase

Arun Gupta es vicepresidente de promoción de desarrolladores en Couchbase. Ha creado y dirigido comunidades de desarrolladores durante más de 10 años en Sun, Oracle y Red Hat. Tiene una gran experiencia en liderar equipos multidisciplinares para desarrollar y ejecutar estrategias, planificar y ejecutar contenidos, campañas de marketing y programas. Anteriormente dirigió equipos de ingeniería en Sun y es miembro fundador del equipo Java EE. Gupta es autor de más de 2.000 entradas de blog sobre tecnología. Tiene una amplia experiencia como conferenciante en más de 40 países sobre innumerables temas y es una JavaOne Rock Star desde hace tres años consecutivos. Gupta también fundó el capítulo Devoxx4Kids en Estados Unidos y sigue promoviendo la educación tecnológica entre los niños. Autor de varios libros sobre tecnología, ávido corredor, trotamundos, campeón de Java, líder de JUG, miembro del Dream Team de NetBeans y capitán de Docker, es fácilmente accesible en @arungupta.

1 Comentarios

  1. [...] también puede considerar ejecutar Couchbase Cluster usando Docker o leer más sobre Despliegue de servicios Docker para [...]

Dejar una respuesta