dumb allocator: do not use drained nodes
[ganeti-local] / doc / install.sgml
index ca78bc0..cb5cb1f 100644 (file)
           kernel parameter <literal>nosmp</literal>.
         </para>
 
+        <para>
+          It is recommended that you disable xen's automatic save of virtual
+          machines at system shutdown and subsequent restore of them at reboot.
+          To obtain this make sure the variable
+          <literal>XENDOMAINS_SAVE</literal> in the file
+          <literal>/etc/default/xendomains</literal> is set to an empty value.
+        </para>
+
         <formalpara>
           <title>Debian</title>
           <para>
 </screen>
           </para>
         </formalpara>
+        <para>
+          If you want to test the HVM support
+          with Ganeti and want VNC access to the console of your
+          instances, set the following two entries in
+          <filename>/etc/xen/xend-config.sxp</filename>:
+<screen>
+(vnc-listen '0.0.0.0')
+(vncpasswd '')
+</screen>
+          You need to restart the Xen daemon for these settings to
+          take effect:
+<screen>
+/etc/init.d/xend restart
+</screen>
+        </para>
 
       </sect3>
 
@@ -291,13 +314,8 @@ ln -s initrd.img-2.6.18-5-xen-686 initrd-2.6-xenU
       </para>
 
       <para>
-        Supported DRBD versions: the <literal>0.7</literal> series
-        <emphasis role="strong">or</emphasis>
-        <literal>8.0.x</literal>. It's recommended to have at least
-        version <literal>0.7.24</literal> if you use
-        <command>udev</command> since older versions have a bug
-        related to device discovery which can be triggered in cases of
-        hard drive failure.
+        Supported DRBD versions: <literal>8.0.x</literal>.
+        It's recommended to have at least version <literal>8.0.7</literal>.
       </para>
 
       <para>
@@ -313,44 +331,32 @@ ln -s initrd.img-2.6.18-5-xen-686 initrd-2.6-xenU
         you have the DRBD utils installed and the module in your
         kernel you're fine. Please check that your system is
         configured to load the module at every boot, and that it
