Lanzamiento de Kafkalet 0.1, un cliente de escritorio para Apache Kafka

Se ha lanzado Kafkalet 0.1, un cliente gráfico de escritorio para Apache Kafka. La aplicación se entrega como un archivo binario autónomo de aproximadamente 15 MB y no requiere la instalación de una JVM, Docker ni la ejecución de componentes de servidor. El código del proyecto está escrito en Go y TypeScript y se distribuye bajo la licencia MIT. Las compilaciones están disponibles para macOS (Intel y Apple Silicon), Windows y Linux.

A diferencia de las herramientas web existentes, como Kafka UI y AKHQ, que requieren la implementación de un proceso de servidor en Docker, Kafkalet se ejecuta como una aplicación de escritorio normal, similar a DBeaver o DataGrip para bases de datos. Hasta ahora, el único cliente de escritorio de Kafka era Offset Explorer (anteriormente Kafka Tool), escrito en Java y sin actualizar desde hace tiempo. Kafkalet se basa en el framework Wails v2, que combina un backend de Go con una interfaz web escrita en React 18, TypeScript y shadcn/ui en un único binario nativo. Para la interacción con Kafka, se utiliza la biblioteca franz-go, implementada en Go puro sin dependencias de librdkafka ni CGO.

Características principales:

  • Un sistema de perfiles para gestionar múltiples entornos (producción, pruebas y desarrollo). Cada agente de un perfil puede tener varias cuentas con nombre y alternar rápidamente entre ellas. Las contraseñas y los tokens se almacenan exclusivamente en el almacén de secretos del sistema operativo (MacOS Keychain, Windows Credential Manager o libsecret en Linux) y no se escriben en archivos de configuración.
  • El modo observador lee los mensajes de un tema sin conectarse a un grupo de consumidores, sin comprometer desplazamientos y sin efectos secundarios del clúster. Un modo de consumidor independiente permite conectarse al grupo y comprometer desplazamientos manualmente.
  • Navegación por fecha y hora: navegue a los mensajes por fecha y hora específicas sin calcular manualmente los desfases. Métodos de autenticación compatibles: SASL PLAIN, SCRAM-SHA-256, SCRAM-SHA-512, OAUTHBEARER (flujo de token estático y credenciales de cliente), TLS con verificación de certificado. servidor, mTLS (autenticación de certificado mutuo).
  • Visualización de mensajes en streaming con filtrado de expresiones regulares en tiempo real para claves y valores. Se admite la monitorización simultánea de varios temas en pestañas independientes. La virtualización de listas permite mostrar más de 50 000 mensajes sin afectar el rendimiento.
  • Gestión de temas: creación, eliminación, cambio de parámetros de configuración, visualización de particiones, líderes y el conjunto de réplicas sincronizadas (ISR).  Lanzamiento de Kafkalet 0.1, un cliente de escritorio para Apache Kafka
  • Administrar grupos de consumidores: ver el retraso por partición, restablecer las compensaciones a la fecha y hora más temprana, más tardía o específica, ver los miembros del grupo (ID del cliente, host, temas asignados), eliminar grupos.
  • Envío de mensajes con clave, valor, encabezados y sección de destino especificados.  Lanzamiento de Kafkalet 0.1, un cliente de escritorio para Apache Kafka
  • Organización de temas: fija los temas usados ​​con frecuencia, agrúpalos en carpetas con nombre, busca con soporte para expresiones regulares y filtra por un número mínimo de secciones.
  • Exportar búfer de mensajes en formato JSON o CSV.
  • Integración con Confluent Schema Registry para la decodificación automática de mensajes de Avro.
  • Un sistema de complementos de JavaScript para la decodificación personalizada de mensajes (Protobuf, MessagePack y otros formatos).
  • Importe y exporte configuraciones en formato JSON, incluidos perfiles, grupos de temas y temas fijados.

Fuente: opennet.ru

Añadir un comentario