vzstats

From OpenVZ Virtuozzo Containers Wiki
< Vzstats
Revision as of 16:25, 4 January 2016 by Sergey Mamonov (talk | contribs) (Created page with "Так же код клиента доступен в git репо - http://git.openvz.org/?p=vzstats;a=summary")
Jump to: navigation, search


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

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

Общее

Какова задача vzstats?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Клиент

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

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

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

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

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

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

What is UUID?

It's just a unique random ID, in UUID v4 format [1]. This is an example of UUID: 285ad6e8-fe62-433c-be2a-643e1c54b315

When vzstats is executed for the first time, it checks that there is no UUID, asks the stats server for one and stores it locally.

What info is collected?

For details, check the scripts in /usr/libexec/vzstats directory.

Download

For latest and previous versions of vzstats see Download/vzstats.

Source code

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

When it is run?

vzstats run in the following cases

  • Upon installation, if OpenVZ is already installed on the system
  • When any of OpenVZ packages are updated (vzctl, vzquota, ploop, kernel)
  • Periodically, once a month, from cron, if crond is running.

You can also run it manually (/usr/sbin/vzstats as root) if you like to update your stats on server.

How to opt-out

You can completely disable vzstats client on a machine by executing the following command:

touch /etc/vz/vzstats-disable

If you want to re-enable vzstats, just do

rm -f /etc/vz/vzstats-disable

Server

Server consists of the following components:

  • database (MySQL)
  • trivial UUID generation script
  • submission receiver script, which just stores the received file
  • submission processing scripts, populating the database
  • web interface (http://stats.openvz.org/), showing statistics from the database

See also