-        passes the following option to the module (for
-        <literal>0.7.x</literal>:
-        <computeroutput>minor_count=64</computeroutput> (this will
-        allow you to use up to 32 instances per node) or for
-        <literal>8.0.x</literal> you can use up to
-        <constant>255</constant>
-        (i.e. <computeroutput>minor_count=255</computeroutput>, but
-        for most clusters <constant>128</constant> should be enough).
+        passes the following option to the module
+        <computeroutput>minor_count=255</computeroutput>. This will
+        allow you to use up to 128 instances per node (for most clusters
+        <constant>128 </constant> should be enough, though).
       </para>
 
       <formalpara><title>Debian</title>
         <para>
-         You can just install (build) the DRBD 0.7 module with the
+         You can just install (build) the DRBD 8.0.x module with the
          following commands (make sure you are running the Xen
          kernel):
         </para>
       </formalpara>
 
       <screen>
-apt-get install drbd0.7-module-source drbd0.7-utils
-m-a update
-m-a a-i drbd0.7
-echo drbd minor_count=64 >> /etc/modules
-modprobe drbd minor_count=64
-      </screen>
-      <para>or for using DRBD <literal>8.x</literal> from the etch
-      backports:</para>
-      <screen>
-apt-get install -t etch-backports drbd8-module-source drbd8-utils
+apt-get install -t etch-backports drbd8-source drbd8-utils
 m-a update
 m-a a-i drbd8
 echo drbd minor_count=128 >> /etc/modules
+depmod -a
 modprobe drbd minor_count=128
       </screen>
 
       <para>
         It is also recommended that you comment out the default
-        resources in the <filename>/etc/dbrd.conf</filename> file, so
+        resources in the <filename>/etc/drbd.conf</filename> file, so
         that the init script doesn't try to configure any drbd
         devices. You can do this by prefixing all
         <literal>resource</literal> lines in the file with the keyword
@@ -402,19 +408,9 @@ skip resource "r1" {
           (part of iputils package)</simpara>
         </listitem>
         <listitem>
-          <simpara><ulink
-          url="http://www.kernel.org/pub/linux/utils/raid/mdadm/">mdadm</ulink>
-          (Linux Software Raid tools)</simpara>
-        </listitem>
-        <listitem>
           <simpara><ulink url="http://www.python.org">Python 2.4</ulink></simpara>
         </listitem>
         <listitem>
-          <simpara><ulink url="http://twistedmatrix.com/">Python
-          Twisted library</ulink> - the core library is
-          enough</simpara>
-        </listitem>
-        <listitem>
           <simpara><ulink
           url="http://pyopenssl.sourceforge.net/">Python OpenSSL
           bindings</ulink></simpara>
@@ -446,8 +442,7 @@ skip resource "r1" {
       </formalpara>
       <screen>
 # apt-get install lvm2 ssh bridge-utils iproute iputils-arping \
-  python2.4 python-twisted-core python-pyopenssl openssl \
-  mdadm
+  python2.4 python-pyopenssl openssl python-pyparsing python-simplejson
       </screen>
 
     </sect2>
@@ -597,8 +592,8 @@ vgextend xenvg /dev/sdd1
       </para>
 
         <screen>
-tar xvzf ganeti-1.2b2.tar.gz
-cd ganeti-1.2b2
+tar xvzf ganeti-@GANETI_VERSION@.tar.gz
+cd ganeti-@GANETI_VERSION@
 ./configure --localstatedir=/var --sysconfdir=/etc
 make
 make install
@@ -637,13 +632,15 @@ mkdir /srv/ganeti/ /srv/ganeti/os /srv/ganeti/export
         provided on the project web site.  Download it from <ulink
         url="http://code.google.com/p/ganeti/"></ulink> and follow the
         instructions in the <filename>README</filename> file.  Here is
-        the installation procedure:
+        the installation procedure (replace <constant>0.2</constant>
+        with the latest version that is compatible with your ganeti
+        version):
       </para>
 
       <screen>
 cd /srv/ganeti/os
-tar xvf instance-debian-etch-0.2.tar
-mv instance-debian-etch-0.2 debian-etch
+tar xvf ganeti-instance-debian-etch-0.4.tar
+mv ganeti-instance-debian-etch-0.4 debian-etch
       </screen>
 
       <para>
@@ -701,7 +698,9 @@ gnt-cluster init <replaceable>CLUSTERNAME</replaceable>
         nodes names for a multi-node cluster. In general the best
         choice is to have a unique name for a cluster, even if it
         consists of only one machine, as you will be able to expand it
-        later without any problems.
+        later without any problems. Please note that the hostname used
+        for this must resolve to an IP address reserved exclusively
+        for this purpose.
       </para>
 
       <para>
@@ -723,6 +722,20 @@ gnt-cluster init <replaceable>CLUSTERNAME</replaceable>
       </para>
 
       <para>
+        To set up the cluster as an HVM cluster, use the
+        <option>--hypervisor=xen-hvm3.1</option> option to use
+        the Xen 3.1 HVM hypervisor. Note that with the
+        HVM support, you will only be able to create
+        HVM instances in a cluster set to this hypervisor type. Mixed
+        PVM/HVM clusters are not supported by the Ganeti 1.2
+        HVM support. You will also need to create the VNC
+        cluster password  file
+        <filename>/etc/ganeti/vnc-cluster-password</filename>
+        which contains one line with the default VNC password for the
+        cluster.
+      </para>
+
+      <para>
         You can also invoke the command with the
         <option>--help</option> option in order to see all the
         possibilities.
@@ -788,8 +801,7 @@ node1.example.com 197404 197404   2047  1896   125     0     0
         This step shows how to setup a virtual instance with either
         non-mirrored disks (<computeroutput>plain</computeroutput>) or
         with network mirrored disks
-        (<computeroutput>remote_raid1</computeroutput> for drbd 0.7
-        and <computeroutput>drbd</computeroutput> for drbd 8.x).  All
+        (<computeroutput>drbd</computeroutput>).  All
         commands need to be executed on the Ganeti master node (the
         one on which <computeroutput>gnt-cluster init</computeroutput>
         was run).  Verify that the OS scripts are present on all
@@ -826,14 +838,13 @@ creating os for instance inst1.example.com on node node1.example.com
       <para>
         To create a network mirrored instance, change the argument to
         the <option>-t</option> option from <literal>plain</literal>
-        to <literal>remote_raid1</literal> (drbd 0.7) or
-        <literal>drbd</literal> (drbd 8.0) and specify the node on
+        to <literal>drbd</literal> and specify the node on
         which the mirror should reside with the second value of the
         <option>--node</option> option, like this:
       </para>
 
       <screen>
-# gnt-instance add -t remote_raid1 -n node1:node2 -o debian-etch instance2
+# gnt-instance add -t drbd -n node1:node2 -o debian-etch instance2
 * creating instance disks...
 adding instance instance2 to cluster config
 Waiting for instance instance1 to sync disks.
@@ -873,8 +884,8 @@ creating os for instance instance2 on node node1.example.com
 
       <para>
         To failover an instance to its secondary node (only possible
-        in <literal>remote_raid1</literal> or <literal>drbd</literal>
-        disk templates), use <computeroutput>gnt-instance failover
+        with <literal>drbd</literal> disk templates), use
+        <computeroutput>gnt-instance failover
         <replaceable>INSTANCENAME</replaceable></computeroutput>.
       </para>