Skydive — рентген для вашей сети

06 авг 2025

Репозиторий давно не обновлялся

Последнее обновление было 1 год назад.

2,797
414
96
1 год

Представьте, что ваше приложение внезапно начало тормозить. Вы проверяете логи, мониторинг, но проблема неочевидна. А что если бы у вас была карта всей сетевой инфраструктуры, где можно буквально увидеть, как движутся пакеты данных? Именно это и предлагает Skydive — open source решение для анализа сетевой топологии в реальном времени.

Что такое Skydive?

Skydive — это как диспетчерская для вашей сети. Проект собирает информацию о топологии сети, отслеживает потоки данных и позволяет анализировать их через удобный веб-интерфейс или API. Написанный на Go, он работает с различными средами — от классических серверов до контейнеров Kubernetes.

Основные пользователи Skydive:

  • DevOps-инженеры
  • Сетевые администраторы
  • Разработчики распределенных систем
  • Специалисты по информационной безопасности

Почему стоит обратить внимание?

1. Полная картина сети

Skydive автоматически строит карту всех узлов и соединений в вашей инфраструктуре. Больше не нужно вручную рисовать схемы в Visio!

2. Исторические данные

Система хранит историю изменений топологии и трафика. Теперь можно ответить на вопрос «Что изменилось в сети за последний час?»

Реклама

3. Единый язык запросов

Используя Gremlin (язык обхода графов), вы можете запрашивать и топологию, и данные о потоках одним запросом:

docker run --net=host -ti skydive/skydive client query "g.V()"

4. Поддержка облачных сред

Skydive умеет работать с:

  • Docker
  • Kubernetes
  • OpenStack
  • OpenContrail

Как это работает технически?

Архитектура Skydive состоит из:

  1. Агенты — собирают данные с узлов сети
  2. Анализатор — центральный компонент для обработки данных
  3. Хранилище (Elasticsearch) — сохраняет исторические данные

Все компоненты можно развернуть буквально одной командой:

curl -Lo - https://github.com/skydive-project/skydive-binaries/raw/jenkins-builds/skydive-latest.gz | gzip -d > skydive && chmod +x skydive && sudo mv skydive /usr/local/bin/

SKYDIVE_ETCD_DATA_DIR=/tmp SKYDIVE_ANALYZER_LISTEN=0.0.0.0:8082 sudo -E /usr/local/bin/skydive allinone

Практическое применение

  • Отладка сетевых проблем: Быстро находите «узкие места» в маршрутизации
  • Мониторинг безопасности: Выявляйте неожиданные соединения между сервисами
  • Документирование инфраструктуры: Автоматически актуальные схемы сети
  • Тестирование изменений: Смотрите, как влияют на сеть ваши правки конфигураций

Начните за 5 минут

Для быстрого старта можно использовать Docker:

docker run -d --privileged --pid=host --net=host -p 8082:8082 -p 8081:8081 \
    -e SKYDIVE_ANALYZER_LISTEN=0.0.0.0:8082 \
    -v /var/run/docker.sock:/var/run/docker.sock -v /run/netns:/var/run/netns \
    skydive/skydive allinone

После запуска откройте http://localhost:8082 и увидите свою сеть как на ладони.

Вывод: кому подойдет Skydive?

Этот инструмент — must have для:

  • Команд, работающих с микросервисными архитектурами
  • Администраторов сложных сетевых инфраструктур
  • Компаний, переходящих в облака или использующих гибридные среды

Skydive особенно ценен тем, что не требует перестройки существующей инфраструктуры — он работает поверх неё, давая прозрачность без лишних хлопот.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.