Vemos que un número significativo de clientes aprovecha la integración de Couchbase con Apache Kafka utilizando el plugin Couchbase Kafka connector para transmitir datos de forma fiable desde y hacia Apache Kafka a escala.
Apache Kafka es una plataforma de código abierto para crear aplicaciones y canalizaciones de datos en tiempo real. Sin embargo, necesita experiencia en la administración de la infraestructura de Apache Kafka para diseñarla, operarla y administrarla por su cuenta. Amazon Managed Streaming para Apache Kafka (Amazon MSK) es un servicio totalmente gestionado y de alta disponibilidad que facilita la creación y ejecución de aplicaciones que utilizan Apache Kafka.
Amazon MSK soporta la integración con Couchbase con la función Amazon MSK Connect y el complemento del conector Couchbase Kafka. Con esta característica, puede implementar fácilmente el conector de Couchbase y escalarlo para ajustarlo a los cambios de carga.
En esta entrada del blog, vamos a ir a través de la configuración de clúster de Amazon MSK y utilizar Couchbase Kafka Connector como "fregadero" y "fuente".
Paso 1: Clúster Couchbase Capella
-
- Empiece con Prueba gratuita de Couchbase Capella
- Seleccione su región de AWS preferida y comience a utilizar el clúster Couchbase Capella en cuestión de minutos
- Configurar las credenciales de la base de datos
- Configurar una red privada mediante VPC Peering o AWS PrivateLink para la conectividad de red con su cuenta de AWS. Puede permitir el acceso desde cualquier lugar, pero no es recomendable.
- Acceder a la Herramientas de datos para crear un nuevo demo Cubo en el clúster
Paso 2: Clúster Amazon MSK y cliente Amazon EC2
Uso de AWS CloudFormation
Para empezar fácilmente podemos utilizar Plantilla de CloudFormation para Streaming Data Solutions para MSK que despliega un clúster de Amazon MSK y un cliente de Amazon EC2.
-
- Conéctese al KafkaClient utilizando la opción Session Manager
-
- Instalar Git y Apache Maven de la KafkaClient instancia
-
- Crear un tema de origen y un tema de destino de muestra en el clúster MSK para
-
- A continuación, seguiremos Guía de inicio rápido de Couchbase Sink Connector para enviar mensajes de prueba al clúster MSK.
-
- Abrir el expediente src/main/java/com/couchbase/connect/kafka/example/JsonProducerExample.java y actualice el archivo fuente Java en la línea 38 con la extensión Broker de clústeres Kafka punto de conexión
1 |
mvn compilar exec:java |
Paso 3: Configurar el plugin MSK Connect
-
- Descargar el Plugin Couchbase Kafka Connect ZIP
- Sube el archivo ZIP a un bucket S3 al que tengas acceso
- Abra el Consola Amazon MSK. En el panel izquierdo, expanda MSK Connectseleccione Plugins personalizados.
- Elija Crear plugin personalizado
- Elija Examinar S3. En la lista de cubos, busque el cubo en el que cargó el archivo ZIP y, a continuación, en la lista de objetos, seleccione el archivo ZIP.
- Entre en couchbase-kafka-connect como nombre del plugin personalizado y, a continuación, seleccione Crear plugin personalizado.
Paso 4: Crear el conector MSK para el sumidero
-
- Usando el plugin personalizado, ahora podemos crear un conector de fregadero. Abra el Consola Amazon MSK. En el panel izquierdo, en MSK ConnectElige Conectores. Elija Crear conector.
- Elija el plugin personalizado couchbase-kafka-connect y seleccione Siguiente
- Entre en couchbase-sink-example como Nombre del conector
- Seleccione el clúster MSK creado en el paso 2
Paso 5: Crear un conector MSK para la fuente
-
- Usando el plugin personalizado, ahora podemos crear un conector de fregadero. Abra el Consola Amazon MSK. En el panel izquierdo, en MSK ConnectElige Conectores. Elija Crear conector.
- Elija el plugin personalizado couchbase-kafka-connect y seleccione Siguiente.
- Entre en couchbase-source-example como Nombre del conector
- Seleccione el clúster MSK creado en el paso 2.
-
- Obtenga la cadena de conexión de Zookeeper y la cadena de conexión de Kafka Cluster Bootstrap de la página "Ver información del cliente" de su clúster MSK y utilícelo en el siguiente comando:
-
- Actualice la línea 38 del código fuente con la cadena de conexión MSK Cluster Bootstrap.
1 |
mvn compilar exec:java |
-
- Seleccione Guardar reglas. Su cluster MSK aceptará ahora todo el tráfico del cliente que ha creado en el procedimiento anterior.
Configure Plugin MSK Connect
Pasos para crear un cliente que se conecte con el clúster MSK
-
- Crear cliente Kafka en una instancia de Amazon EC2
- Este cliente se utilizará para enviar mensajes a un tema couchbase-sink en el clúster MSK y para supervisar el tema couchbase-source en busca de mensajes que lleguen al clúster MSK.
- Compruebe el grupo Estado en el Resumen del clúster página. El estado cambia de Creación de a Activo mientras Amazon MSK aprovisiona el clúster. Cuando el estado es Activopuede conectarse al clúster. Para obtener más información sobre el estado del clúster, consulte Estados agrupados.
Configurar el plugin Couchbase Kafka Connect
-
- Descargar el Plugin Couchbase Kafka Connect ZIP
- Sube el archivo ZIP a un bucket S3 al que tengas acceso
- Abra el Consola Amazon MSK. En el panel izquierdo, expanda MSK Connectseleccione Plugins personalizados.
- Elija Crear plugin personalizado
- Elija Examinar S3. En la lista de cubos, busque el cubo en el que cargó el archivo ZIP y, a continuación, en la lista de objetos, seleccione el archivo ZIP.
- Entre en couchbase-kafka-connect como nombre del plugin personalizado y, a continuación, seleccione Crear plugin personalizado.
Configurar Couchbase MSK Connector para operación sink
-
- Crear rol IAM para MSK connect basado en el ejemplo de política.
- Copie la siguiente configuración y péguela en el campo de configuración del conector.
1 2 3 4 5 6 7 |
ACTUALIZACIÓN Viajar-muestra`.inventario.aerolinea SET iata = "Q10" DONDE id = "10"; SELECCIONE * DESDE Viajar-muestra`.inventario.aerolinea DONDE id ="10"; |
Conclusión
Este post ilustra cómo puedes usar el "conector fuente" de Couchbase para publicar notificaciones de cambio de documentos desde Couchbase Capella a un tema de Kafka, así como un "conector sumidero" que se suscribe a uno o más temas de Kafka y escribe los mensajes en Couchbase Capella.
-
- Empiece hoy mismo con su propio Prueba gratuita de Couchbase Capella