kftray: менеджер порт-форвардинга для Kubernetes с поддержкой TLS

kftray: менеджер порт-форвардинга для Kubernetes с поддержкой TLS

kftray — это менеджер порт-форвардинга для Kubernetes, позволяющий удобно открывать локальные сервисы публично, с поддержкой TLS и инспекции HTTP-трафика. Он включает функции обратного туннелирования, UDP-трафика и многоуровенного проксирования в кластерах Kubernetes.

Проект на Rust и предлагает как графический интерфейс, так и TUI. Полезен для разработчиков, которым нужно быстро тестировать локальные приложения в публичной среде без сложного конфигурирования и необходимости ручного пробрасывания портов. Вместо дополнительных инструментов вроде ngrok, kftray предлагает более интегрированное решение для Kubernetes.

В README не указаны явные ограничения, но стоит помнить, что проект находится на ранней стадии развития, так что могут быть недочёты. Запуск осуществляется через стандартные методы установки для приложений на Rust.


kftray Logo

Сайт | Скачивания | Блог

Проект kftray представляет собой инструменты для порт-форвардинга в Kubernetes, которые облегчают работу по сравнению с традиционным инструментом `kubectl port-forward`. Главной проблемой последнего является необходимость вручную восстанавливать связи, когда поды перезапускаются или теряются соединения. kftray включает в себя десктопное приложение с интеграцией в системный трей и терминальный интерфейс kftui, которые используют общий бэкенд на Rust и работают с API Kubernetes.

Зачем нужен kftray?

kftray и kftui решают несколько ключевых проблем, связанных с порт-форвардингом в Kubernetes:

  • Автоматическое восстановление соединений — инструменты автоматически переподключаются к здоровым подам.
  • Поддержка нескольких портов — управляй множественными соединениями из одного интерфейса.
  • Поддержка UDP — в отличие от стандартного kubectl, здесь доступно.
  • Логи трафика HTTP — возможность отладки HTTP-запросов.

Установка и запуск

Чтобы установить kftray, ты можешь воспользоваться страницей скачиваний на официальном сайте. Приложение доступно на различных платформах, и процесс установки и использования описан в документации.

Для терминального интерфейса kftui ты можешь установить его через Homebrew, Cargo или скачать напрямую. С полными инструкциями можно ознакомиться в документации:

Как это работает?

kftray использует API Kubernetes для отслеживания состояния подов и автоматически выполняет переподключение при необходимости. Инструменты позволяют управлять конфигурацией порт-форвардинга, которая хранится в формате JSON. Вот пример такой конфигурации:

[
  {
    "alias": "argocd",
    "context": "kind-kftray-cluster",
    "kubeconfig": "/Users/henrique/.kube/kind-config-kftray-cluster",
    "local_port": 16080,
    "namespace": "argocd",
    "protocol": "tcp",
    "remote_port": 8080,
    "service": "argocd-server",
    "workload_type": "service",
    "http_logs_enabled": true
  }
]

Также доступны различные типы нагрузок, например, service — для соединений с сервисами Kubernetes и expose — для обратного туннелирования локальных сервисов с использованием kftray.

Ограничения и предостережения

Несмотря на множество функций, важно отметить, что обновления файла hosts могут потребовать административных прав и различаться в зависимости от операционной системы. Также необходимо учитывать, что логи HTTP и повторные запросы могут раскрывать чувствительные данные, поэтому стоит проявлять осторожность.

В целом, kftray и kftui предоставляют удобные решения для управления порт-форвардингом в Kubernetes с улучшенной функциональностью и меньшими затратами времени на ручные операции.

Открыть на GitHub: hcavarsan/kftray →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте