Выпуск kafkalet 0.1, дСсктопного ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для Apache Kafka

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск kafkalet 0.1, дСсктопного графичСского ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Apache Kafka. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ поставляСтся Π² Π²ΠΈΠ΄Π΅ самодостаточного Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΎΠΊΠΎΠ»ΠΎ 15 ΠœΠ‘, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ установки JVM, Docker ΠΈΠ»ΠΈ запуска сСрвСрных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° Go ΠΈ TypeScript ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT. Π‘Π±ΠΎΡ€ΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹ для macOS (Intel ΠΈ Apple Silicon), Windows ΠΈ Linux.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π²Π΅Π±-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… инструмСнтов, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Kafka UI ΠΈ AKHQ, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ… развёртывания сСрвСрного процСсса Π² Docker, kafkalet Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ΅ дСсктопноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ β€” Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ DBeaver ΠΈΠ»ΠΈ DataGrip для Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. ЕдинствСнным дСсктопным Kafka-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ Π΄ΠΎ сих ΠΏΠΎΡ€ оставался Offset Explorer (Ρ€Π°Π½Π΅Π΅ Kafka Tool), написанный Π½Π° Java ΠΈ Π΄Π°Π²Π½ΠΎ Π½Π΅ обновлявшийся. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ kafkalet построСно Π½Π° Π±Π°Π·Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Wails v2, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅Π³ΠΎ Go-бэкСнд с Π²Π΅Π±-интСрфСйсом Π½Π° React 18, TypeScript ΠΈ shadcn/ui Π² Π΅Π΄ΠΈΠ½Ρ‹ΠΉ Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». Для взаимодСйствия с Kafka ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° franz-go, рСализованная Π½Π° чистом Go Π±Π΅Π· зависимости ΠΎΡ‚ librdkafka ΠΈ CGO.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ возмоТности:

  • БистСма ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ΠΉ для управлСния нСсколькими окруТСниями (production, staging, dev). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Ρ€ΠΎΠΊΠ΅Ρ€ Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… записСй с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ быстрого ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. ΠŸΠ°Ρ€ΠΎΠ»ΠΈ ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ хранятся ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² систСмном Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ сСкрСтов ОБ (macOS Keychain, Windows Credential Manager, libsecret Π½Π° Linux) ΠΈ Π½Π΅ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹.
  • Π Π΅ΠΆΠΈΠΌ Observer β€” Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ сообщСний ΠΈΠ· Ρ‚ΠΎΠΏΠΈΠΊΠ° Π±Π΅Π· ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ consumer group, Π±Π΅Π· ΠΊΠΎΠΌΠΌΠΈΡ‚Π° смСщСний ΠΈ Π±Π΅Π· ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Ρ… эффСктов Π½Π° кластСрС. ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ Consumer позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠΈ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ смСщСния Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.
  • Навигация ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (seek to timestamp) β€” ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ сообщСниям ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π΄Π°Ρ‚Π΅ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π±Π΅Π· нСобходимости Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ смСщСния Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ: SASL PLAIN, SCRAM-SHA-256, SCRAM-SHA-512, OAUTHBEARER (статичСский Ρ‚ΠΎΠΊΠ΅Π½ ΠΈ client credentials flow), TLS с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ сСртификата сСрвСра, mTLS (взаимная аутСнтификация ΠΏΠΎ сСртификатам).
  • ΠŸΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΉ просмотр сообщСний с regex-Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π°ΠΌ ΠΈ значСниям Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ наблюдСниС Π·Π° нСсколькими Ρ‚ΠΎΠΏΠΈΠΊΠ°ΠΌΠΈ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ…. Виртуализация списка позволяСт ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ 50 000 сообщСний Π±Π΅Π· сниТСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΏΠΈΠΊΠ°ΠΌΠΈ: созданиС, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², просмотр Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², Π»ΠΈΠ΄Π΅Ρ€ΠΎΠ² ΠΈ Π½Π°Π±ΠΎΡ€Π° синхронизированных Ρ€Π΅ΠΏΠ»ΠΈΠΊ (ISR).
     Выпуск kafkalet 0.1, дСсктопного ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для Apache Kafka
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ consumer groups: просмотр отставания (lag) ΠΏΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°ΠΌ, сброс смСщСний Π½Π° earliest, latest ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ, просмотр участников Π³Ρ€ΡƒΠΏΠΏΡ‹ (client ID, хост, Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠΏΠΈΠΊΠΈ), ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π³Ρ€ΡƒΠΏΠΏ.
  • ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° сообщСний с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡŽΡ‡Π°, значСния, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°.
     Выпуск kafkalet 0.1, дСсктопного ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° для Apache Kafka
  • ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Ρ‚ΠΎΠΏΠΈΠΊΠΎΠ²: Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½ΠΈΠ΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ‚ΠΎΠΏΠΈΠΊΠΎΠ², Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° Π² ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠ°ΠΏΠΊΠΈ, поиск с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ рСгулярных Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ числу Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ².
  • Экспорт Π±ΡƒΡ„Π΅Ρ€Π° сообщСний Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON ΠΈΠ»ΠΈ CSV.
  • Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ с Confluent Schema Registry для автоматичСского дСкодирования сообщСний Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Avro.
  • БистСма JavaScript-ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ дСкодирования сообщСний (Protobuf, MessagePack ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹).
  • Π˜ΠΌΠΏΠΎΡ€Ρ‚ ΠΈ экспорт настроСк Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ, Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚ΠΎΠΏΠΈΠΊΠΎΠ² ΠΈ Π·Π°ΠΊΡ€Π΅ΠΏΠ»Ρ‘Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠΏΠΈΠΊΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π°Π²Π°Ρ‚Π°Ρ€ Π°Π²Ρ‚ΠΎΡ€Π°
Erik Peterson Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€
A ProHoster specialist with over seven years of experience in hosting, network infrastructure, and internet security. I participate in the development and maintenance of server solutions, VPN services, and client platforms. I specialize in stability, data protection, and service optimization for clients. I regularly monitor updates in industry standards and best practices.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