cAdvisor: инструмент Google для мониторинга производительности контейнеров.
cAdvisor: инструмент Google для мониторинга производительности контейнеров.

cAdvisor: ваш советник по производительности контейнера.

Привет всем, сегодня мы поговорим о cAdvisor. cAdvisor, полное название Container Advisor, — это инструмент, разработанный Google с открытым исходным кодом для мониторинга и анализа производительности контейнеров. Его основные функции включают сбор, обработку и предоставление данных об использовании ресурсов и характеристиках производительности контейнеров в режиме реального времени. Он поддерживает контейнеры Docker и может работать на любом хосте Linux.

Историю cAdvisor можно проследить с 2014 года, когда Google разработала этот инструмент для решения собственных крупномасштабных проблем управления контейнерами. cAdvisor предназначен для обеспечения глубокого понимания использования ресурсов и характеристик производительности контейнера. Он предоставляет статистику в реальном времени по использованию процессора, памяти, файлов и сети контейнера. Кроме того, cAdvisor включает простой веб-интерфейс, который можно использовать для просмотра текущих и исторических данных.

В реальном использовании cAdvisor часто используется в сочетании с другими инструментами для обеспечения комплексного решения для мониторинга. Например, Prometheus можно использовать для сбора и хранения метрик, предоставляемых cAdvisor, а Grafana — для визуализации этих данных. Эта комбинация предоставляет пользователям мощную и гибкую платформу для мониторинга контейнеров.

Далее давайте посмотрим, как запустить cAdvisor с помощью Docker и настроить его в Prometheus и Grafana.

Установка и настройка

Сначала нам нужно запустить cAdvisor в Docker. Вот команда для запуска cAdvisor:

Язык кода:sh
копировать
VERSION=v0.49.1
sudo docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:ro \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --volume=/dev/disk/:/dev/disk:ro \
  --publish 8080:8080 \
  --detach=true \
  --name=cadvisor \
  --privileged \
  --device=/dev/kmsg \
  ccr.ccs.tencentyun.com/yzchen/cadvisor:$VERSION

Далее нам нужно добавить конфигурацию cAdvisor в Prometheus. В файле конфигурации Prometheus добавьте следующее:

Язык кода:yaml
копировать
rule_files:
  - job_name: 'cadvisor'
    static_configs:
    - targets: ['localhost:8080']

Наконец, нам нужно Grafana Импортировать в cAdvisor из dashboard шаблон. ты можешь начать с Grafana Официальный сайт скачать cAdvisor из dashboard шаблон, а затем в Grafana Импортировать В этом шаблоне.

До сих пор вы успешно Docker вбегая cAdvisor и в Prometheus и Grafana Настройте его в . Теперь вы можете использовать Grafana Заходите, смотрите и анализируйте cAdvisor данные собираются.

Как использовать

Во-первых, нам нужно Docker вбегая cСоветник. Выполняется следующее cAdvisor из Docker Заказ:

Язык кода:sh
копировать
VERSION=v0.49.1
sudo docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:ro \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --volume=/dev/disk/:/dev/disk:ro \
  --publish 8080:8080 \
  --detach=true \
  --name=cadvisor \
  --privileged \
  --device=/dev/kmsg \
  ccr.ccs.tencentyun.com/yzchen/cadvisor:$VERSION

Далее нам нужно Prometheus Добавить cAdvisor из Конфигурация。Ниже приводитсясуществовать Prometheus из Конфигурациядокумент Добавить cAdvisor из Конфигурацияиз Пример:

Язык кода:yaml
копировать
rule_files:
  - job_name: 'cadvisor'
    static_configs:
    - targets: ['localhost:8080']

Наконец, мы можем Grafana Импортировать в cAdvisor из dashboard шаблон. ты можешь начать с Grafana из Официальный сайт скачать cAdvisor из dashboard шаблон, а затем в Grafana Импортировать В этом шаблоне. Таким образом, вы можете существовать Grafana видел в cAdvisor Соберите данные мониторинга.

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

в использовании cAdvisor руководить При мониторинге Docker вы можете столкнуться с некоторыми распространенными проблемами. Вот некоторые возможные проблемы и решения:

  1. cAdvisor не может запуститься: Если ты существуешь, начни cAdvisor Когда вы сталкиваетесь с проблемами, это может быть потому, что Docker контейнериз Недостаточно разрешений. существуют. В этом случае вам необходимо убедиться, что вы из Docker Контейнер имеет достаточные разрешения для доступа к ресурсам хост-системы. Вы можете использовать существование Docker бегать Заказ Добавить --privileged флаг, чтобы предоставить контейнеру больше разрешений.
  2. cAdvisor не может подключиться к Prometheus: если тысуществовать Prometheus Конфигурация Добавить Понятно cAdvisor как работа, но Prometheus Невозможно подключиться к cAdvisor, возможно, это связано с неправильными настройками целевого адреса. существования. В этом случае вам необходимо проверить свое из Prometheus Настройте и убедитесь, что адрес назначения принадлежит вам. cAdvisor Экземпляр с неверным адресом.
  3. существовать Grafana нельзя увидеть в cAdvisor из Данные: если тысуществовать Grafana Импортировать в cAdvisor из dashboard шаблон, но не вижу никаких данных, возможно, потому, что вы Prometheus Экземпляры извлекаются неправильно cAdvisor изданные. существования. В этом случае вам необходимо проверить свое из Prometheus Настройте и убедитесь, что оно правильно сканирует cAdvisor изданные.
  4. cAdvisor не может отслеживать некоторые контейнеры Docker: если ты найдешь cAdvisor Невозможно отслеживать некоторые Docker контейнер, вероятно потому, что эти контейнеры не были должным образом смонтированы на cСоветник. существования. В этом случае вам необходимо проверить свое из Docker Запустите команду и убедитесь, что все необходимые изконтейнеры мониторинга правильно смонтированы на cAdvisor。

Подвести итог

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

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose