Существует ли программа для нескольких компьютеров с Ubuntu, в которой я могу фиксировать использование ЦП, памяти и графического процессора с течением времени?

Вопрос или проблема

Я ищу открытое и простое решение. Это может быть и скрипт. Я хочу получить обзор команды, если мне нужно обновить оборудование.

Честно говоря, я пытался гуглить, но не нашел ничего полезного. Если я смогу получить несколько полезных ключевых слов для поиска, я буду рад.

Я также был бы рад скрипту (коду), который подключается к каждому компьютеру и ведет лог каждые 2 часа.

Также из-за запроса на скрипты. Так что я сделал кросс-пост здесь.

Ответ или решение

Есть ли программное обеспечение для нескольких компьютеров Ubuntu для логирования использования ЦП, памяти и ГПУ?

Если вы ищете простое и открытое решение для мониторинга использования системных ресурсов на нескольких компьютерах с ОС Ubuntu, вы на правильном пути. В этой статье мы рассмотрим несколько доступных вариантов, включая как готовые решения, так и возможность написания собственного скрипта для сбора необходимых данных.

Готовые решения для мониторинга

  1. Netdata

    • Описание: Netdata – это мощный инструмент для мониторинга, который позволяет в реальном времени отслеживать использование ресурсов. Он предоставляет детализированную информацию о CPU, памяти и GПU, а также красиво визуализирует данные.
    • Установка: Установить Netdata просто, достаточно выполнить следующую команду:
      bash <(curl -Ss https://my-netdata.io/kickstart.sh)
    • Особенности: Вы можете устанавливать Netdata на каждом компьютере, а затем использовать его веб-интерфейс для централизованного мониторинга. Простой интерфейс позволяет быстро оценить текущее состояние системы.
  2. Prometheus и Grafana

    • Описание: Это комбинация двух мощных инструментов, где Prometheus собирает и хранит метрики, а Grafana визуализирует эти данные. Это решение более сложное в настройке, но и более гибкое.
    • Установка: Prometheus и Grafana устанавливаются несколько сложнее, и потребуется немного времени для настройки и конфигурации.
    • Преимущества: Гибкость, возможность масштабирования и интеграция с различными источниками данных.

Скрипт для логирования метрик

Если вы предпочитаете более простой подход, можно разработать скрипт на Bash, который будет собирать необходимые данные и отправлять их на основной сервер.

Пример скрипта
#!/bin/bash

# Директория для хранения логов
LOG_DIR="/var/log/sys-monitor"
mkdir -p "$LOG_DIR"

# Логирование
while true; do
    # Получаем текущие данные о CPU, памяти и GPU
    CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\%\) id.*/\1/" | awk '{print 100 - $1}')
    MEM_USAGE=$(free | grep Mem | awk '{print $3/$2 * 100.0}')
    GPU_USAGE=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits)

    # Записываем данные в лог файл
    echo "$(date), $CPU_USAGE, $MEM_USAGE, $GPU_USAGE" >> "$LOG_DIR/resource_usage.log"

    # Ждем 2 часа
    sleep 7200
done
Инструкция по запуску скрипта
  1. Скопируйте скрипт в текстовый файл, например monitor.sh.
  2. Сделайте его исполняемым:
    chmod +x monitor.sh
  3. Запустите скрипт:
    ./monitor.sh &

Примечание: Убедитесь, что на всех компьютерах установлены необходимые утилиты (top, free, и nvidia-smi для GPU) и что у вас есть доступ к файловой системе для записи.

Заключение

Выбор решения зависит от ваших потребностей. Если вам нужен мощный инструмент с возможностями визуализации и расширенной аналитики — обратите внимание на Netdata или комбинацию Prometheus и Grafana. Если же вам нужно что-то простое и быстрое, скрипт на Bash будет отличным выбором. Не забывайте проверять и обновлять свои ресурсы, чтобы обеспечить стабильную работу вашей команды.

Ключевые слова для поиска

  • Мониторинг ресурсов Ubuntu
  • Логирование CPU и памяти на Ubuntu
  • Скрипт мониторинга системных показателей
  • Netdata для Ubuntu
  • Prometheus и Grafana установка на Ubuntu

Эти ключевые слова помогут вам найти дополнительные ресурсы и информацию по данному вопросу.

Оцените материал
Добавить комментарий

Капча загружается...