1VIRT-WHO-CONFIG(5)            File Formats Manual           VIRT-WHO-CONFIG(5)
2
3
4

NAME

6       virt-who-config - configuration for virt-who
7

SYNOPISIS

9       /etc/virt-who.conf /etc/virt-who.d/*.conf
10

DESCRIPTION

12       Configuration  format  is  ini-like  for  files  /etc/virt-who.conf and
13       /etc/virt-who.d/*.conf.  The configuration files located at  /etc/virt-
14       who.d/*.conf  are  called  virtualization  backend configurations.  All
15       non-hidden files in this directory (ending in '.conf')  are  considered
16       configuration files. If no section (name in square brackets) is present
17       in the configuration file, it will  be  ignored  and  warning  will  be
18       shown.   The  configuration  located  at /etc/virt-who.conf is the main
19       configuration for virt-who.  Below are descriptions  of  both  the  re‐
20       quired  and optional options for both kinds of configs and how they are
21       used.
22

GENERAL CONFIGURATION

24       The general configuration file  (located  at  /etc/virt-who.conf),  has
25       three  special  sections global, defaults, and system_environment.  The
26       settings that can be specified in defaults are any  setting  listed  in
27       the  VIRTUALIZATION BACKEND CONFIGURATION section of this manual. These
28       settings are  applied  as  defaults  to  the  configurations  found  in
29       /etc/virt-who.d/*.conf.
30
31       The settings in the global affect the overall operation of the applica‐
32       tion.  The following are options that can be specified  in  the  global
33       section:
34
35       interval
36              how  often to check connected hypervisors for changes (seconds).
37              Also affects how often a mapping is reported.
38
39       reporter_id
40              The id of this virt-who instance, reported  with  all  mappings.
41              Defaults to HOSTNAME-MACHINEID
42
43       debug  Enable debugging output
44
45       oneshot
46              Send the list of guest IDs and exit immediately
47
48       log_per_config
49              Write a separate log file per configuration in the config direc‐
50              tory
51
52       log_dir
53              The absolute path of the directory to write logs to.
54
55       log_file
56              The file name to  write  logs  to  (used  only  if  log_per_con‐
57              fig=False)
58
59       configs
60              A  list  of files containing configurations for virt-who Used to
61              specify locations other than default
62
63              The settings in the system_environment are written to  the  sys‐
64              tem's  environment  and  are  available  for the duration of the
65              process execution.  Example options that can be specified in the
66              system_environment section:
67
68       HTTPS_PROXY
69              Proxy hostname for all https requests
70
71       HTTP_PROXY
72              Proxy hostname for all http requests
73
74       NO_PROXY
75              A  comma-separated  list of hostnames or domains or ip addresses
76              to ignore proxy settings for.  Optionally this may be set to '*'
77              to  bypass  proxy  settings  for all hostnames domains or ip ad‐
78              dresses.
79
80

VIRTUALIZATION BACKEND CONFIGURATION

82       Each section (or group), denoted by an arbitrary name for the  configu‐
83       ration (in square brackets), is read in
84
85       Only  required key is type that has to have one of the allowed virtual‐
86       ization backend names: ahv, libvirt, esx, hyperv, fake, or kubevirt.
87
88       Please note that special characters must not be escaped.
89
90       Other options that can be supplied are:
91
92       server Hostname, IP address or URL of the server that provides virtual‐
93              ization information (not applicable for kubevirt mode).
94
95       username
96              Username  for  authentication  to the server (not applicable for
97              kubevirt mode). May include domain. Do not escape the  backslash
98              between domain and username.
99
100       password
101              Password  for  authentication  to the server (not applicable for
102              kubevirt mode).
103
104       encrypted_password
105              Alternative to the password option, encrypted password  that  is
106              generated by virt-who-password(8) utility.
107
108       owner  Owner  for use with Subscription Asset Manager, the Red Hat Cus‐
109              tomer Portal, or Satellite 6 (not applicable for Satellite 5)
110
111       rhsm_username
112              Optional username to use to communicate with Subscription  Asset
113              Manager  or Satellite 6 instead of the registered system's iden‐
114              tity certificate. (not applicable for Satellite 5)
115
116       rhsm_password
117              Optional password to use to communicate with Subscription  Asset
118              Manager  or Satellite 6 instead of the registered system's iden‐
119              tity certificate. (not applicable for Satellite 5)
120
121       rhsm_encrypted_password
122              Alternative to the rhsm_password option, encrypted password that
123              is generated by virt-who-password(8) utility.
124
125       rhsm_hostname
126              Optional hostname of the Subscription Asset Manager or Satellite
127              6 server to use in place of the host  defined  in  the  system's
128              rhsm.conf.
129
130       rhsm_port
131              Optional  port for the Subscription Asset Manager or Satellite 6
132              server to use in place of  the  port  defined  in  the  system's
133              rhsm.conf.
134
135       rhsm_prefix
136              Optional  prefix for the Subscription Asset Manager or Satellite
137              6 server to use in place of the prefix defined in  the  system's
138              rhsm.conf.
139
140       rhsm_proxy_hostname
141              Optional  proxy  host name for the Subscription Asset Manager or
142              Satellite 6 server to use in place of the proxy  host  name  de‐
143              fined in the system's rhsm.conf.
144
145       rhsm_proxy_port
146              Optional proxy port for the Subscription Asset Manager or Satel‐
147              lite 6 server to use in place of the proxy port defined  in  the
148              system's rhsm.conf.
149
150       rhsm_proxy_user
151              Optional  proxy  username  for the Subscription Asset Manager or
152              Satellite 6 server to use in place of the proxy username defined
153              in the system's rhsm.conf.
154
155       rhsm_proxy_password
156              Optional  proxy  password  for the Subscription Asset Manager or
157              Satellite 6 server to use in place of the proxy password defined
158              in the system's rhsm.conf.
159
160       rhsm_encrypted_proxy_password
161              Alternative  to  the rhsm_proxy_password option; encrypted pass‐
162              word generated by the virt-who-password(8) utility.
163
164       rhsm_no_proxy
165              Optional proxy settings for the Subscription  Asset  Manager  or
166              Satellite  6  server  to use in place of the no proxy filter de‐
167              fined in the system's rhsm.conf.
168
169       rhsm_insecure
170              Optional boolean to eliminate the validation of tls certificates
171              during connection to the Subscription Asset Manager or Satellite
172              6 server to use in place of insecure value defined in  the  sys‐
173              tem's rhsm.conf.
174
175       sat_server
176              Hostname, IP address or URL of the Satellite 5 server.
177
178       sat_username
179              Username for authentication to the Satellite 5 server.
180
181       sat_password
182              Password for authentication to the Satellite 5 server.
183
184       sat_encrypted_password
185              Alternative  to  sat_password option, encrypted password that is
186              generated by virt-who-password(8) utility.
187
188       filter_hosts
189              Only hosts which uuid (or hostname or hwuuid, based on  hypervi‐
190              sor_id) is specified in comma-separated list in this option will
191              be reported. Wildcards and regular  expressions  are  supported.
192              Put  the  value  into  the  double-quotes if it contains special
193              characters (like comma). filter_host_uuids is  deprecated  alias
194              for this option.
195
196       exclude_hosts
197              Hosts which uuid (or hostname or hwuuid, based on hypervisor_id)
198              is specified in comma-separated list in this option will NOT  be
199              reported.  Wildcards and regular expressions are supported.  Put
200              the value into the double-quotes if it contains special  charac‐
201              ters  (like  comma).  exclude_host_uuids is deprecated alias for
202              this option.
203
204       filter_type
205              When this property is not set, then  virt-who  tries  to  detect
206              wildcards  or regular expression in value of filter_hosts or ex‐
207              clude_hosts. This option allows to specify usage of regular  ex‐
208              pression (value 'regex') or wildcards (value 'wildcards').
209
210       hypervisor_id
211              Property  that  should be used as identification of the hypervi‐
212              sor. Can be one of following: uuid, hostname, hwuuid. Note  that
213              some virtualization backends don't have all of them implemented.
214              Default is uuid. hwuuid is applicable to esx only. This property
215              is  meant  to be set up before initial run of virt-who. Changing
216              it later will result in duplicated entries in  the  subscription
217              manager.
218
219       #kubeconfig
220              Path to Kubernetes configuration file which contains authentica‐
221              tion and connection details. Used by kubevirt option
222
223       #kubeversion
224              API version used to override kubevirt api version  fetched  from
225              the cluster. Used by kubevirt option
226
227       #insecure
228              Eliminate  validation  of  tls certificates during connection to
229              kubevirt
230
231

EXAMPLE

233       [test-esx]
234       type=esx
235       server=1.2.3.4
236       username=admin
237       password=password
238       owner=test
239       rhsm_username=admin
240       rhsm_password=password
241
242

BACKEND SPECIFIC OPTIONS

244   ESX BACKEND
245       filter_host_parents
246              Only hosts which cluster ID is specified in comma-separated list
247              in  this  option will be reported. Put the name into the double-
248              quotes if it contains special characters (like comma).  PowerCLI
249              command  to  find the domain names in VMware `Get-Cluster “Clus‐
250              terName” | Select ID`
251
252       exclude_host_parents
253              Exclude hosts which cluster ID is specified  in  comma-separated
254              list  in this option will NOT be reported. Put the name into the
255              double-quotes if it contains special  characters  (like  comma).
256              PowerCLI command to find the domain names in VMware `Get-Cluster
257              “ClusterName” | Select ID`
258
259       simplified_vim
260              virt-who  by  default  uses  stripped-down  version  of  vimSer‐
261              vice.wsdl  file  that  contains vSphere SOAP API definition. Set
262              this option to false to use server provided wsdl file that  will
263              be retrieved automatically.
264
265
266   NUTANIX BACKEND
267       prism_central
268              Any  value  set for this parameter will cause the application to
269              use Version 3 communication with the AHV API
270
271
272   KUBEVIRT BACKEND
273       Kubevirt backend uses a Kubernetes configuration file where  there  are
274       cluster  connection  details  and  an authentication token. There is no
275       need to provide a hostname nor  user  credentials.   Before  using  the
276       kubeconfig  file  please make sure to login to the cluster so the token
277       is written to the file. To login you need to run:
278
279       oc login --username=myuser --password=mypass
280
281
282   FAKE BACKEND
283       Fake backend reads host/guests associations from the file on disk,  for
284       example:
285
286       [fake-virt]
287       type=fake
288       file=/path/to/json
289       is_hypervisor=True
290
291
292       type   Must be always fake.
293
294
295       is_hypervisor
296              If  true (default), the option determines that the fake data are
297              fetched from multihost environment.
298
299
300       file   Absolute path to the JSON file that has the  same  structure  as
301              file returned from virt-who --print command, for example:
302              {
303                  "hypervisors": [
304                      {
305                          "uuid": "7e98b6ea-0af1-4afa-b846-919549bb0fe2",
306                          "guests": [
307                              {
308                                  "guestId":
309              "8ae19f08-2605-b476-d42e-4bd5a39f466c",
310                                  "state": 1
311                              },
312                              ...
313                          ]
314                      },
315                      ...
316                  ]
317              }
318
319

CONFIGURATION MIGRATION

321       Previous versions of virt-who employed additional means  of  configura‐
322       tion:
323
324       Setting  of  environment variables [set in the user's profile script or
325       in the default global profile]
326       A service environment file [/etc/sysconfig/virt-who]
327
328       The new version of virt-who no longer supports setting most options via
329       the  environment.  In order to not lose previously valid configurations
330       that made use of environment variables, a  migration  script  has  been
331       added.  That script will incorporate the known system environment vari‐
332       ables [VIRTWHO_INTERVAL, VIRTWHO_DEBUG, VIRTWHO_ONESHOT]  and  the  en‐
333       tries  in  the  service environment file into the general configuration
334       file. The known variables will land in the  global  section  while  any
335       others  in the service environment file [i.e. HTTPS_PROXY] will land in
336       the system_environment section. This migration may result  in  multiple
337       entries for a specific field.
338
339       Each new entry in the general configuration file will come after a com‐
340       ment indicating that it was migrated. The service environment file will
341       be  deleted  after its entries are migrated, but the known system envi‐
342       ronment variables will need to be manually removed or they will be  mi‐
343       grated again if the script is rerun. Those variables will not be recog‐
344       nized by virt-who even if they remain.
345
346       The migration script will be run when a new RPM is installed,  but  you
347       can run it manually with python after the RPM is installed:
348
349       [python_sitelib]/virtwho/migrate/migrateconfiguration.py
350
351
352

AUTHOR

354       Radek Novacek <rnovacek at redhat dot com>
355       William Poteat <wpoteat at redhat dot com>
356
357

SEE ALSO

359       virt-who(8), virt-who-password(8)
360
361
362
363virt-who                         October 2015               VIRT-WHO-CONFIG(5)
Impressum