Merge remote-tracking branch 'origin/github/pr/45'
[grml.org.git] / xen / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
2     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
4 <head>\r
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
6 <meta name="generator" content="AsciiDoc 7.1.2" />\r
7 <style type="text/css">\r
8 /* Debug borders */\r
9 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {\r
10 /*\r
11   border: 1px solid red;\r
12 */\r
13 }\r
14 \r
15 body {\r
16   margin: 1em 5% 1em 5%;\r
17 }\r
18 \r
19 a {\r
20   color: blue;\r
21   text-decoration: underline;\r
22 }\r
23 a:visited {\r
24   color: fuchsia;\r
25 }\r
26 \r
27 em {\r
28   font-style: italic;\r
29 }\r
30 \r
31 strong {\r
32   font-weight: bold;\r
33 }\r
34 \r
35 tt {\r
36   color: navy;\r
37 }\r
38 \r
39 h1, h2, h3, h4, h5, h6 {\r
40   color: #527bbd;\r
41   font-family: sans-serif;\r
42   margin-top: 1.2em;\r
43   margin-bottom: 0.5em;\r
44   line-height: 1.3;\r
45 }\r
46 \r
47 h1 {\r
48   border-bottom: 2px solid silver;\r
49 }\r
50 h2 {\r
51   border-bottom: 2px solid silver;\r
52   padding-top: 0.5em;\r
53 }\r
54 \r
55 div.sectionbody {\r
56   font-family: serif;\r
57   margin-left: 0;\r
58 }\r
59 \r
60 hr {\r
61   border: 1px solid silver;\r
62 }\r
63 \r
64 p {\r
65   margin-top: 0.5em;\r
66   margin-bottom: 0.5em;\r
67 }\r
68 \r
69 pre {\r
70   padding: 0;\r
71   margin: 0;\r
72 }\r
73 \r
74 span#author {\r
75   color: #527bbd;\r
76   font-family: sans-serif;\r
77   font-weight: bold;\r
78   font-size: 1.2em;\r
79 }\r
80 span#email {\r
81 }\r
82 span#revision {\r
83   font-family: sans-serif;\r
84 }\r
85 \r
86 div#footer {\r
87   font-family: sans-serif;\r
88   font-size: small;\r
89   border-top: 2px solid silver;\r
90   padding-top: 0.5em;\r
91   margin-top: 4.0em;\r
92 }\r
93 div#footer-text {\r
94   float: left;\r
95   padding-bottom: 0.5em;\r
96 }\r
97 div#footer-badges {\r
98   float: right;\r
99   padding-bottom: 0.5em;\r
100 }\r
101 \r
102 div#preamble,\r
103 div.tableblock, div.imageblock, div.exampleblock, div.verseblock,\r
104 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
105 div.admonitionblock {\r
106   margin-right: 10%;\r
107   margin-top: 1.5em;\r
108   margin-bottom: 1.5em;\r
109 }\r
110 div.admonitionblock {\r
111   margin-top: 2.5em;\r
112   margin-bottom: 2.5em;\r
113 }\r
114 \r
115 div.content { /* Block element content. */\r
116   padding: 0;\r
117 }\r
118 \r
119 /* Block element titles. */\r
120 div.title, caption.title {\r
121   font-family: sans-serif;\r
122   font-weight: bold;\r
123   text-align: left;\r
124   margin-top: 1.0em;\r
125   margin-bottom: 0.5em;\r
126 }\r
127 div.title + * {\r
128   margin-top: 0;\r
129 }\r
130 \r
131 td div.title:first-child {\r
132   margin-top: 0.0em;\r
133 }\r
134 div.content div.title:first-child {\r
135   margin-top: 0.0em;\r
136 }\r
137 div.content + div.title {\r
138   margin-top: 0.0em;\r
139 }\r
140 \r
141 div.sidebarblock > div.content {\r
142   background: #ffffee;\r
143   border: 1px solid silver;\r
144   padding: 0.5em;\r
145 }\r
146 \r
147 div.listingblock > div.content {\r
148   border: 1px solid silver;\r
149   background: #f4f4f4;\r
150   padding: 0.5em;\r
151 }\r
152 \r
153 div.quoteblock > div.content {\r
154   padding-left: 2.0em;\r
155 }\r
156 \r
157 div.attribution {\r
158   text-align: right;\r
159 }\r
160 div.verseblock + div.attribution {\r
161   text-align: left;\r
162 }\r
163 \r
164 div.admonitionblock .icon {\r
165   vertical-align: top;\r
166   font-size: 1.1em;\r
167   font-weight: bold;\r
168   text-decoration: underline;\r
169   color: #527bbd;\r
170   padding-right: 0.5em;\r
171 }\r
172 div.admonitionblock td.content {\r
173   padding-left: 0.5em;\r
174   border-left: 2px solid silver;\r
175 }\r
176 \r
177 div.exampleblock > div.content {\r
178   border-left: 2px solid silver;\r
179   padding: 0.5em;\r
180 }\r
181 \r
182 div.verseblock div.content {\r
183   white-space: pre;\r
184 }\r
185 \r
186 div.imageblock div.content { padding-left: 0; }\r
187 div.imageblock img { border: 1px solid silver; }\r
188 span.image img { border-style: none; }\r
189 \r
190 dl {\r
191   margin-top: 0.8em;\r
192   margin-bottom: 0.8em;\r
193 }\r
194 dt {\r
195   margin-top: 0.5em;\r
196   margin-bottom: 0;\r
197   font-style: italic;\r
198 }\r
199 dd > *:first-child {\r
200   margin-top: 0;\r
201 }\r
202 \r
203 ul, ol {\r
204     list-style-position: outside;\r
205 }\r
206 ol.olist2 {\r
207   list-style-type: lower-alpha;\r
208 }\r
209 \r
210 div.tableblock > table {\r
211   border: 3px solid #527bbd;\r
212 }\r
213 thead {\r
214   font-family: sans-serif;\r
215   font-weight: bold;\r
216 }\r
217 tfoot {\r
218   font-weight: bold;\r
219 }\r
220 \r
221 div.hlist {\r
222   margin-top: 0.8em;\r
223   margin-bottom: 0.8em;\r
224 }\r
225 td.hlist1 {\r
226   vertical-align: top;\r
227   font-style: italic;\r
228   padding-right: 0.8em;\r
229 }\r
230 td.hlist2 {\r
231   vertical-align: top;\r
232 }\r
233 \r
234 @media print {\r
235   div#footer-badges { display: none; }\r
236 }\r
237 /* Workarounds for IE6's broken and incomplete CSS2. */\r
238 \r
239 div.sidebar-content {\r
240   background: #ffffee;\r
241   border: 1px solid silver;\r
242   padding: 0.5em;\r
243 }\r
244 div.sidebar-title, div.image-title {\r
245   font-family: sans-serif;\r
246   font-weight: bold;\r
247   margin-top: 0.0em;\r
248   margin-bottom: 0.5em;\r
249 }\r
250 \r
251 div.listingblock div.content {\r
252   border: 1px solid silver;\r
253   background: #f4f4f4;\r
254   padding: 0.5em;\r
255 }\r
256 \r
257 div.quoteblock-content {\r
258   padding-left: 2.0em;\r
259 }\r
260 \r
261 div.exampleblock-content {\r
262   border-left: 2px solid silver;\r
263   padding-left: 0.5em;\r
264 }\r
265 </style>\r
266 <title>Setup Xen within 20 minutes on Debian/grml</title>\r
267 </head>\r
268 <body>\r
269 <div id="header">\r
270 <h1>Setup Xen within 20 minutes on Debian/grml</h1>\r
271 </div>\r
272 <div id="preamble">\r
273 <div class="sectionbody">\r
274 <div class="admonitionblock">\r
275 <table><tr>\r
276 <td class="icon">\r
277 <div class="title">Tip</div>\r
278 </td>\r
279 <td class="content">if you don't have <a href="http://debian.org/">Debian</a> yet and want to\r
280 explore Xen running a Debian system anyway either install\r
281 <a href="http://grml.org/">grml</a> via <a href="http://grml.org/grml2hd/">grml2hd</a>\r
282 (takes only a few minutes) or get a plain Debian system very fast and easy\r
283 via\r
284 <a href="http://grml.supersized.org/archives/202-grml-debootstrap-wrapper-around-debootstrap-for-installing-plain-Debian-via-grml.html">grml-debootstrap</a>.</td>\r
285 </tr></table>\r
286 </div>\r
287 <p>Install relevant software und update grub's menu.lst (Xen does not work\r
288 with lilo so install grub instead if not done already):</p>\r
289 <div class="literalblock">\r
290 <div class="content">\r
291 <pre><tt>apt-get install linux-image-2.6.18-1-xen-686 xen-hypervisor-3.0.3-1-i386 xen-utils-3.0.3-1 xen-tools bridge-utils\r
292 update-grub</tt></pre>\r
293 </div></div>\r
294 <p>Example for installation of Debian etch as DomU:</p>\r
295 <div class="literalblock">\r
296 <div class="content">\r
297 <pre><tt>mkdir /mnt/md1/xen\r
298 xen-create-image --debootstrap --dir=/mnt/md1/xen --size=2Gb --memory=512Mb --fs=ext3 \\r
299    --cache=yes --dist=etch --hostname=xengrml1 --ip 192.168.1.2 --netmask 255.255.255.0 \\r
300   --gateway 192.168.1.1 --initrd=/boot/initrd.img-2.6.18-1-xen-686 \\r
301   --kernel=/boot/vmlinuz-2.6.18-1-xen-686 --mirror=http://ftp.at.debian.org/debian/</tt></pre>\r
302 </div></div>\r
303 <p>Start services:</p>\r
304 <div class="literalblock">\r
305 <div class="content">\r
306 <pre><tt>/etc/init.d/xend start\r
307 /etc/init.d/xendomains start</tt></pre>\r
308 </div></div>\r
309 <p>Setup a bridge for network, <strong>either</strong> manually:</p>\r
310 <div class="literalblock">\r
311 <div class="content">\r
312 <pre><tt>brctl addbr xenintbr\r
313 brctl stp xenintbr off\r
314 brctl sethello xenintbr 0\r
315 brctl setfd xenintbr 0\r
316 ifconfig xenintbr 192.168.1.1 netmask 255.255.255.0 up</tt></pre>\r
317 </div></div>\r
318 <p><strong>or</strong> via /etc/network/interfaces (run <em>ifup xenintbr</em> to bring up the\r
319 device then without rebooting):</p>\r
320 <div class="literalblock">\r
321 <div class="content">\r
322 <pre><tt>auto xenintbr\r
323 iface xenintbr inet static\r
324   pre-up brctl addbr xenintbr\r
325   post-down brctl delbr xenintbr\r
326   address 192.168.1.1\r
327   netmask 255.255.255.0\r
328   bridge_fd 0\r
329   bridge_hello 0\r
330   bridge_stp off</tt></pre>\r
331 </div></div>\r
332 <p>Setup forwarding (adjust $PUBLIC_IP; for permanet setup use\r
333 /etc/sysctl.conf and add the iptables commands to a startup script like\r
334 /etc/init.d/rc.local):</p>\r
335 <div class="literalblock">\r
336 <div class="content">\r
337 <pre><tt>echo "1" &gt; /proc/sys/net/ipv4/ip_forward\r
338 iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j SNAT --to $PUBLIC_IP\r
339 iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to $PUBLIC_IP</tt></pre>\r
340 </div></div>\r
341 <p>Adjust network configuration of Xend:</p>\r
342 <div class="literalblock">\r
343 <div class="content">\r
344 <pre><tt>cat &gt;&gt; /etc/xen/xend-config.sxp &lt;&lt; EOF\r
345 (network-script    network-route)\r
346 (vif-bridge        xenintbr)\r
347 (vif-script        vif-bridge)\r
348 EOF</tt></pre>\r
349 </div></div>\r
350 <p>List domains, start up a DomU, shutdown later again:</p>\r
351 <div class="literalblock">\r
352 <div class="content">\r
353 <pre><tt>xm create -c /etc/xen/xengrml1.cfg\r
354 xm list\r
355 xm shutdown 1</tt></pre>\r
356 </div></div>\r
357 </div>\r
358 </div>\r
359 <h2>Useful Ressources</h2>\r
360 <div class="sectionbody">\r
361 <ul>\r
362 <li>\r
363 <p>\r
364 <a href="http://www.cl.cam.ac.uk/research/srg/netos/xen/readmes/user/user.html">Users' Manual Xen v3.0</a>\r
365 </p>\r
366 </li>\r
367 <li>\r
368 <p>\r
369 <a href="http://www.debian-administration.org/articles/304">Installing Xen 3.0 upon Debian Sarge</a>\r
370 </p>\r
371 </li>\r
372 <li>\r
373 <p>\r
374 <a href="http://www.pug.org/index.php/Xen-Installation">german article regarding Xen Installation</a>\r
375 </p>\r
376 </li>\r
377 </ul>\r
378 </div>\r
379 <h2>About this document</h2>\r
380 <div class="sectionbody">\r
381 <p>(c) Michael Prokop &lt;mika@grml.org&gt;; HTML version powered by <a href="http://www.methods.co.nz/asciidoc/">asciidoc</a>.</p>\r
382 </div>\r
383 <div id="footer">\r
384 <div id="footer-text">\r
385 Last updated 16-Nov-2006 00:58:59 CEST\r
386 </div>\r
387 </div>\r
388 </body>\r
389 </html>\r