Ceilometer использование
Обзор
Службы сбора данных телеметрии предоставляют следующие функции:
- Эффективно опрашивает данные измерений, связанные с услугами OpenStack.
- Собирает данные о событиях и измерениях, отслеживая уведомления, отправленные службами.
- Публикует собранные данные для различных целей, включая хранилища данных и очереди сообщений.
Служба телеметрии состоит из следующих компонентов:
-
Вычислительный агент (
ceilometer-agent-compute
) Запускается на каждом вычислительном узле и опрашивает статистику использования ресурсов. -
Центральный агент (
ceilometer-agent-central
) Запускается на сервере центрального управления для опроса статистики использования ресурсов для ресурсов, не привязанных к экземплярам или вычислительным узлам. Можно запустить несколько агентов для горизонтального масштабирования службы. -
Агент уведомления (
ceilometer-agent-notification
) Работает на сервере (серверах) центрального управления и использует сообщения из очередей сообщений для создания данных о событиях и измерениях. Затем данные публикуются для определенных целей. По умолчанию данные передаются в Gnocchi .
Эти службы взаимодействуют с помощью шины обмена сообщениями OpenStack. Данные облакомера предназначены для публикации в различных конечных точках для хранения и анализа.
Установка на контроллер (контейнер)
apt-get update
apt-get install gnocchi-api gnocchi-metricd python-gnocchiclient
gnocchi-upgrade
apt-get install ceilometer-agent-notification ceilometer-agent-central
ceilometer-upgrade --skip-metering-database
groupadd -g 111 libvirt
useradd -G libvirt ceilometer
useradd -G nova ceilometer
Установка gnocchi
cd /opt
git clone https://github.com/gnocchixyz/gnocchi.git --depth=1 /opt/gnocchi
pip install wheel
pip install setuptools
pip install -c http://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=stable/pike /opt/gnocchi
Установка клиента
barbican
- Key Manager Service APIceilometer
- Telemetry APIcinder
- Block Storage API and extensionscloudkitty
- Rating service APIdesignate
- DNS service APIfuel
- Deployment service APIglance
- Image service APIgnocchi
- Telemetry API v3heat
- Orchestration APIkeystone
- Identity service API and extensionsmagnum
- Containers service APImanila
- Shared file systems APImistral
- Workflow service APImonasca
- Monitoring APImurano
- Application catalog APIneutron
- Networking APInova
- Compute API and extensionssahara
- Data Processing APIsenlin
- Clustering service APIswift
- Object Storage APItrove
- Database service API
Ставим клиента ceilometer и gnocchi:
Интеграция с Cinder
Добавить в /etc/cinder/cinder.conf:
Включите периодическую статистику использования, относящуюся к блочному хранилищу. Чтобы использовать ее, нужно запустить эту команду в следующем формате:
cinder-volume-usage-audit --start_time='2022-01-17 00:00:00' --end_time='2022-02-05 23:00:00' --send_actions
2022-02-05 22:38:51.570 2050 INFO cinder [req-3115d246-8248-49f1-9f7d-905f577c79d1 - - - - -] Starting volume usage audit
2022-02-05 22:38:51.570 2050 INFO cinder [req-3115d246-8248-49f1-9f7d-905f577c79d1 - - - - -] Creating usages for 2022-01-17 00:00:00+00:00 until 2022-02-05 23:00:00+00:00
2022-02-05 22:38:51.803 2050 INFO cinder [req-3115d246-8248-49f1-9f7d-905f577c79d1 - - - - -] Found 169 volumes
2022-02-05 22:39:00.512 2050 INFO cinder [req-3115d246-8248-49f1-9f7d-905f577c79d1 - - - - -] Found 0 snapshots
2022-02-05 22:39:00.523 2050 INFO cinder [req-3115d246-8248-49f1-9f7d-905f577c79d1 - - - - -] Found 0 backups
2022-02-05 22:39:00.523 2050 INFO cinder [req-3115d246-8248-49f1-9f7d-905f577c79d1 - - - - -] Volume usage audit completed
Добавить в cron для периодического запуска:
Установка координатора Redis
По умолчанию используется координатор file. Но он не поддерживает нужную нам функциональность.
2022-02-05 23:34:37.222 115704 INFO gnocchi.service [-] Gnocchi version 3.1.16
2022-02-05 23:34:44.410 116038 WARNING gnocchi.cli [-] Configured coordination driver does not support required functionality. Coordination is disabled.: NotImplemented
Необходимо установить и настроить redis.
Проверка работы
gnocchi resource list --type image
IMAGE_ID=$(glance image-list | grep 'cirros' | awk '{ print $2 }')
glance image-download $IMAGE_ID > /tmp/cirros.img
Ошибка в логе gnocchi-metricd.log:
Ставим plotly: