Гид по технологиям

Установка и базовое использование Sysdig на Debian 11

7 min read Мониторинг. Обновлено 24 Nov 2025
Установка и быстрое руководство по Sysdig
Установка и быстрое руководство по Sysdig

Скриншот интерфейса Sysdig при обзоре системы

Что такое Sysdig и для кого он полезен

Sysdig — это кроссплатформенный инструмент для мониторинга, захвата и анализа событий в операционной системе. Он полезен системным администраторам, инженерам SRE, разработчикам и всем, кто отлаживает приложения на Linux или проверяет поведение контейнеров. Sysdig собирает подробные события ядра, системные вызовы и сетевую активность, а также умеет визуализировать и фильтровать данные в реальном времени.

Краткое определение: Sysdig — демонстрационный и отладочный инструмент для наблюдения за процессами, сетью и диском в реальном времени.

Важно: для работы многих команд Sysdig требуется root или sudo.

Основные преимущества

  • Глубокий уровень видимости: системные вызовы, сетевые соединения, дисковые операции.
  • Фильтры на уровне событий — можно искать отдельные процессы, порты, UID и многое другое.
  • Захват сессий в файл (.scap) для последующего анализа.
  • Гибкие «chisels» (скрипты-аналитики) и визуализация через csysdig.

Компетенции и требования

  • Нужен SSH-доступ к серверу.
  • Права root или sudo.
  • Debian 11 (в статье) — процесс можно адаптировать под другие дистрибутивы.

Подготовка и обновление системы

Перед установкой рекомендуется обновить пакеты:

sudo apt-get update && sudo apt-get upgrade -y

Установите зависимости: libc6 — стандартная библиотека C, curl — загрузчик по HTTP/HTTPS, gnupg — для работы с ключами, software-properties-common — удобство для репозиториев.

sudo apt install libc6 libcurl3 gnupg -y
sudo apt install software-properties-common curl -y

Совет: если curl отсутствует, можно использовать wget, но в инструкциях ниже используется curl.

Установка Sysdig на Debian 11

Для быстрой установки можно воспользоваться официальным инсталлятором от проекта: он загружает нужные пакеты и добавляет репозиторий.

sudo curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash

Процесс зависит от скорости сети и мощности сервера — подождите до завершения.

Пример вывода процесса установки:

Процесс установки Sysdig на Debian 11

После установки проверьте версию:

sysdig --version

Или получите краткую справку по командам:

sysdig -h

Справка по sysdig

Быстрый старт: csysdig — интерактивный интерфейс

Для интерактивного текстового интерфейса используйте csysdig. Он похож на htop, но для событий системы.

sudo csysdig

Интерактивный csysdig с таблицами процессов и метрик

При запуске csysdig обновляет данные каждые 2 секунды по умолчанию (параметр refresh_rate). Вы увидите колонки PID, Name, CPU, Comm и другие. Короткое описание колонок:

  • PID — идентификатор процесса, сгенерировавшего событие.
  • PPID — идентификатор родительского процесса.
  • %CPU — доля CPU, используемая процессом.
  • USER — пользователь, запустивший процесс.
  • RES — объем резидентной (не swap-овой) памяти.
  • Command — командная строка, запустившая процесс.

Нажмите Ctrl+C, чтобы остановить захват и вернуться к командной строке.

Фильтры: как быстро находить нужные события

Фильтрация — ключевая сила Sysdig. Синтаксис похож на tcpdump: логические выражения, конъюнкции, дизъюнкции и отрицания.

Посмотреть полный список доступных полей и фильтров:

sysdig -l

Примеры часто используемых фильтров:

  • По имени процесса:
sudo sysdig proc.name=nano
  • Комбинация с логикой OR:
sudo sysdig proc.name=cat or proc.name=vi
  • Сетевые события (аналог netstat):
sudo sysdig -c netstat
  • Самые ресурсоёмкие процессы по CPU:
sudo sysdig -c topprocs_cpu

Список графических или текстовых «cдышец» (chisels) можно найти в репозиторных подсказках или списке команд csysdig.

Список фильтров и шаблонов для sysdig

Захват и хранение сессий

Чтобы записать происходящее для позднего анализа, используйте опцию -w и укажите файл .scap:

sudo sysdig -w sysdig-output.scap

Команда ведёт запись до прерывания Ctrl+C. Чтобы ограничивать размер файлов и делать ротацию, используйте опцию -C (размер в мегабайтах):

sudo sysdig -C 1 -w sysdig-output.scap

Это создаст новые файлы по мере заполнения каждые 1 МБ: sysdig-output.scap, sysdig-output.scap.1, sysdig-output.scap.2 и т. д.

Проверьте файлы:

ls -l

Файлы .scap можно анализировать локально или переносить на машину аналитики.

Примеры использования и паттерны поиска

  • Диагностика высокого I/O: фильтровать дисковые операции по процессу и по файлу.
  • Проверка сетевых соединений контейнера: отфильтровать по PID контейнера или по cgroup.
  • Поиск утечек сокетов: смотреть длительные несомкнутые соединения в netstat-выходе.

Пример поиска всех операций чтения/записи, связанных с конкретным исполняемым файлом:

sudo sysdig evt.type=read or evt.type=write and proc.name=mysvc

Подсказка: комбинируйте фильтры по uid, proc.pid, fd.name и evt.type.

Методика отладки с Sysdig (мини-SOP)

  1. Зафиксировать проблему: собрать временную метку и симптомы (ошибки, время, нагрузка).
  2. Захватить короткую сессию sysdig -w в момент проявления.
  3. Просмотреть csysdig для визуальной проверки и топов.
  4. Применить узко направленные фильтры (proc.name, fd.name, evt.type).
  5. Экспортировать секцию в .scap и поделиться с коллегами.
  6. По результатам — настроить мониторинг/алерты или исправления.

