¿Qué es el servicio IBM Cloud Kubernetes?

Servicio IBM Cloud Kubernetes proporciona una experiencia nativa de Kubernetes que es segura y fácil de usar. Como proveedor certificado de K8S, IBM Cloud Kubernetes Service proporciona una amplia gama de potentes funciones. Entre ellas se incluyen la programación inteligente, la autorreparación, el escalado horizontal, el descubrimiento de servicios y el equilibrio de carga. Las funciones también ayudan con los rollouts y rollbacks automatizados, y la gestión de secretos y configuración.

IBM Cloud Kubernetes Service es una de las plataformas alojadas Kubernetes certificadas bajo Ofertas de Kubernetes certificadas por el CNCF.

Este blog explicará cómo desplegar y ejecutar Couchbase Autonomous Operator en IBM Cloud Kubernetes Service utilizando Persistent Storage.

Despliegue de Couchbase Autonomous Operator en IBM Cloud Kubernetes Service

Uso de volúmenes persistentes de Kubernetes

Kubernetes volúmenes persistentes ofrecen una forma de crear pods de Couchbase con datos que residen fuera de los propios pods. Este desacoplamiento aumenta la resistencia de los datos en el clúster de Couchbase cuando un nodo se cae o los pods asociados se terminan.

Del mismo modo, los volúmenes persistentes proporcionan una mayor flexibilidad y eficiencia de despliegue porque Kubernetes mueve automáticamente los pods de Couchbase entre nodos. Esto se puede hacer sin preocuparse por ningún tiempo de inactividad o pérdida de datos. El Operador Autónomo de Couchbase soporta algunos de los volúmenes persistentes más populares de Kubernetes, tales como GlusterFS, CephRBD, AWS, Disco Azure, CMEy Portworx.

Requisitos previos

Creación de un clúster Kubernetes en IBM Cloud

  1. Iniciar sesión https://cloud.ibm.com/ y verás el panel de IBM Cloud y uno de los mosaicos "Kubernetes clusters".
  2. Haga clic en "Crear un clúster", lo que le llevará a la página del servicio Kubernetes, que contiene enlaces a documentación y planes de precios.                                  
  3. En "Crear un nuevo clúster" puede elegir entre varias opciones, empezando por "Tipo de clúster", "Grupo de recursos/ubicación", "Zona de disponibilidad del trabajador", "Versión de Kubernetes", "Tipo de instancia" y "Nombre del clúster".
  4. Después de seleccionar las opciones y pulsar "Crear clúster", el Servicio Kubernetes comenzará a desplegar su clúster. Puede comprobar el estado de su clúster en la pestaña "Overview".                                                                 
  5. Una vez que su clúster Kubernetes esté totalmente desplegado y el estado esté listo, podrá acceder al clúster. Puede utilizar las instrucciones de la pestaña "Acceso" para iniciar sesión en IBM Cloud (https://api.us-east.bluemix.net) y compruebe el estado de los nodos trabajadores de Kubernetes.
  6. Ahora ya tiene totalmente desplegado el clúster Kubernetes en IBM Cloud.

Instalación del Operador Autónomo Couchbase

  1. Antes de crear el clúster de Couchbase, debes instalar Couchbase Autonomous Operator en el clúster de Kubernetes. Para obtener instrucciones detalladas sobre cómo instalar y los requisitos previos, lea Documentación de Couchbase Autonomous Operator 1.1. A continuación se define la configuración del Operador Autónomo Couchbase.                                                                                                                                                                                                                                                                                                                                                                                                   
  2. Ahora ejecute los siguientes comandos para "Crear una función de clúster", "Crear una cuenta de servicio" y "Crear el operador".
  3. En breve, el Operador Autónomo Couchbase estará en funcionamiento.

Creación del cluster Couchbase con Persistent Storage

  1. Antes de crear el clúster de Couchbase, crea un secreto con el archivo secret.yaml que se incluye en el paquete descargado.                                                                                                                                                                                                                                                                                                                                    
  2. Para desplegar un clúster de Couchbase Server utilizando el Operador, todo lo que tiene que hacer es crear un archivo CouchbaseCluster que describe cómo quieres que sea el clúster (por ejemplo, versión de couchbase, número de nodos, tipos de servicios, clase de almacenamiento, etc.).                                                                                                                                                                                                                                                                 
  3. A continuación, introduzca ese archivo de configuración en Kubernetes.         
  4. Puede ver el despliegue, los pods, el almacenamiento y los registros a través de la consola web Kubernetes Dashboard.
  5. Los detalles del puerto para acceder a la Consola Web de Couchbase se pueden encontrar en el archivo cb-example-ui servicio que se encuentra en Servicios en la barra de navegación de la izquierda. Verás un conjunto de puertos Couchbase y sus correspondientes Node Ports. En este ejemplo, los puertos de Couchbase son 8091 (no SSL) y 18091 (SSL). Puedes acceder a la Consola Web de Couchbase en la dirección Puertos de nodoque en este ejemplo son 30306 (no SSL) y 32347 (SSL). Por lo tanto, apuntarías tu navegador a :30306, donde es la dirección IP de cualquier nodo trabajador de Kubernetes que aloje el clúster de Couchbase.                                                                             
  6. Ahora puedes conectarte al cluster de Couchbase usando las credenciales guardadas en el secreto. Otros pods de aplicación pueden montar y utilizar este secreto y comunicarse con el servicio.                                        

Recuperación automática con volúmenes persistentes

Ahora que el clúster Couchbase está desplegado y funcionando en el clúster Kubernetes vamos a ejecutar un escenario de "recuperación automática". El Operador Autónomo de Couchbase está diseñado para monitorizar siempre el cluster de Couchbase en busca de fallos. Cuando se detecta un fallo en un nodo o grupo de servidores, el Operador Couchbase está diseñado para crear automáticamente una nueva instancia, ya sea en la misma máquina anfitriona (preferiblemente) o en una máquina anfitriona diferente. Entonces reequilibrará las instancias defectuosas, añadirá la nueva instancia, y devolverá el cluster a su máxima capacidad.

Si un cluster de Couchbase está configurado con volúmenes persistentes, el Operador Autónomo de Couchbase hace lo siguiente durante un evento de auto recuperación:

  • Crea una nueva instancia y la adjunta al mismo volumen persistente
  • Realiza operaciones complejas de Couchbase, como la recuperación de nodos delta y las operaciones de calentamiento, lo que reduce el reequilibrio de datos de todas las demás instancias (una operación que requiere mucho tiempo en función del tamaño de los datos).
  • Elimina la instancia defectuosa del clúster de Couchbase y la sustituye por una nueva instancia, asegurándose de que el clúster recupera la configuración deseada sin pérdida de datos.

Para ilustrar los puntos anteriores, vamos a eliminar el pod cb-ejemplo-0002 para ver cómo se comporta el clúster.

Espero que este blog te haya dado una buena guía general para empezar con Couchbase Autonomous Operator en IBM Cloud Kubernetes Service. Sólo para recapitular sobre lo que se necesita para empezar con Couchbase Autonomous Operator en IBM Cloud Kubernetes Service ...

  1. Crear un Cuenta IBM Cloud
  2. Acceder al panel principal de IBM Cloud
  3. Crear un clúster Kubernetes
  4. Instalar Couchbase Autonomous Operator
  5. Crear un cluster Couchbase con Persistent Storage

 

Autor

Publicado por Anil Kumar, Director de Gestión de Producto, Couchbase Cloud-Native Database

Anil Kumar es el Director de Gestión de Producto en Couchbase. La carrera de Anil abarca más de 19 años de creación de productos de software en varios dominios, incluyendo software empresarial y servicios en la nube. Es un líder de producto responsable de las líneas de producto Couchbase Server, Couchbase Cloud y Kubernetes, incluyendo la evangelización de la estrategia y visión del producto con clientes, socios, desarrolladores y analistas. Antes de unirse a Couchbase, Anil pasó varios años trabajando en Microsoft Redmond. Anil tiene un máster en informática por la Universidad de Toronto (Canadá) y una licenciatura en tecnología de la información por la Universidad Tecnológica Visvesvaraya (India).

Dejar una respuesta