From FedoraProject

Jump to: navigation, search


Hostinfo Configuration

Enabling hostinfo per host

The hostinfo feature can be enabled or disabled globally by turning the hostinfod (daemon) on or off, using chkconfig, ie:


chkconfig hostinfo on
service hostinfo start


chkconfig hostinfo off
service hostinfo stop

List current status:

chkconfig --list hostinfo
service hostinfo status

Enabling hostinfo per guest

The hostinfo feature must also be enabled for each guest. Administrators will do this using virt-install (at guest installation), virt-manager (for existing guests), or a custom command line tool. What these programs actually do is to create or remove a <serial/> clause in the guest's libvirt XML configuration, which looks like this:

<serial type='unix'>
  <source mode='bind' path='/var/lib/hostinfo/$driver-$name'/>
  <target port='1'/>

where $driver and $name are replaced with the domain's driver (eg. qemu) and name.

The target port will default to 1 (ie. ttyS1 / COM2) but could have other values if this port is already used.

A guest is reckoned to have hostinfo enabled if and only if there is a <serial/> clause, with a source path attribute starting with '/var/lib/hostinfo/'.

It is an error for a guest to have more than one hostinfo serial port. It is also an error if the path does not contain the correct $driver and $name.

If no fine-tuning is done (see below), the guest gets a selection of statistics, and is allowed to query the host at most once per second.

Fine-tuning hostinfo configuration

Which statistics are made available to guests and how often they may query is determined by fine-tuning through the daemon configuration file:


This file has a simple format, driver-name pairs, wildcards, along with a set of rules which apply to those. The daemon consults this list and uses the first match.

qemu-myguest:              # Rule applies to qemu/KVM domain called 'myguest'
  interval = 60            # May only query once per 60 seconds
  physcpus = 0             # May not see physical CPUs

qemu-*:                    # Rule applies to all other qemu/KVM domains
  interval = 30            # May only query once per 30 seconds

*:                         # Default rule, any not matched above
  interval = 1             # May query up to once per second
  physcpus = 1             # May query physical CPUs

The wildcard matches the names of the Unix domain sockets in /var/lib/hostinfo/ directory.

There is no need to restart the daemon after changing this file. The daemon notices any file changes and uses them immediately.