En Operador autónomo Couchbase 2.0 introduce una serie de características innovadoras y mejoras que hacen que sea más fácil que nunca desplegar, aprovisionar, supervisar y gestionar sus nodos de servidor Couchbase en Kubernetes. Además de los nodos de servidor Couchbase, Couchbase Móvil incluyen Pasarelas de sincronización que proporcionan una sincronización de datos segura entre Couchbase Lite y la nube. Couchbase Server es el almacenamiento de respaldo persistente de Sync Gateway.
La naturaleza sin estado de Sync Gateway se presta bien a Kubernetes. En este post, ofrecemos una visión general de cómo implementar Sync Gateway en Kubernetes aprovechando las mejoras de autenticación de clientes introducidas en Couchbase Autonomous Operator 2.0.

Sync Gateway y Couchbase Autonomous Operator
El clúster de Sync Gateway se despliega y gestiona independientemente del clúster de Couchbase Server utilizando un Implantación de Kubernetes controlador. Mientras que Couchbase Operator no se utiliza para desplegar, aprovisionar y gestionar la puerta de enlace de sincronización, Couchbase Operator sí se utiliza para desplegar, aprovisionar y gestionar la puerta de enlace de sincronización. descargar paquete incluye una plantilla de despliegue de ejemplo para desplegar un clúster de Sync Gateway y conectarlo a un clúster de Couchbase Server.
Hay dos pasos principales a la hora de desplegar un clúster de Sync Gateway.
Conexión de Sync Gateway a Couchbase Server
En primer lugar, el clúster de Sync Gateway debe arrancar con el bucket de Couchbase Server adecuado, tal y como se especifica en el archivo Configuración del servidor Sync Gateway propiedad. Un clúster de Sync Gateway puede conectarse a un servidor Couchbase utilizando cualquiera de las siguientes configuraciones de red, a saber
- A un servidor Couchbase en el mismo clúster Kubernetes (también conocido como "intra-kubernetes")

- A un clúster de servidores Couchbase en un clúster Kubernetes separado (también conocido como "inter-kubernetes")

Para ello se necesitan las versiones 2.7.1 y posteriores de Sync Gateway.
- A un clúster de Coucbase Server a través de una red pública (también conocida como "redes públicas").

Para ello se necesitan las versiones 2.7.1 y posteriores de Sync Gateway.
Se recomienda que la comunicación entre Sync Gateway y el servidor sea protegido mediante TLS independientemente de la configuración de la red.
Por ello, aunque es muy recomendable, no es obligatorio que el servidor se despliegue en Kubernetes.
Además de configurar la red para permitir que Sync Gateway se conecte al servidor, los nodos Sync Gateway deben autenticarse con Couchbase Server. Tienes dos opciones
Usuario RBAC de Sync Gateway
Este es probablemente el mecanismo de autenticación más común utilizado en los despliegues de Couchbase Mobile. Operator 2.0 introduce soporte para Gestión RBAC. Puede utilizar esta función para que el operador gestione automáticamente la creación del usuario RBAC de Sync Gateway. Para ello, defina un Usuario de Couchbase correspondiente al usuario de Sync Gateway y crear las Vinculación de funciones de usuario que vinculará al usuario de Sync Gateway con las funciones administrativas pertinentes (bucket_full_access) definida por a Grupo Couchbase.
Para aprovechar esta capacidad, deberá activar la gestión RBAC.

Todavía tiene la opción de no dejar que Operator gestione el usuario RBAC, en cuyo caso, crearía manualmente el usuario en el servidor por procedimientos habituales.
Autenticación de clientes TLS
Operator 2.0 es totalmente compatible con mTLS (TLS mutuo). Esto puede aprovecharse para autenticar la puerta de enlace de sincronización mediante certificados de cliente.

