En el ámbito de la replicación de datos en entornos Kafka, MirrorMaker 2.0 emerge como una herramienta poderosa que va más allá de su predecesor. Esta Tecnología Preview ofrece una visión temprana de innovaciones clave, permitiendo a los usuarios probar funcionalidades y proporcionar valiosos comentarios durante el proceso de desarrollo.
Características Destacadas de MirrorMaker 2.0
Replicación Asincrónica Eficiente
MirrorMaker 2.0 consume mensajes de un clúster de origen y los replica en un clúster de destino. Basándose en el marco Kafka Connect, utiliza conectores para gestionar la transferencia de datos entre clústeres. Un MirrorSourceConnector específico facilita la replicación de temas desde un clúster fuente a un clúster destino.
Configuración Flexible de Clúster
Puede implementar MirrorMaker 2.0 en configuraciones de clúster activo/pasivo o activo/activo. La replicación bidireccional es posible en un entorno activo/activo, donde cada clúster replica los datos del otro utilizando el concepto de temas locales y remotos. Esta flexibilidad es esencial para escenarios que requieren recuperación de datos, análisis de datos agregados o restricción de acceso a datos.
Sincronización Automática de Configuración
MirrorMaker 2.0 simplifica la administración al sincronizar automáticamente la configuración de temas entre clústeres fuente y destino. Esto reduce la necesidad de reequilibrar y garantiza la integridad de los datos al monitorear y propagar cambios de configuración.
Seguimiento Preciso de Desplazamientos y Conectividad
La herramienta realiza un seguimiento meticuloso de los desplazamientos de consumidores utilizando temas internos, permitiendo restaurar completamente la replicación desde la posición correcta en caso de fallo. Además, verifica la conectividad entre clústeres mediante un tema de latido.
Reglas de Control de Acceso (ACL) Integradas
En entornos que utilizan SimpleAclAuthorizer, las reglas de control de acceso se aplican a los temas remotos. Los usuarios con acceso a un tema fuente pueden acceder a su equivalente remoto. Es esencial tener en cuenta que la autorización OAuth 2.0 no admite este acceso a temas remotos.
Implementación de MirrorMaker 2.0
Configuración Avanzada en Modo Activo/Activo
Para configurar la replicación bidireccional entre dos clústeres, edite el archivo de propiedades incluyendo información de conexión y flujos de replicación. Especifique detalles como servidores de arranque, protocolo SSL, contraseñas y ubicaciones de almacenes de confianza y claves.
clusters=cluster-1,cluster-2
cluster-1.bootstrap.servers=<my-cluster>-kafka-bootstrap-<my-project>:443
cluster-1.security.protocol=SSL
cluster-1.ssl.truststore.password=<my-truststore-password>
cluster-1.ssl.truststore.location=<path-to-truststore>/truststore.cluster-1.jks
cluster-1.ssl.keystore.password=<my-keystore-password>
cluster-1.ssl.keystore.location=<path-to-keystore>/user.cluster-1.p12
# ... (configuración similar para cluster-2)
Uso en Modo Legacy
Si se prefiere utilizar MirrorMaker 2.0 en modo legacy, edite los archivos consumer.properties y producer.properties para desactivar las características específicas de MirrorMaker 2.0.
replication.policy.class=org.apache.kafka.mirror.LegacyReplicationPolicy
refresh.topics.enabled=false
# ... (otras características deshabilitadas)
Reinicie MirrorMaker con los archivos de propiedades utilizados previamente.
Conclusión
MirrorMaker 2.0 ofrece una solución robusta y avanzada para la replicación de datos entre clústeres Kafka. Su flexibilidad, eficiencia y capacidades de sincronización automática lo posicionan como una herramienta clave en entornos donde la integridad y la disponibilidad de datos son fundamentales. ¡Explora las posibilidades de MirrorMaker 2.0 y lleva la replicación de datos en Kafka a un nuevo nivel!