Bug 25448 - Не работает сбор статистики xen
Summary: Не работает сбор статистики xen
Status: CLOSED NOTABUG
Alias: None
Product: Sisyphus
Classification: Development
Component: collectd-libvirt (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Michael Shigorin
QA Contact: qa-sisyphus
URL: http://collectd.org/wiki/index.php/Pl...
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-15 17:08 MSK by Alex Moskalenko
Modified: 2011-06-27 15:12 MSK (History)
15 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Moskalenko 2011-04-15 17:08:00 MSK
В следующей системе
[root@hwnode ~]# uname -a
Linux hwnode.ru 2.6.32-xen-dom0-alt36.2 #1 SMP Wed Apr 13 17:45:57 UTC 2011 x86_64 GNU/Linux
[root@hwnode ~]# rpmquery -a | grep xen
kernel-headers-xen-dom0-2.6.32-alt36.2
xen-hypervisor-4.1.0-alt1
xen-libs-4.1.0-alt1
kernel-image-xen-dom0-2.6.32-alt36.2
kernel-headers-modules-xen-dom0-2.6.32-alt36.2
xen-doc-4.1.0-alt1
xen-runtime-4.1.0-alt1
xen-4.1.0-alt1
[root@hwnode ~]# rpmquery -a | grep libvirt
collectd-libvirt-4.10.3-alt3
libvirt-0.9.0-alt2

collectd не может получить статистику гипервизора со следующим сообщением в логе:
Apr 15 16:46:24 hwnode collectd[12801]: libvirt plugin: Unable to connect: virConnectOpenReadOnly failed.
Конфигурация плагина libvirt в collectd.conf:
<Plugin libvirt>
        Connection "xen:///"
        RefreshInterval 120
        HostnameFormat "hostname name"
</Plugin>

При этом сама libvirt работоспособна:
[root@hwnode ~]# virsh -c xen:///
Добро пожаловать в virsh — интерактивный терминал виртуализации.

Введите  «help» для получения справки по командам
       «quit» для выхода

virsh # list
 ID Имя               Статус
----------------------------------
  0 Domain-0             работает
  1 Webserver            бездействует

virsh # dominfo Webserver
ID:             1
Имя:         Webserver
UUID:           f7210a81-f727-9ec0-4ae2-97191dd78558
Тип ОС:    linux
Статус:   бездействует
CPU:            1
Время CPU: 16,7s
Макс.память: 524288 kB
Занято памяти: 524288 kB
Persistent:     no
Автозапуск: выкл.

virsh # domifstat Webserver vif1.0
vif1.0 rx_bytes 256338
vif1.0 rx_packets 2213
vif1.0 rx_errs 0
vif1.0 rx_drop 0
vif1.0 tx_bytes 2160723
vif1.0 tx_packets 1668
vif1.0 tx_errs 0
vif1.0 tx_drop 0

virsh # domblkstat Webserver xvda2
xvda2 rd_req 1926
xvda2 rd_bytes 20665344
xvda2 wr_req 904
xvda2 wr_bytes 6975488
xvda2 errs 0

virsh # quit

Предположительно проблема возникла после обновления xen и libvirt.
Comment 1 Michael Shigorin 2011-04-15 23:18:26 MSK
Попробуйте пересобрать локально -- если поможет, пересоберу в сизифе.
Xen под рукой нет.
Comment 2 Alex Moskalenko 2011-06-09 15:27:50 MSK
Прошу прощения за долгое отсутствие - не было времени заняться этой проблемой. Локальная пересборка collecttd (система на базе p6) проблему не решила - все тот же libvirt plugin: Unable to connect: virConnectOpenReadOnly failed. Зато выяснилось, что при запущенном libvirtd (чего ранее не требовалось), плагин стан собирать статистику. Что интересно - virsh не требует запущенного libvirtd и все показывает и без него. Соответственно вопрос скорее в том, можно ли вернуть прошлое поведение, чтобы для плагина не требовался запущенный libvirtd.
Comment 3 Michael Shigorin 2011-06-27 15:12:06 MSK
Пока похоже, что это следствие изменения логики работы libvirt -- на страничке плагина упоминания необходимости libvirtd не вижу.  Сам спрашивал бы апстрим libvirt, поскольку соответствующий кусок плагина выглядит совсем безыскусно:

    if (conn == NULL) {
        /* `conn_string == NULL' is acceptable. */
        conn = virConnectOpenReadOnly (conn_string);
        if (conn == NULL) {
            c_complain (LOG_ERR, &conn_complain,
                    "libvirt plugin: Unable to connect: "
                    "virConnectOpenReadOnly failed.");
            return -1;
        }
    }