Una vez que el Sync Gateway se ha conectado correctamente al servidor, el siguiente paso es exponerlo a los clientes de Couchbase Lite
Exposición de Sync Gateway a clientes Couchbase Lite
Un despliegue típico de Couchbase Mobile consiste en uno o más nodos Sync Gateway liderados por un balanceador de carga. Los clientes de Couchbase Lite se conectan al balanceador de carga. La comunicación de los clientes con el Sync Gateway está protegida mediante TLS. Tienes un par de opciones de despliegue -
Equilibrador de carga como Pass-through
En esta opción, el equilibrador de carga que opera en Capa 4 de la pila de red es un paso para el tráfico entre los clientes de Couchbase Lite y Sync Gateway. Las conexiones TLS son de extremo a extremo y terminan en Sync Gateway. Esta opción funciona para proveedores de nube que admiten balanceadores de carga. Puede aprovisionar un equilibrador de carga para el servicio Sync Gateway.

Equilibrador de carga como terminación TLS
En esta opción, un equilibrador de carga a nivel de aplicación actúa como proxy interceptando las comunicaciones entre los clientes de Couchbase Lite y Sync Gateway, y las decisiones de equilibrio de carga se toman inspeccionando el contenido de los paquetes. Las conexiones TLS terminan en el equilibrador de carga, aliviando la carga de Sync Gateway. Este es un modelo de despliegue muy común para Couchbase Mobile.

Recorrido
Hemos elaborado un tutorial en tres partes que proporciona instrucciones paso a paso para
- Despliegue un clúster Sync Gateway y conectarlo al servidor
- Exponga el despliegue de Sync Gateway a clientes externos Couchbase Lite y RESTful y
- Gestione el clúster Sync Gateway
Incluye un análisis de las mejores prácticas y archivos de configuración .yaml de ejemplo que pueden utilizarse como referencia y personalizarse para su implantación.
Las instrucciones del tutorial se aplican a cualquier entorno Kubernetes. Las diferencias que encontrará entre los entornos Kubernetes gestionados radicarán principalmente en la configuración de red y la configuración de los equilibradores de carga específicos de la plataforma.
Aquí tienes los enlaces directos para configurar el clúster del servidor Couchbase en entornos Kubernetes gestionados populares utilizando Autonomous Operator. Una vez desplegado el servidor Couchbase, sigue los pasos descritos en el tutorial anterior para desplegar el clúster Sync Gateway.
- Las instrucciones para configurar un clúster de Couchbase Server con Amazon Elastic Container Service para Kubernetes (EKS) en Amazon Web Services (AWS) se describen en este documento. tutorial
- Las instrucciones para configurar un clúster de Couchbase Server con Azure Container Service (AKS) en Azure Cloud Platform se describen en este documento. tutorial
- Las instrucciones para configurar un clúster de Couchbase Server con Amazon Elastic Container Service para Kubernetes (EKS) en Amazon Web Services (AWS) se describen en este documento. tutorial
Despliegue con Helm
El operador gráfico se amplía ahora para soportar Sync Gateway. ¡Así que puedes desplegar el Operador, el servidor Couchbase y los clusters de Sync Gateway en un solo paso! Por supuesto, el gráfico puede usarse para desplegar el cluster Sync Gateway conectado exclusivamente a un Servidor Couchbase que no esté desplegado usando Helm. La instalación de Sync Gateway está desactivada por defecto.
Si desea desplegar el Sync Gateway, cree un anular para la valores.yaml personalizarlo para adaptarlo a sus necesidades de implantación e instalarlo.
|
1 |
$ timón instale sincronizar-pasarela-timón -valores misvalores.yaml couchbase/couchbase-operador |
¿Qué sigue?
En los tutoriales se puede ver que sólo se necesitan un par de pasos para desplegar los contenedores de Sync Gateway mediante Kubernetes.
Si tiene alguna pregunta o sugerencia, deje un comentario a continuación o póngase en contacto conmigo en Twitter @rajagp o envíame un correo electrónico. En Foros de Couchbase son otro buen lugar para plantear preguntas.
Agradecimientos
Me gustaría dar las gracias a Simon Murray por sus comentarios sobre el tutorial.