vzstats

From OpenVZ Virtuozzo Containers Wiki
< Vzstats
Revision as of 12:50, 6 July 2017 by Vvs (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


vzstats это инструмент для сбора статистики об использовании OpenVZ. Эта статья попробует объяснить для чего он нужен в форме вопросов и ответов.

vzstat состоит из клиента и сервера. Клиент (пакет vzstats) устанавливается на OpenVZ сервер (аппаратную ноду), так-что у него множество клиентов. И только один сервер, который размещен на stats.openvz.org.

Общее[edit]

Какова задача vzstats?[edit]

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

Мы хотим знать сколько OpenVZ серверов существует в мире. Это непростая задача, так как OpenVZ это открытое программное обеспечение и оно может быть получено из множества мест.

Мы хотим знать какие OpenVZ ядра используют наши пользователи, какая среди них доля RHEL5 и RHEL6 ядер.

Мы хотим видеть как много людей используют новые технологии, такие как ploop и vswap.

И было бы хорошо знать под какое количество ядер CPU или количество контейнеров, или Гигабайт места на диске мы должны оптимизировать работу OpenVZ.

И мы предоставляем эту информацию Вам, в итоге.

Для чего я должен учавствовать?[edit]

Может быть потому, что Вы хотите помочь OpenVZ. Потому, что делиться это хорошо. Или Вы просто хороший человек.

Почему vzstats можно опционально выключить, а не опционально включить?[edit]

К сожалению у нас нет хорошей возможности (как в установщике или каком-либо GUI) предложить Вам включить vzstats.

Как на счет безопасности моих личных данных?[edit]

Мы постарались сделать клиент очень простым, так что Вы сами можете посмотреть какую информацию и как он собирает.

Вся информация, которую отправляет клиент, является анонимной. Она не включает Ваши IP адреса, MAC адреса, имя хоста и т.п.

Кроме собранной информации сервер знает только UUID клиента и его IP.

UUID случаен. Он используется только что бы отделять сообщения клиента от сообщений других клиентов.

IP адрес клиента естественно известен серверу. Он сохраняется в логах httpd сервера, но не используется при построении статистики.

Клиент[edit]

Как работает клиент?[edit]

При запуске vzstats делает следующее:

  1. проверяет выделен ли ему уже UUID; запрашивает выдачу одного у сервера, если он не выделен;
  2. запускает скрипты из директории /usr/libexec/vzstats;
  3. собирает их вывод в отдельные файлы, по одному файлу на скрипт;
  4. создает tar архив из всех этих файлов;
  5. отправляет этот tar архив с UUID на сервер статистики - stats.openvz.org

Где я могу увидеть исходный код клиента?[edit]

Клиент написан на shell, так что просто проверьте скрипт /usr/sbin/vzstats.

Так же код клиента доступен в git репо - http://git.openvz.org/?p=vzstats;a=summary

Что такое UUID?[edit]

Это просто уникальный случайный идентификатор в формате UUID v4 [1]. Пример такого UUID: 285ad6e8-fe62-433c-be2a-643e1c54b315

Когда vzstats запускается в первый раз он проверяет, что у него нет UUID. Запрашивает его у сервера и сохраняет полученный UUID локально.

Какая информация собирается?[edit]

Для получения подробностей смотрите скрипты в /usr/libexec/vzstats.

Скачать[edit]

Последнюю и предыдущие версии vzstats вы можете найти на Download/vzstats.

Исходный код[edit]

https://src.openvz.org/projects/OVZL/repos/vzstats/browse

Когда он запускается?[edit]

vzstats запускается в следующих случаях:

  • После установки, если OpenVZ уже установлен.
  • Когда какой-либо из пакетов OpenVZ обновлен (vzctl, vzquota, ploop, kernel)
  • Раз в месяц по крону, если crond запущен.

Вы также можете запустить его в ручную (/usr/sbin/vzstats под root) , если хотите обновить статистику по Вашему серверу.

Как отключить отправку[edit]

Вы можете полностью деактивировать клиент vzstats на Вашем компьютере выполнив следующую команду:

touch /etc/vz/vzstats-disable

Если Вы захотите включить его снова просто выполните:

rm -f /etc/vz/vzstats-disable

Сервер[edit]

Сервер состоит из следующих частей:

  • база данных (MySQL)
  • просто скрипт для генерации UUID
  • скрипт, который сохраняет переданный файл
  • скрипт для обработки и сохранения данных в базу данных
  • веб-интерфейс (http://stats.openvz.org/), который показывает статистику из базы данных

Также смотрите[edit]