From e8a3bf185c238d9d37f5660ab40a7f97b5d4ad5a Mon Sep 17 00:00:00 2001
From: Iustin Pop <iustin@google.com>
Date: Wed, 4 Nov 2009 18:06:48 +0100
Subject: [PATCH] Documentation updates for the global hvparams

This patch does multiple documentation updates for the new framework,
all pretty straightforward.

Signed-off-by: Iustin Pop <iustin@google.com>
Reviewed-by: Guido Trotter <ultrotter@google.com>
---
 doc/design-2.1.rst    | 30 +++++++++++++++++++++++++
 doc/install.rst       |  5 ++++-
 man/gnt-cluster.sgml  | 51 +++++++++++++++++++++++++++++++++----------
 man/gnt-instance.sgml | 17 ---------------
 4 files changed, 73 insertions(+), 30 deletions(-)

diff --git a/doc/design-2.1.rst b/doc/design-2.1.rst
index 67966e5c6..5e768e267 100644
--- a/doc/design-2.1.rst
+++ b/doc/design-2.1.rst
@@ -544,6 +544,36 @@ category, which will allow us to expand on by creating instance
 "classes" in the future.  Instance classes is not a feature we plan
 implementing in 2.1, though.
 
+
+Global hypervisor parameters
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Current State and shortcomings
+++++++++++++++++++++++++++++++
+
+Currently all hypervisor parameters are modifiable both globally
+(cluster level) and at instance level. However, there is no other
+framework to held hypervisor-specific parameters, so if we want to add
+a new class of hypervisor parameters that only makes sense on a global
+level, we have to change the hvparams framework.
+
+Proposed changes
+++++++++++++++++
+
+We add a new (global, not per-hypervisor) list of parameters which are
+not changeable on a per-instance level. The create, modify and query
+instance operations are changed to not allow/show these parameters.
+
+Furthermore, to allow transition of parameters to the global list, and
+to allow cleanup of inadverdently-customised parameters, the
+``UpgradeConfig()`` method of instances will drop any such parameters
+from their list of hvparams, such that a restart of the master daemon
+is all that is needed for cleaning these up.
+
+Also, the framework is simple enough that if we need to replicate it
+at beparams level we can do so easily.
+
+
 Non bridged instances support
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
diff --git a/doc/install.rst b/doc/install.rst
index 4029a82c0..60fbe9762 100644
--- a/doc/install.rst
+++ b/doc/install.rst
@@ -181,7 +181,10 @@ other. For example::
   (xend-relocation-address '')
   (xend-relocation-hosts-allow '^192\\.168\\.3\\.[0-9]+$')
 
-The last line assumes that all your nodes have secondary IPs in the
+
+The second line assumess that the hypervisor parameter
+``migration_port`` is set 8002, otherwise modify it to match. The last
+line assumes that all your nodes have secondary IPs in the
 192.168.3.0/24 network, adjust it accordingly to your setup.
 
 .. admonition:: Debian
diff --git a/man/gnt-cluster.sgml b/man/gnt-cluster.sgml
index afd1cb208..e65642c6f 100644
--- a/man/gnt-cluster.sgml
+++ b/man/gnt-cluster.sgml
@@ -358,6 +358,13 @@
               </para>
             </listitem>
           </varlistentry>
+          <varlistentry>
+            <term>chroot</term>
+            <listitem>
+              <para>
+                a simple chroot manager that starts chroot based on a
+                script at the root of the filesystem holding the
+                chroot
           <varlistentry>
             <term>fake</term>
             <listitem>
@@ -375,6 +382,38 @@
         specified, only the xen-pvm hypervisor is enabled by default.
       </para>
 
+      <para>
+        The <option>--hypervisor-parameters</option> option allows you
+        to set default hypervisor specific parameters for the
+        cluster. The format of this option is the name of the
+        hypervisor, followed by a colon and a comma-separated list of
+        key=value pairs. The keys available for each hypervisors are
+        detailed in the <citerefentry>
+        <refentrytitle>gnt-instance</refentrytitle>
+        <manvolnum>8</manvolnum> </citerefentry> man page, in the
+        <command>add</command> command plus the following parameters
+        which are only configurable globally (at cluster level):
+
+        <variablelist>
+          <varlistentry>
+            <term>migration_port</term>
+            <listitem>
+              <simpara>Valid for the Xen PVM and KVM hypervisors.</simpara>
+
+              <para>
+                This options specifies the TCP port to use for
+                live-migration. For Xen, the same port should be
+                configured on all nodes in
+                the <filename>/etc/xen/xend-config.sxp</filename>
+                file, under the
+                key <quote>xend-relocation-port</quote>.
+              </para>
+            </listitem>
+          </varlistentry>
+        </variablelist>
+
+      </para>
+
       <para>
         The <option>--backend-parameters</option> option allows you to set
         the default backend parameters for the cluster. The parameter
@@ -416,18 +455,6 @@
         </variablelist>
       </para>
 
-      <para>
-        The <option>--hypervisor-parameters</option> option allows you
-        to set default hypervisor specific parameters for the
-        cluster. The format of this option is the name of the
-        hypervisor, followed by a colon and a comma-separated list of
-        key=value pairs. The keys available for each hypervisors are
-        detailed int the <citerefentry>
-        <refentrytitle>gnt-instance</refentrytitle>
-        <manvolnum>8</manvolnum> </citerefentry> man page, in the
-        <command>add</command> command.
-      </para>
-
       <para>
         The <option>--nic-parameters</option> option allows you to set
         the default nic parameters for the cluster. The parameter
diff --git a/man/gnt-instance.sgml b/man/gnt-instance.sgml
index 61bfdc095..f41a3e6e0 100644
--- a/man/gnt-instance.sgml
+++ b/man/gnt-instance.sgml
@@ -505,27 +505,10 @@
               </listitem>
             </varlistentry>
 
-            <varlistentry>
-              <term>migration_port</term>
-              <listitem>
-                <simpara>Valid for the Xen PVM and KVM hypervisors.</simpara>
-
-                <para>
-                  This options specifies the TCP port to use for
-                  live-migration. Note that this shouldn't (usually)
-                  be changed at the instance level, but only at
-                  cluster-level.
-                </para>
-              </listitem>
-            </varlistentry>
-
           </variablelist>
 
         </para>
 
-        <para>
-        </para>
-
         <para>
           The <option>--iallocator</option> option specifies the instance
           allocator plugin to use. If you pass in this option the allocator
-- 
GitLab