ia64/xen-unstable

changeset 2746:23eb17be7a14

bitkeeper revision 1.1159.1.284 (417e84969-txGlpyHLKpeJXUj16Q3g)

Merge ssh://srg//auto/groups/xeno/BK/xeno-unstable.bk
into equilibrium.research:/home/irchomes/mwilli2/xeno-docs.bk
author mwilli2@equilibrium.research
date Tue Oct 26 17:08:38 2004 +0000 (2004-10-26)
parents 2e17f118a8c2 23f146888344
children ce225d7c7410 7266d3bd3b1f
files docs/src/user.tex
line diff
     1.1 --- a/docs/src/user.tex	Tue Oct 26 14:32:37 2004 +0000
     1.2 +++ b/docs/src/user.tex	Tue Oct 26 17:08:38 2004 +0000
     1.3 @@ -18,7 +18,7 @@
     1.4  
     1.5  {\Large Xen is Copyright (c) 2004, The Xen Team} \\[3mm]
     1.6  {\Large University of Cambridge, UK} \\[20mm]
     1.7 -{\large Last updated on 12th October, 2004}
     1.8 +{\large Last updated on 26th October, 2004}
     1.9  \end{tabular}
    1.10  \vfill
    1.11  \end{center}
    1.12 @@ -246,12 +246,14 @@ operating system distribution.
    1.13  \section{Prerequisites}
    1.14  \label{sec:prerequisites}
    1.15  \begin{itemize}
    1.16 +\item i686-class CPU or newer
    1.17  \item A working installation of your favourite Linux distribution.
    1.18  \item A working installation of the GRUB bootloader.
    1.19  \item An installation of Twisted v1.3 or above (see {\tt
    1.20  http://www.twistedmatrix.com}).  There may be a package available for
    1.21  your distribution; alternatively it can be installed by running {\tt \#
    1.22  make install-twisted} in the root of the Xen source tree.
    1.23 +\item Python logging package (see {\tt http://www.red-dove.com/})
    1.24  \item The Linux bridge control tools (see {\tt
    1.25  http://bridge.sourceforge.net}).  There may be packages of these tools
    1.26  available for your distribution.
    1.27 @@ -265,12 +267,6 @@ available for your distribution.
    1.28  \item python2.3-twisted
    1.29  \end{itemize}
    1.30  
    1.31 -\section{Optional}
    1.32 -\begin{itemize}
    1.33 -\item The Python logging package (see {\tt http://www.red-dove.com/})
    1.34 -for additional Xend logging functionality.
    1.35 -\end{itemize}
    1.36 -
    1.37  \section{Install Bitkeeper (Optional)}
    1.38  
    1.39  To fetch a local copy, first download the BitKeeper tools.
    1.40 @@ -324,8 +320,9 @@ The Xen source code repository is struct
    1.41  \item[\path{tools/}] Xen node controller daemon (Xend), command line tools, 
    1.42    control libraries
    1.43  \item[\path{xen/}] The Xen hypervisor itself.
    1.44 -\item[\path{linux-2.4.27-xen/}] Xen support for Linux 2.4
    1.45 -\item[\path{linux-2.6.8.1-xen/}] Xen support for Linux 2.6
    1.46 +\item[\path{linux-2.4.27-xen-sparse/}] Xen support for Linux 2.4
    1.47 +\item[\path{linux-2.6.9-xen-sparse/}] Xen support for Linux 2.6
    1.48 +\item[\path{linux-2.6.9-patches/}] Experimental patches for Linux 2.6
    1.49  \item[\path{netbsd-2.0-xen-sparse/}] Xen support for NetBSD 2.0
    1.50  \item[\path{docs/}] various documentation files for users and developers
    1.51  \item[\path{extras/}] currently this contains the Mini OS, aimed at developers
    1.52 @@ -378,13 +375,10 @@ necessary to build the NetBSD kernel und
    1.53  If you have an SMP machine you may wish to give the {\tt '-j4'}
    1.54  argument to make to get a parallel build.
    1.55  
    1.56 -XXX Insert details on customising the kernel to be built.
    1.57 -i.e. merging config files
    1.58 -
    1.59  If you have an existing Linux kernel configuration that you would like
    1.60  to use for domain 0, you should copy it to
    1.61  install/boot/config-2.6.8.1-xen0.  During the first build, you may be
    1.62 -asked about some Xen-specific options.  We advised accepting the
    1.63 +asked about some Xen-specific options.  We advise accepting the
    1.64  defaults for these options.
    1.65  
    1.66  \framebox{\parbox{5in}{
    1.67 @@ -451,6 +445,12 @@ root device and specifying it be initial
    1.68  instructing that console output be sent both to the screen and to the
    1.69  serial port).
    1.70  
    1.71 +If you want to use an initrd, just add another {\tt module} line to
    1.72 +the configuration, as usual:
    1.73 +\begin{verbatim}
    1.74 +  module /boot/my_initrd.gz
    1.75 +\end{verbatim}
    1.76 +
    1.77  As always when installing a new kernel, it is recommended that you do
    1.78  not remove the original contents of \path{menu.lst} --- you may want
    1.79  to boot up with your old Linux kernel in future, particularly if you
    1.80 @@ -725,10 +725,10 @@ or:
    1.81  
    1.82  \chapter{Other kinds of storage}
    1.83  
    1.84 -It is possible to use any Linux block device to store virtual machine
    1.85 -disk images.  This chapter covers some of the possibilities; note that
    1.86 -it is also possible to use network-based block devices and other
    1.87 -unconventional block devices.
    1.88 +It is possible to directly export any Linux block device to a virtual,
    1.89 +or to export filesystems / devices to virtual machines using standard
    1.90 +network protocals (e.g. NBD, iSCSI, NFS, etc).  This chapter covers
    1.91 +some of the possibilities.
    1.92  
    1.93  \section{File-backed virtual block devices}
    1.94  
    1.95 @@ -769,6 +769,40 @@ In the configuration file set:\\
    1.96  As the virtual machine writes to its `disk', the sparse file will be
    1.97  filled in and consume more space up to the original 2GB.
    1.98  
    1.99 +\section{NFS Root}
   1.100 +
   1.101 +The procedure for using NFS root in a virtual machine is basically the
   1.102 +same as you would follow for a real machine.  NB. the Linux NFS root
   1.103 +implementation is known to have stability problems under high load
   1.104 +(this is not a Xen-specific problem), so this configuration may not be
   1.105 +appropriate for critical servers.
   1.106 +
   1.107 +First, populate a root filesystem in a directory on the server machine
   1.108 +--- this can be on another physical machine, or perhaps just another
   1.109 +virtual machine on the same node.
   1.110 +
   1.111 +Now, configure the NFS server to export this filesystem over the
   1.112 +network by adding a line to /etc/exports, for instance:
   1.113 +
   1.114 +\begin{verbatim}
   1.115 +/export/vm1root      w.x.y.z/m (rw,sync,no_root_squash)
   1.116 +\end{verbatim}
   1.117 +
   1.118 +Finally, configure the domain to use NFS root.  In addition to the
   1.119 +normal variables, you should make sure to set the following values in
   1.120 +the domain's configuration file:
   1.121 +
   1.122 +\begin{verbatim}
   1.123 +root       = '/dev/nfs'
   1.124 +nfs_server = 'a.b.c.d'       # Substitute the IP for the server here
   1.125 +nfs_root   = '/path/to/root' # Path to root FS on the server machine
   1.126 +\end{verbatim}
   1.127 +
   1.128 +The domain will need network access at boot-time, so either statically
   1.129 +configure an IP address (Using the config variables {\tt ip}, {\tt
   1.130 +netmask}, {\tt gateway}, {\tt hostname}) or enable DHCP ({\tt
   1.131 +dhcp='dhcp'}).
   1.132 +
   1.133  \section{LVM-backed virtual block devices}
   1.134  
   1.135  XXX Put some simple examples here - would be nice if an LVM user could
   1.136 @@ -839,30 +873,12 @@ To enable it, you have to make symbolic 
   1.137  runlevel directories or use the {\tt chkconfig} tool, where available.
   1.138  
   1.139  Once Xend is running, more sophisticated administration can be done
   1.140 -using the Xensv web interface (see Chapter~\ref{cha:xensv}).
   1.141 -
   1.142 -\chapter{Xensv (Web interface server)}
   1.143 -\label{cha:xensv}
   1.144 -
   1.145 -Xensv is the server for the web control interface.  It can be started
   1.146 -using:\\
   1.147 -\verb_# xensv start_ \\
   1.148 -and stopped using:
   1.149 -\verb_# xensv stop_ \\
   1.150 -It will automatically start Xend if it is not already running.
   1.151 -
   1.152 -By default, Xensv will serve out the web interface on port 8080.  This
   1.153 -can be changed by editing {\tt
   1.154 -/usr/lib/python2.3/site-packages/xen/sv/params.py}.
   1.155 -
   1.156 -Once Xensv is running, the web interface can be used to manage running
   1.157 -domains and provides a user friendly domain creation wizard.
   1.158 +using the xm tool (see Chapter~\ref{cha:xm}) and the experimental
   1.159 +Xensv web interface (see Chapter~\ref{cha:xensv}).
   1.160  
   1.161  \chapter{The xm tool}
   1.162  \label{cha:xm}
   1.163  
   1.164 -XXX Add description of arguments and switches for all the options
   1.165 -
   1.166  The xm tool is the primary tool for managing Xen from the console.
   1.167  The general format of an xm command line is:
   1.168  
   1.169 @@ -909,13 +925,33 @@ try
   1.170  # xm help command
   1.171  \end{verbatim}
   1.172  
   1.173 +\chapter{Xensv (Web control interface)}
   1.174 +\label{cha:xensv}
   1.175 +
   1.176 +Xensv is the experimental web control interface for managing a Xen
   1.177 +machine.  It can be used to perform some (but not yet all) of the
   1.178 +management tasks that can be done using the xm tool.
   1.179 +
   1.180 +It can be started using:\\ \verb_# xensv start_ \\ and
   1.181 +stopped using: \verb_# xensv stop_ \\ It will automatically start Xend
   1.182 +if it is not already running.
   1.183 +
   1.184 +By default, Xensv will serve out the web interface on port 8080.  This
   1.185 +can be changed by editing {\tt
   1.186 +/usr/lib/python2.3/site-packages/xen/sv/params.py}.
   1.187 +
   1.188 +Once Xensv is running, the web interface can be used to manage running
   1.189 +domains and provides a user friendly domain creation wizard.
   1.190 +
   1.191 +
   1.192 +
   1.193  \chapter{Glossary}
   1.194  
   1.195  \begin{description}
   1.196  \item[Atropos]             One of the CPU schedulers provided by Xen.
   1.197                             Atropos provides domains with absolute shares
   1.198                             of the CPU, with timeliness guarantees and a
   1.199 -                           mechanism for sharing out ``slack time''.
   1.200 +                           mechanism for sharing out `slack time'.
   1.201  
   1.202  \item[BVT]                 The BVT scheduler is used to give proportional
   1.203                             fair shares of the CPU to domains.
   1.204 @@ -1609,3 +1645,5 @@ image-specific settings (hostname, netwo
   1.205  
   1.206  %% You can use these modules to write your own custom scripts or you can
   1.207  %% customise the scripts supplied in the Xen distribution.
   1.208 +
   1.209 +% Explain about AGP GART