1=head1 NAME
2
3/etc/xen/xl.conf - XL Global/Host Configuration
4
5=head1 DESCRIPTION
6
7The F<xl.conf> file allows configuration of hostwide C<xl> toolstack
8options.
9
10For details of per-domain configuration options please see
11L<xl.cfg(5)>.
12
13=head1 SYNTAX
14
15The config file consists of a series of C<KEY=VALUE> pairs.
16
17A value C<VALUE> is one of:
18
19=over 4
20
21=item B<"STRING">
22
23A string, surrounded by either single or double quotes.
24
25=item B<NUMBER>
26
27A number, in either decimal, octal (using a C<0> prefix) or
28hexadecimal (using an C<0x> prefix).
29
30=item B<BOOLEAN>
31
32A C<NUMBER> interpreted as C<False> (C<0>) or C<True> (any other
33value).
34
35=item B<[ VALUE, VALUE, ... ]>
36
37A list of C<VALUES> of the above types. Lists are homogeneous and are
38not nested.
39
40=back
41
42The semantics of each C<KEY> defines which form of C<VALUE> is required.
43
44=head1 OPTIONS
45
46=over 4
47
48=item B<autoballoon="off"|"on"|"auto">
49
50If set to "on" then C<xl> will automatically reduce the amount of
51memory assigned to domain 0 in order to free memory for new domains.
52
53If set to "off" then C<xl> will not automatically reduce the amount of
54domain 0 memory.
55
56If set to "auto" then auto-ballooning will be disabled if the
57C<dom0_mem> option was provided on the Xen command line.
58
59You are strongly recommended to set this to C<"off"> (or C<"auto">) if
60you use the C<dom0_mem> hypervisor command line to reduce the amount
61of memory given to domain 0 by default.
62
63Default: C<"auto">
64
65=item B<run_hotplug_scripts=BOOLEAN>
66
67If disabled hotplug scripts will be called from udev, as it used to
68be in the previous releases. With the default option, hotplug scripts
69will be launched by xl directly.
70
71Default: C<1>
72
73=item B<lockfile="PATH">
74
75Sets the path to the lock file used by xl to serialise certain
76operations (primarily domain creation).
77
78Default: C</var/lock/xl>
79
80=item B<max_grant_frames=NUMBER>
81
82Sets the default value for the C<max_grant_frames> domain config value.
83
84Default: C<32> on hosts up to 16TB of memory, C<64> on hosts larger than 16TB
85
86=item B<max_maptrack_frames=NUMBER>
87
88Sets the default value for the C<max_maptrack_frames> domain config value.
89
90Default: C<1024>
91
92=item B<vif.default.script="PATH">
93
94Configures the default hotplug script used by virtual network devices.
95
96The old B<vifscript> option is deprecated and should not be used.
97
98Default: C</etc/xen/scripts/vif-bridge>
99
100=item B<vif.default.bridge="NAME">
101
102Configures the default bridge to set for virtual network devices.
103
104The old B<defaultbridge> option is deprecated and should not be used.
105
106Default: C<xenbr0>
107
108=item B<vif.default.backend="NAME">
109
110Configures the default backend to set for virtual network devices.
111
112Default: C<0>
113
114=item B<vif.default.gatewaydev="NAME">
115
116Configures the default gateway device to set for virtual network devices.
117
118Default: C<None>
119
120=item B<remus.default.netbufscript="PATH">
121
122Configures the default script used by Remus to setup network buffering.
123
124Default: C</etc/xen/scripts/remus-netbuf-setup>
125
126=item B<colo.default.proxyscript="PATH">
127
128Configures the default script used by COLO to setup colo-proxy.
129
130Default: C</etc/xen/scripts/colo-proxy-setup>
131
132=item B<output_format="json|sxp">
133
134Configures the default output format used by xl when printing "machine
135readable" information. The default is to use the C<JSON>
136L<http://www.json.org/> syntax. However for compatibility with the
137previous C<xm> toolstack this can be configured to use the old C<SXP>
138(S-Expression-like) syntax instead.
139
140Default: C<json>
141
142=item B<blkdev_start="NAME">
143
144Configures the name of the first block device to be used for temporary
145block device allocations by the toolstack.
146The default choice is "xvda".
147
148=item B<claim_mode=BOOLEAN>
149
150If this option is enabled then when a guest is created there will be an
151guarantee that there is memory available for the guest. This is an
152particularly acute problem on hosts with memory over-provisioned guests
153that use tmem and have self-balloon enabled (which is the default
154option). The self-balloon mechanism can deflate/inflate the balloon
155quickly and the amount of free memory (which C<xl info> can show) is
156stale the moment it is printed. When claim is enabled a reservation for
157the amount of memory (see 'memory' in xl.conf(5)) is set, which is then
158reduced as the domain's memory is populated and eventually reaches zero.
159The free memory in C<xl info> is the combination of the hypervisor's
160free heap memory minus the outstanding claims value.
161
162If the reservation cannot be meet the guest creation fails immediately
163instead of taking seconds/minutes (depending on the size of the guest)
164while the guest is populated.
165
166Note that to enable tmem type guests, one needs to provide C<tmem> on the
167Xen hypervisor argument and as well on the Linux kernel command line.
168
169Default: C<1>
170
171=over 4
172
173=item C<0>
174
175No claim is made. Memory population during guest creation will be
176attempted as normal and may fail due to memory exhaustion.
177
178=item C<1>
179
180Normal memory and freeable pool of ephemeral pages (tmem) is used when
181calculating whether there is enough memory free to launch a guest.
182This guarantees immediate feedback whether the guest can be launched due
183to memory exhaustion (which can take a long time to find out if launching
184massively huge guests).
185
186=back
187
188=back
189
190=head1 SEE ALSO
191
192=over 4
193
194=item L<xl(1)>
195
196=item L<xl.cfg(5)>
197
198=item http://www.json.org/
199
200=back
201