Критерии приёмки: после анализа вы должны иметь четкий набор событий, подтверждающих причину инцидента, и рекомендуемые шаги по устранению.

Чек-лист для ролей

  • Системный администратор:

    • Проверить установку sysdig –version
    • Запустить csysdig для мгновенной диагностики
    • Настроить ротацию файлов .scap
  • SRE / инженер по надежности:

    • Собрать .scap при инциденте
    • Построить дашборды по topprocs_cpu и netstat
    • Автоматизировать захват при аномалиях (скрипты)
  • Разработчик:

    • Сузить фильтры на свой процесс (proc.name)
    • Просмотреть аргументы запуска в Command
    • Имитировать поведение в тестовой среде и сравнить с рабочей

Cheatsheet: часто используемые команды

ЦельКоманда

|Установить Sysdig (инсталлятор)| sudo curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig | sudo bash | |Проверить версию| sysdig –version | |Интерактивный интерфейс| sudo csysdig | |Показать список фильтров| sysdig -l | |Поймать события процесса nano| sudo sysdig proc.name=nano | |Сохранить захват в файл| sudo sysdig -w sysdig-output.scap | |Разбить файлы по 1 МБ| sudo sysdig -C 1 -w sysdig-output.scap | |Сетевые соединения| sudo sysdig -c netstat | |Топ по CPU| sudo sysdig -c topprocs_cpu |

Также полезны пользовательские chisels — поищите в репозиториях готовые наборы аналитик.

Когда Sysdig не подойдёт (ограничения)

  • В системах с минималистичным ядром без поддержки трапперов ядра Sysdig может быть ограничен.
  • На хостах с жёсткими политиками безопасности (например, неполный доступ к /proc или SELinux в строгом режиме) часть данных может быть недоступна.
  • Для глубокой трассировки приложений на уровне языка (например, трассировка вызовов внутри JVM с детальными аргументами) лучше использовать профайлеры уровня приложения.

Альтернативы и их сильные стороны

  • strace — низкоуровневая трассировка системных вызовов для конкретного процесса; проще и легче, но не так удобно для широкого мониторинга.
  • bpftrace / eBPF-инструменты — мощные и низкоуровневые, часто более эффективны по нагрузке и гибки, но требуют знания BPF.
  • tcpdump — ориентирован на сеть, не собирает системные вызовы и события процессов.

Отладочный сценарий: найти странный рост CPU за 5 минут

  1. Зафиксируйте время аномалии.
  2. Запустите краткий захват: sudo sysdig -w cpu-incident.scap
  3. Остановите через 2–5 минут.
  4. Откройте csysdig или проанализируйте: sudo sysdig -r cpu-incident.scap -c topprocs_cpu
  5. Если процесс найден, примените фильтр proc.name=имя и изучите сетевые/файловые операции.

Безопасность и разрешения

Sysdig требует привилегий для доступа к сырым событиям ядра. На продакшне следите за регламентом доступа: давайте sudo лишь уполномоченным инженерам и храните .scap в защищённом месте.

Полезные практики при эксплуатации

  • Автоматическая ротация .scap и удаление старых файлов.
  • Интеграция захвата в инцидентные триггеры (скрипт запускает sysdig при превышении SLI).
  • Хранение коротких срезов при изменениях конфигурации для сравнения.

Mermaid: простая логика решения, запускать ли захват

flowchart TD
  A[Произошла аномалия?] -->|нет| B[Наблюдать]
  A -->|да| C[Есть критичность?]
  C -->|высокая| D[Запустить sysdig -w и оповестить команду]
  C -->|низкая| E[Запустить короткий захват 1-2 мин]
  D --> F[Анализ .scap и действия]
  E --> F

Часто задаваемые вопросы

Q: Можно ли запускать Sysdig в контейнере?
A: Да, но нужно дать контейнеру доступ к необходимым возможностям ядра (привилегии, монтирование /dev и /proc). В prod это требует осторожности.

Q: Сильно ли влияет Sysdig на производительность?
A: Sysdig написан с учётом производительности, но длительные захваты в интенсивных системах могут создавать нагрузку и быстро заполнять диск. Используйте короткие захваты и ротацию.

Q: Как поделиться .scap с коллегой?
A: Перед передачей убедитесь, что в файле нет секретов. Сжимайте файл и отправляйте по защищённому каналу.

Резюме

Sysdig — универсальный инструмент для наблюдения и отладки Linux-систем и контейнеров. Он комбинирует гибкую фильтрацию событий, интерактивный интерфейс csysdig и возможность записывать сессии для последующего анализа. Для быстрого старта на Debian 11 следуйте инструкции установки, изучите базовые фильтры и сохраните типовые команды в виде шаблона для вашей команды.

Полезные ссылки: загляните в официальную документацию Sysdig для chisels, готовых шаблонов и подробных руководств.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

RDP: полный гид по настройке и безопасности
Инфраструктура

RDP: полный гид по настройке и безопасности

Android как клавиатура и трекпад для Windows
Гайды

Android как клавиатура и трекпад для Windows

Советы и приёмы для работы с PDF
Документы

Советы и приёмы для работы с PDF

Calibration в Lightroom Classic: как и когда использовать
Фото

Calibration в Lightroom Classic: как и когда использовать

Отключить Siri Suggestions на iPhone
iOS

Отключить Siri Suggestions на iPhone

Рисование таблиц в Microsoft Word — руководство
Office

Рисование таблиц в Microsoft Word — руководство