Этот документ описывает основные административные действия по установке, проверке, диагностике и удалению Kickidler Server на Linux-серверах семейства Debian.
Руководство предназначено для системных администраторов, инженеров технической поддержки и специалистов, отвечающих за развертывание или сопровождение Kickidler Server.
Документ включает:
Требования являются ориентировочными и зависят от количества агентов, настроек скриншотов, периода хранения, размера базы PostgreSQL, активности отчетов и количества пользователей веб-интерфейса.
|
Платформа |
Поддерживаемые версии |
Архитектура |
Рекомендуемое назначение |
Примечание |
|
Ubuntu Server |
20.04, 22.04, 24.04 |
x64 |
Production |
Рекомендуемый вариант Linux-сервера. |
|
Debian |
10, 11, 12 |
x64 |
Production / проектное развертывание |
Перед установкой проверьте зависимости пакетов. |
|
ПРИМЕЧАНИЕ В этом руководстве указаны только Ubuntu и Debian. Для других Linux-дистрибутивов используйте отдельное проверенное руководство по развертыванию или предварительно согласуйте условия поддержки с технической поддержкой. |
|
Параметр |
Минимум / малая нагрузка |
Рекомендовано до ~1000 агентов |
1000+ / высокая нагрузка |
|
CPU |
2 vCPU / x64 |
4 vCPU / x64 |
8+ vCPU / x64 |
|
RAM |
2 GB |
4-8 GB |
16+ GB |
|
Диск |
SSD |
SSD / NVMe |
SSD / NVMe; желательно отдельный диск для PostgreSQL |
|
Свободное место |
20-40 GB без учета БД и собираемых данных |
Рассчитывается по периоду хранения данных |
Рассчитывается по фактическому объему БД, логов, скриншотов, livestream и резервных копий |
|
Сеть |
100 Mbps |
1 Gbps |
1 Gbps+ |
Примечания по хранилищу, сети и питанию:
|
Личный кабинет |
https://my.kickidler.ru |
|
Пример инсталлятора |
Kickidler_Server_2.x.x.x_amd64.run |
|
Целевая ОС |
Ubuntu Server или Debian x64 |
|
Уровень доступа |
sudo-права на сервере |
Перед установкой подготовьте:
|
ВАЖНО Если Linux EDR, антивирус или endpoint protection блокирует инсталлятор, запуск службы, работу PostgreSQL, запись логов или сетевые соединения, отключайте только блокирующую проверку и только если это разрешено политикой компании. После установки включите защиту обратно. Не добавляйте в исключения весь /, /opt, /var, /tmp или домашние каталоги пользователей. |
Перед запуском инсталлятора убедитесь, что:
Установка выполняется из терминала. На локальном сервере Ubuntu или Debian откройте Terminal. На удаленном сервере подключитесь по SSH.
|
ssh user@server-address |
Если файл был загружен через браузер на сервере, обычно он находится в папке Downloads.
|
cd ~/Downloads ls |
Если установочный файл находится в другой директории, перейдите в нужную директорию.
Файл установки.run может быть загружен без прав на выполнение. Перед запуском добавьте право выполнения.
|
chmod +x Kickidler_Server_2.x.x.x_amd64.run |
Если фактическое имя файла отличается, используйте имя файла, загруженного из личного кабинета или предоставленного технической поддержкой.
Запустите инсталлятор с правами администратора.
|
ПРИМЕЧАНИЕ sudo./Kickidler_Server_2.x.x.x_amd64.run |
|
ВАЖНО Символы пароля не отображаются в терминале во время ввода. Это нормально: пароль вводится, даже если на экране ничего не появляется. |
После запуска откроется текстовый инсталлятор Kickidler Server Setup.
|
Клавиша |
Действие |
|
Enter |
Подтвердить / продолжить |
|
Esc |
Отмена |
|
Space |
Выбрать параметр |
|
PgUp / PgDn |
Прокрутка текста |
Выполните шаги по порядку:
После успешного завершения должно появиться сообщение:
|
ПРИМЕЧАНИЕ Installation completed. |
После этого Kickidler Server должен быть установлен и запущен как системная служба.
Если установка завершается ошибкой или техническая поддержка запросила подтверждение установки, запишите терминальную сессию и повторите установку.
|
ПРИМЕЧАНИЕ script -a server_install.log sudo./Kickidler_Server_2.x.x.x_amd64.run exit |
Приложите server_install.log к обращению в поддержку и укажите, на каком шаге произошла ошибка.
Если инсталлятор сообщает, что ключ отклонен сервером лицензирования, выполните следующие действия.
После установки откройте центральный веб-интерфейс сервера в браузере на сервере:
|
http://localhost:8123 |
С другого компьютера в той же сети используйте IP-адрес или DNS-имя сервера:
|
http://SERVER_ADDRESS:8123 |
Замените SERVER_ADDRESS на фактический IP-адрес или DNS-имя Linux-сервера.
|
Поле |
Значение по умолчанию |
|
Логин |
admin |
|
Пароль |
admin |
|
ВАЖНО Обязательно после первого входа. После первого входа измените пароль администратора и храните его согласно политике паролей вашей компании. |
Kickidler Server использует несколько сетевых портов. Открывайте только те порты, которые требуются для вашего сценария, и только из сетей, которым нужен доступ.
|
Порт |
Назначение |
Входящий доступ |
|
8123/tcp |
Веб-интерфейс и REST API |
Да, из сети администраторов/пользователей |
|
16000/tcp |
Точка подключения агентов |
Да, с рабочих станций агентов |
|
16001/tcp |
Live/WebSocket-канал веб-интерфейса |
Да, из сети авторизованных пользователей |
|
5432/tcp |
Внешний PostgreSQL |
Только если PostgreSQL находится на другом хосте |
|
5433/tcp |
Встроенный PostgreSQL |
Нет, оставлять только локально |
Пример для ufw на системах Ubuntu/Debian, где используется ufw:
|
sudo ufw allow 8123/tcp sudo ufw allow 16000/tcp sudo ufw allow 16001/tcp sudo ufw status |
|
ПРИМЕЧАНИЕ Не открывайте PostgreSQL для рабочих станций пользователей, агентов или интернета. Если используется внешний PostgreSQL, разрешайте доступ только между Kickidler Server и хостом PostgreSQL. |
После установки проверьте следующее:
Откройте веб-интерфейс на сервере:
|
http://localhost:8123 |
Или с другого компьютера в локальной сети:
|
http://SERVER_ADDRESS:8123 |
Если страница открывается и появляется форма входа, веб-интерфейс Kickidler Server доступен. Если страница не открывается, проверьте:
Проверьте статус службы:
|
sudo systemctl status kickidler |
Если используется встроенный PostgreSQL, также проверьте:
|
sudo systemctl status kickidler-pg |
При корректной работе сервера статус службы должен быть active / running.
Если служба не запущена, попробуйте запустить ее:
|
sudo systemctl start kickidler |
Если служба не запускается или сразу останавливается, проверьте journald и nns_v2.log:
|
sudo journalctl -u kickidler -n 200 --no-pager sudo tail -n 200 /var/log/kickidler/nns_v2.log |
Kickidler Server отвечает на health-check по HTTP-порту 8123.
|
curl -s http://localhost:8123/health |
Ожидаемый результат: ответ сервера со статусом ok, например:
|
{ "status": "ok", "time": "2026-05-26T12:00:00Z" } |
|
ПРИМЕЧАНИЕ HTTP 200 от health-check означает, что процесс запущен и HTTP-router отвечает. Это не доказывает, что agent TLS server, WebSocket server или PostgreSQL работают корректно. Дополнительно проверьте порты и логи. |
Проверьте, слушает ли сервер необходимые порты:
|
sudo ss -tlnp | grep -E '8123|16000|16001|5433' |
Если проверяете доступность с другого компьютера, укажите IP-адрес или DNS-имя сервера и нужный порт. Примеры:
|
nc -vz SERVER_ADDRESS 8123 nc -vz SERVER_ADDRESS 16000 nc -vz SERVER_ADDRESS 16001 |
Если при установке был выбран встроенный PostgreSQL, проверьте и службу PostgreSQL, и локальный порт PostgreSQL.
|
sudo systemctl status kickidler-pg --no-pager sudo ss -tlnp | grep 5433 |
Служба встроенного PostgreSQL должна быть active / running и должна слушать локально. Она не должна быть доступна из внешних сетей.
|
ПРИМЕЧАНИЕ Если используется внешний PostgreSQL, не используйте проверки kickidler-pg как основной индикатор. Вместо этого проверьте сетевую доступность внешнего хоста PostgreSQL с Kickidler Server и параметры доступа в config.yaml. |
Проблемы со свободным местом могут мешать записи PostgreSQL, сохранению скриншотов, livestream-записи, ротации логов и созданию диагностических пакетов. Проверяйте свободное место после установки и во время инцидентов.
|
df -h sudo du -sh /var/lib/kickidler /var/log/kickidler 2>/dev/null |
Если /var/lib/kickidler или /var/log/kickidler находятся на небольшом root-разделе, заранее запланируйте отдельный том хранения до подключения большого количества агентов или включения интенсивного сбора скриншотов/livestream.
Сервисный пользователь Kickidler должен иметь возможность читать файлы приложения, записывать логи, записывать собираемые данные и обращаться к данным PostgreSQL, если используется встроенный PostgreSQL.
|
id kickidler ls -ld /opt/kickidler /var/lib/kickidler /var/log/kickidler sudo -u kickidler test -r /opt/kickidler/config.yaml && echo config-readable sudo -u kickidler test -w /var/log/kickidler && echo logs-writable |
Если права были изменены вручную или инструментами backup/restore, восстановите владельца и права согласно официальной структуре установки перед перезапуском службы.
На серверах Ubuntu/Debian конфигурация firewall зависит от окружения. Проверьте ufw, если он используется, а также проверьте, не фильтрует ли трафик другой firewall или cloud security group.
|
sudo ufw status verbose sudo iptables -S | head -50 sudo ss -tlnp | grep -E "8123|16000|16001|5433" |
Если сервер размещен в облачной платформе, также проверьте правила cloud firewall/security group. Открытый локальный порт не гарантирует внешнюю доступность.
|
Проверка |
Ожидаемый результат |
Если не выполнено, проверьте |
|
Веб-интерфейс |
Страница входа открывается по http://SERVER_ADDRESS:8123 |
службу kickidler, порт 8123, firewall, nns_v2.log |
|
Служба сервера |
kickidler находится в состоянии active / running |
journald, nns_v2.log, config.yaml, PostgreSQL |
|
Health endpoint |
HTTP 200 и статус ok |
статус службы, порт 8123, логи |
|
Порт агентов |
Порт 16000 слушается и доступен из сети агентов |
firewall, server.addresses, статус лицензии |
|
Порт Live/WebSocket |
Порт 16001 слушается и доступен из сети пользователей |
firewall, reverse proxy, фильтрацию WebSocket |
|
Встроенный PostgreSQL |
kickidler-pg активен, 5433 доступен только локально |
логи службы PostgreSQL, диск, права |
|
Логи |
nns_v2.log содержит нормальные строки запуска и не содержит повторяющихся ERROR/panic |
время запуска, WARN/ERROR-строки, worker-логи |
Kickidler Server предоставляет одинаковую серверную функциональность на Windows и Linux. Отличается только уровень операционной системы, через который выполняется проверка: на Linux состояние служб проверяется через systemd, логи - через файлы и journald, порты - через ss/nc, а хранилище - через пути файловой системы в /var/lib/kickidler и /var/log/kickidler.
|
Область функции |
Метод проверки на Linux |
Ожидаемый результат |
|
Веб-интерфейс / API |
curl http://localhost:8123/health и открытие http://SERVER_ADDRESS:8123 |
HTTP отвечает, страница входа открывается. |
|
Точка подключения агентов |
Проверка 16000/tcp через ss/nc и server.addresses в /opt/kickidler/config.yaml |
Порт доступен из сети агентов, агенты получают рабочий адрес. |
|
Live / WebSocket channel |
Проверка 16001/tcp через ss/nc; nns_v2.log и worker-логи livestream |
WebSocket-канал доступен и не блокируется firewall/proxy. |
|
Отчеты и статистика |
Проверка worker-pps.log, worker-aps.log, worker-has.log, worker-tts.log, worker-recalc.log |
Workers работают без повторяющихся ERROR/WARN. |
|
Скриншоты и сохраненные данные |
Проверка /var/lib/kickidler и screencast.hostPath в config.yaml |
Путь хранения существует, есть свободное место, запись доступна сервисному пользователю. |
|
Диагностические пакеты |
Проверка diagnostics.bundleDir в config.yaml и /var/lib/kickidler/bundles |
Директория пакетов существует и имеет свободное место. |
|
Встроенный PostgreSQL |
systemctl status kickidler-pg и проверка локального порта 5433 через ss |
Служба БД запущена и не доступна извне. |
Используйте набор команд ниже как компактную сквозную проверку после установки или после изменения портов, хранилища, настроек базы данных или reverse-proxy.
|
sudo systemctl status kickidler --no-pager sudo systemctl status kickidler-pg --no-pager 2>/dev/null || true curl -s http://localhost:8123/health sudo ss -tlnp | grep -E "8123|16000|16001|5433" sudo tail -n 100 /var/log/kickidler/nns_v2.log sudo ls -ld /opt/kickidler /var/lib/kickidler /var/log/kickidler |
По умолчанию веб-интерфейс Kickidler Server доступен только в сети, где находится сервер, если внешний доступ не настроен отдельно.
Для доступа из интернета обычно требуется один из следующих вариантов:
Для внешнего доступа открывайте только порты, необходимые для конкретного сценария:
Если агенты должны подключаться к серверу из внешней сети, убедитесь, что они получают корректный адрес сервера.
По умолчанию сервер автоматически определяет не-loopback IPv4-интерфейсы. Настраивайте server.addresses вручную, если сервер находится за NAT, имеет несколько интерфейсов или агенты должны использовать DNS-имя.
Файл конфигурации:
|
/opt/kickidler/config.yaml |
Пример:
|
ПРИМЕЧАНИЕ server: addresses: "server.example.com:16000|10.0.0.5:16000" |
После изменения config.yaml перезапустите службу:
|
sudo systemctl restart kickidler |
Не рекомендуется открывать административный веб-интерфейс Kickidler Server в интернет без дополнительных ограничений.
Рекомендуемые действия:
В этом разделе пути и значения показаны отдельными блоками. Такой формат надежен при экспорте в PDF и не зависит от ширины таблицы.
Типичные пути установки Linux:
|
Элемент |
Типичное расположение |
|
Бинарный файл сервера |
/opt/kickidler/nns_v2 |
|
Основной файл конфигурации |
/opt/kickidler/config.yaml |
|
Основной лог-файл |
/var/log/kickidler/nns_v2.log |
|
Worker-логи |
/var/log/kickidler/worker-<name>.log |
|
Хранилище скриншотов |
/var/lib/kickidler/screenshots/YYYY/MM/DD/agentID/ |
|
Диагностические пакеты |
/var/lib/kickidler/bundles/ |
|
TLS-сертификаты агентов |
/opt/kickidler/certs/server.crt, server.key, ca.crt |
|
systemd unit сервера |
/lib/systemd/system/kickidler.service |
|
systemd unit встроенного PostgreSQL |
/lib/systemd/system/kickidler-pg.service |
|
Директория данных встроенного PostgreSQL |
/var/lib/kickidler/pgdata |
|
Кэш лицензии |
/var/lib/kickidler/license.cache |
|
ПРИМЕЧАНИЕ Фактический путь логов определяется параметром logs.path в config.yaml. Пути скриншотов, livestream и диагностических пакетов также могут быть изменены в config.yaml. Если путь был изменен вручную, используйте фактическое значение из config.yaml, а не предполагаемый путь. |
Фоновые задачи записывают отдельные файлы в директорию логов. Имена файлов обычно имеют следующий формат:
|
/var/log/kickidler/worker-<name>.log |
Примеры:
|
/var/log/kickidler/worker-resource-monitor.log /var/log/kickidler/worker-events.log /var/log/kickidler/worker-livestream-transcode.log |
На Linux используйте systemd для управления Kickidler Server.
|
sudo systemctl status kickidler sudo systemctl restart kickidler sudo systemctl stop kickidler sudo systemctl start kickidler sudo systemctl enable kickidler |
Встроенный PostgreSQL, если установлен:
|
sudo systemctl status kickidler-pg sudo systemctl restart kickidler-pg |
Если служба не запускается, а логи не показывают понятную причину, временно запустите сервер вручную. Ручной запуск часто сразу показывает ошибку синтаксиса config.yaml, проблему подключения к PostgreSQL или проблему прав доступа к файлам.
|
sudo -u kickidler /opt/kickidler/nns_v2 |
Остановите ручной запуск через Ctrl+C. После проверки запустите обычную службу снова:
|
sudo systemctl start kickidler |
Логи необходимы для диагностики установки, запуска службы, подключений агентов, ошибок базы данных, лицензирования и работы веб-интерфейса.
|
sudo tail -n 200 /var/log/kickidler/nns_v2.log |
Чтобы смотреть лог в реальном времени:
|
sudo tail -f /var/log/kickidler/nns_v2.log |
Также можно читать логи службы через journald:
|
sudo journalctl -u kickidler -n 200 --no-pager sudo journalctl -u kickidler -f |
Если проблема связана с отчетами, статистикой, Live, очисткой данных или производительностью, дополнительно проверьте соответствующие worker-*.log файлы.
|
sudo ls -1 /var/log/kickidler/worker-*.log sudo tail -n 200 /var/log/kickidler/worker-resource-monitor.log sudo tail -n 200 /var/log/kickidler/worker-events.log |
После успешного запуска в логах должны быть похожие строки:
|
ПРИМЕЧАНИЕ [server] Starting Kickidler Server version=2.0.X build=Y http_port=8123 ssl_port=16000 live_port=16001 [server] Database pool initialized total_conns=N max_conns=10 [server] All components initialized successfully [service] Service started successfully |
Если сервер не запускается, проверьте строки с WARN, ERROR, panic, database, license или migration вокруг времени запуска.
|
Паттерн |
Значение |
Первое действие |
|
Failed to connect to database |
PostgreSQL недоступен или указаны неверные учетные данные БД. |
Проверьте db.* в config.yaml и службу kickidler-pg или внешний PostgreSQL. |
|
License check failed |
Проверка лицензии не выполнена или сервер не может подключиться к endpoint лицензирования. |
Проверьте сеть, актуальность ключа, дату/время и точную ошибку ключа/инсталлятора. |
|
migrations failed / failed to apply |
Миграция базы данных не выполнена при запуске. |
Проверьте ошибку PostgreSQL и права. Не редактируйте схему вручную без подтверждения поддержки. |
|
panic / stack trace |
Процесс сервера аварийно завершился. |
Соберите полный блок panic и минимум 300 строк перед ним. |
|
channel full / batch flush failed |
Сервер или PostgreSQL не успевают обрабатывать входящие данные. |
Проверьте нагрузку БД, disk I/O, worker-resource-monitor и количество агентов. |
|
ffmpeg not found |
Не может работать cold-транскодирование livestream. |
Проверьте доступность ffmpeg и livestream.ffmpegPath. |
При расследовании проблемы собирайте логи вокруг точного времени возникновения. Если проблема возникла после перезапуска, приложите логи до и после перезапуска.
|
sudo journalctl -u kickidler --since "1 hour ago" --no-pager > /tmp/kickidler-journal.log sudo tail -n 1000 /var/log/kickidler/nns_v2.log > /tmp/kickidler-server-tail.log sudo ls -lh /var/log/kickidler/ |
Для проблем с производительностью, отчетами, очисткой данных или Live приложите соответствующие worker-логи дополнительно к nns_v2.log.
Архив ниже собирает самые частые файлы, необходимые для первичного анализа. Перед отправкой за пределы организации проверьте архив и удалите секреты.
|
sudo mkdir -p /tmp/kickidler-support sudo cp /opt/kickidler/config.yaml /tmp/kickidler-support/config.yaml sudo cp /var/log/kickidler/nns_v2.log /tmp/kickidler-support/nns_v2.log 2>/dev/null || true sudo cp /var/log/kickidler/worker-*.log /tmp/kickidler-support/ 2>/dev/null || true sudo systemctl status kickidler --no-pager > /tmp/kickidler-support/svc.txt sudo systemctl status kickidler-pg --no-pager > /tmp/kickidler-support/pgsvc.txt 2>/dev/null || true curl -s http://localhost:8123/health > /tmp/kickidler-support/health.txt 2>/dev/null || true hostnamectl > /tmp/kickidler-support/host.txt 2>/dev/null || true df -h > /tmp/kickidler-support/df.txt ss -tlnp > /tmp/kickidler-support/ports.txt sudo tar czf /tmp/kickidler-support-$(date +%F).tgz -C /tmp kickidler-support |
|
ВАЖНО Перед отправкой архива удалите или замаскируйте секреты в config.yaml, особенно jwt.secret, db.password, токены, приватные ключи и любые пользовательские учетные данные. |
Проверьте статус службы:
|
sudo systemctl status kickidler |
Проверьте порт веб-интерфейса:
|
sudo ss -tlnp | grep 8123 curl -I http://localhost:8123 |
Проверьте последние строки nns_v2.log:
|
sudo tail -n 200 /var/log/kickidler/nns_v2.log |
Также проверьте правила Linux firewall и сетевого firewall между клиентским компьютером и сервером.
Проверьте порт подключения агентов:
|
sudo ss -tlnp | grep 16000 nc -vz SERVER_ADDRESS 16000 |
Проверьте значение server.addresses в файле:
|
/opt/kickidler/config.yaml |
Также проверьте:
Проверьте порт Live и WebSocket:
|
sudo ss -tlnp | grep 16001 nc -vz SERVER_ADDRESS 16001 |
Проверьте, не блокируется ли WebSocket-соединение firewall, reverse proxy или корпоративным proxy. В логах проверяйте сообщения с префиксом live или livestream.
Если в логах есть ошибки подключения к базе данных, проверьте параметры базы в config.yaml:
|
ПРИМЕЧАНИЕ db: host: localhost port: 5433 user: postgres password: <secret> dbname: kickidler sslmode: disable |
Если используется встроенный PostgreSQL, обычно он доступен локально на порту 5433 и управляется службой kickidler-pg:
|
sudo systemctl status kickidler-pg sudo ss -tlnp | grep 5433 |
Если используется внешний PostgreSQL, проверьте сетевой доступ, учетные данные, SSL mode, версию PostgreSQL и права базы данных.
Если служба запускается и затем останавливается, проверьте:
Если лог-файл не показывает причину, запустите бинарный файл вручную, как описано в разделе 9.2.
Если инсталлятор завершился успешно, но веб-интерфейс недоступен, выполните проверки в следующем порядке.
|
sudo systemctl status kickidler --no-pager sudo ss -tlnp | grep 8123 curl -I http://localhost:8123 sudo tail -n 300 /var/log/kickidler/nns_v2.log sudo journalctl -u kickidler -n 300 --no-pager |
Если localhost работает, а доступ с другого компьютера нет, проблема обычно в firewall, маршрутизации, cloud security group, reverse proxy или некорректном адресе сервера.
Если сервер открывается, но агенты не появляются или не подключаются, проверьте точку подключения агентов и адрес, который получают агенты.
|
sudo ss -tlnp | grep 16000 nc -vz SERVER_ADDRESS 16000 grep -n "addresses" /opt/kickidler/config.yaml sudo tail -n 300 /var/log/kickidler/nns_v2.log |
Также подтвердите, что ключ сервера действителен, агенты используют корректную продуктовую/кабинетную среду и firewall не блокирует порт 16000 из сети рабочих станций.
Для проблем Live или replay проверьте порт 16001, фильтрацию WebSocket, worker-логи livestream и доступность хранилища.
|
sudo ss -tlnp | grep 16001 nc -vz SERVER_ADDRESS 16001 sudo tail -n 300 /var/log/kickidler/worker-livestream-finalise.log 2>/dev/null sudo tail -n 300 /var/log/kickidler/worker-livestream-transcode.log 2>/dev/null df -h |
Если сервер находится за reverse proxy, подтвердите, что WebSocket upgrade headers передаются корректно и порт 16001 или сопоставленный WebSocket route доступен.
Если отчеты или статистика задерживаются, проверьте фоновые worker-задачи, нагрузку PostgreSQL и признаки disk I/O проблем.
|
sudo tail -n 300 /var/log/kickidler/worker-resource-monitor.log 2>/dev/null sudo tail -n 300 /var/log/kickidler/worker-recalc.log 2>/dev/null sudo tail -n 300 /var/log/kickidler/worker-pps.log 2>/dev/null sudo tail -n 300 /var/log/kickidler/worker-tts.log 2>/dev/null df -h free -h |
Повторяющееся насыщение пула базы данных, медленные запросы или ошибки worker-задач нужно эскалировать вместе с worker-логами и текущим количеством агентов.
Если в логах есть ошибки записи, отсутствующие файлы, ошибки сохранения скриншотов, ошибки создания диагностических пакетов или ошибки записи PostgreSQL, проверьте использование диска и настроенные пути хранения.
|
df -h sudo du -sh /var/lib/kickidler/* /var/log/kickidler 2>/dev/null grep -E "logs:|path:|hostPath|bundleDir|livestream" -n /opt/kickidler/config.yaml |
Не удаляйте вручную файлы PostgreSQL или неизвестные директории данных. Если требуется срочная очистка, сначала соберите логи и согласуйте план очистки с поддержкой.
Если используется внешний PostgreSQL, проверьте подключение и учетные данные с хоста Kickidler Server.
|
ПРИМЕЧАНИЕ grep -n "db:" -A12 /opt/kickidler/config.yaml nc -vz POSTGRES_HOST 5432 |
Для поддержки укажите версию PostgreSQL, включен ли SSL, выполнялось ли восстановление БД из backup, и точную ошибку базы данных из nns_v2.log.
Перед удалением production-сервера решите, нужно ли сохранить базу данных, скриншоты, логи, диагностические пакеты и конфигурацию. Удаление директорий данных может безвозвратно удалить собранные данные.
Остановите Kickidler Server:
|
sudo systemctl stop kickidler |
Если установлен встроенный PostgreSQL и сервер должен оставаться остановленным, остановите его после остановки серверной службы:
|
sudo systemctl stop kickidler-pg |
Чтобы предотвратить автоматический запуск после перезагрузки:
|
sudo systemctl disable kickidler sudo systemctl disable kickidler-pg |
Для Kickidler Server, установленного через Linux.run-инсталлятор, используйте встроенный uninstaller, расположенный в директории установки сервера. Не начинайте удаление с ручного удаления директорий.
|
sudo /opt/kickidler/ka-uninstaller |
Если сервер был установлен в нестандартный путь, запустите uninstaller из фактической директории установки сервера:
|
sudo /opt/<server-path>/ka-uninstaller |
Процесс удаления похож на uninstaller Windows Server: открывается интерактивное меню, где нужно выбрать, что удалить, а затем подтвердить операцию.
Во время удаления выберите вариант в зависимости от требуемого результата:
|
Вариант удаления |
Когда использовать |
Риск / примечание |
|
Удалить только приложение |
Нужно удалить серверное приложение, но данные могут понадобиться позже. |
Если uninstaller предлагает такой выбор, сохраните конфигурацию, базу данных, логи, скриншоты и диагностические данные. |
|
Удалить приложение и выбранные данные |
Сервер выводится из эксплуатации, собранные данные больше не нужны. |
Это может безвозвратно удалить данные PostgreSQL, скриншоты, логи и пакеты. Сначала сделайте backup. |
|
Отменить удаление |
Нет уверенности в backup или требованиях к сохранению данных. |
Остановитесь и уточните, что нужно сохранить, до продолжения. |
|
ПРИМЕЧАНИЕ Безопасность удаления. Перед выбором опции удаления подтвердите, нужно ли сохранить базу данных, скриншоты, логи, диагностические пакеты, сертификаты и config.yaml. Удаление данных может быть необратимым. |
Рекомендуемый порядок удаления:
|
sudo cp /opt/kickidler/config.yaml /tmp/kickidler-config.yaml.backup 2>/dev/null || true sudo systemctl stop kickidler sudo /opt/kickidler/ka-uninstaller |
После завершения uninstaller проверьте, что службы, unit-файлы и директории были удалены или сохранены в соответствии с выбранной опцией удаления.
|
systemctl list-units --all | grep -E "kickidler|nns" || true systemctl list-unit-files | grep -E "kickidler|nns" || true ls -ld /opt/kickidler /var/lib/kickidler /var/log/kickidler 2>/dev/null || true sudo ss -tlnp | grep -E "8123|16000|16001|5433" || true |
Если после удаления службы остаются, перезагрузка обычно не является первым действием. Сначала проверьте, был ли uninstaller завершен, была ли выбранная опция удаления рассчитана на сохранение данных/служб и не остался ли процесс в активной shell-сессии.
|
ПРЕДУПРЕЖДЕНИЕ Предупреждение о данных. Не удаляйте вручную /var/lib/kickidler или данные встроенного PostgreSQL, если вы не уверены, что собранные данные и содержимое базы данных больше не нужны. |
При обращении в техническую поддержку предоставляйте достаточно контекста, чтобы воспроизвести проблему и сопоставить ее с логами сервера. Не отправляйте только скриншот без логов и вывода статуса службы.
Всегда указывайте:
|
cat /etc/os-release uname -a hostnamectl systemctl status kickidler --no-pager curl -s http://localhost:8123/health |
Приложите данные по установке и точный шаг, на котором произошла ошибка.
|
ПРИМЕЧАНИЕ script -a server_install.log sudo./Kickidler_Server_2.x.x.x_amd64.run exit |
Приложите статус службы, вывод journald, nns_v2.log и конфигурацию с удаленными секретами.
|
sudo systemctl status kickidler --no-pager sudo journalctl -u kickidler -n 500 --no-pager sudo tail -n 500 /var/log/kickidler/nns_v2.log sudo -u kickidler /opt/kickidler/nns_v2 |
Также укажите, началась ли проблема после установки, изменения конфигурации, восстановления базы, обновления, перезагрузки, переноса хранилища или изменения firewall.
Приложите информацию по сети и server.addresses.
|
sudo ss -tlnp | grep -E "16000|8123|16001" grep -n "addresses" /opt/kickidler/config.yaml sudo tail -n 500 /var/log/kickidler/nns_v2.log nc -vz SERVER_ADDRESS 16000 |
Если возможно, укажите hostname одного проблемного агента, его сетевое расположение и результат проверки порта 16000 с этой рабочей станции.
Приложите проверки web, WebSocket и firewall.
|
curl -I http://localhost:8123 sudo ss -tlnp | grep -E "8123|16001" sudo ufw status verbose sudo tail -n 500 /var/log/kickidler/nns_v2.log sudo tail -n 500 /var/log/kickidler/worker-livestream-transcode.log 2>/dev/null |
Если используется reverse proxy, укажите тип proxy, публичный URL, сопоставленные backend-порты и включен ли WebSocket upgrade.
Приложите статус службы PostgreSQL, использование диска и строки логов, связанные с базой данных.
|
sudo systemctl status kickidler-pg --no-pager sudo ss -tlnp | grep 5433 df -h sudo du -sh /var/lib/kickidler /var/log/kickidler 2>/dev/null grep -n "db:" -A12 /opt/kickidler/config.yaml sudo grep -Ei "database|postgres|migration|panic|error" /var/log/kickidler/nns_v2.log | tail -n 100 |
Если база данных восстанавливалась или переносилась, укажите, как выполнялось восстановление и началась ли проблема после него.
Используйте следующий набор команд для создания базового архива для поддержки. Проверьте файлы и удалите секреты перед отправкой.
|
sudo mkdir -p /tmp/kickidler-support cat /etc/os-release > /tmp/kickidler-support/os.txt uname -a > /tmp/kickidler-support/uname.txt hostnamectl > /tmp/kickidler-support/host.txt 2>/dev/null || true df -h > /tmp/kickidler-support/df.txt free -h > /tmp/kickidler-support/free.txt ss -tlnp > /tmp/kickidler-support/ports.txt sudo ufw status verbose > /tmp/kickidler-support/ufw.txt 2>/dev/null || true sudo systemctl status kickidler --no-pager > /tmp/kickidler-support/svc.txt sudo systemctl status kickidler-pg --no-pager > /tmp/kickidler-support/pgsvc.txt 2>/dev/null || true sudo journalctl -u kickidler -n 1000 --no-pager > /tmp/kickidler-support/journal.txt curl -s http://localhost:8123/health > /tmp/kickidler-support/health.txt 2>/dev/null || true sudo cp /opt/kickidler/config.yaml /tmp/kickidler-support/config.yaml sudo cp /var/log/kickidler/nns_v2.log /tmp/kickidler-support/nns_v2.log 2>/dev/null || true sudo cp /var/log/kickidler/worker-*.log /tmp/kickidler-support/ 2>/dev/null || true sudo tar czf /tmp/kickidler-support-$(date +%F).tgz -C /tmp kickidler-support |
|
ВАЖНО Удалите или замаскируйте jwt.secret, db.password, токены, private keys и любые клиентские чувствительные значения из config.yaml перед отправкой архива. Не отправляйте дампы базы данных или скриншоты, если поддержка явно не запросила их. |
Если Linux-uninstaller завершился ошибкой, был прерван или неожиданно оставил службы запущенными, приложите вывод uninstaller и текущее состояние служб/файлов.
|
sudo /opt/kickidler/ka-uninstaller sudo systemctl status kickidler --no-pager 2>/dev/null || true sudo systemctl status kickidler-pg --no-pager 2>/dev/null || true systemctl list-units --all | grep -E "kickidler|nns" || true ls -ld /opt/kickidler /var/lib/kickidler /var/log/kickidler 2>/dev/null || true sudo journalctl -u kickidler -n 300 --no-pager 2>/dev/null || true |
Также укажите, какой вариант удаления был выбран в меню uninstaller и планировалось ли сохранить базу данных или собранные данные.
Не отправляйте лишние чувствительные данные. Обычно технической поддержке не нужны: