X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/f69dab6d3a2b5eb3488bf3a8ae88ced091c0f221..1b54fc6c2fd92b614c029cc5312d02f9f1526253:/man/ganeti.sgml
diff --git a/man/ganeti.sgml b/man/ganeti.sgml
index 40c6c77..eed8ccd 100644
--- a/man/ganeti.sgml
+++ b/man/ganeti.sgml
@@ -2,7 +2,7 @@
- June 16, 2007">
+ February 12, 2009">
7">
@@ -20,6 +20,8 @@
2006
2007
+ 2008
+ 2009
Google Inc.
&dhdate;
@@ -28,7 +30,7 @@
&dhucpackage;
&dhsection;
- ganeti 1.2
+ ganeti 2.0
&dhpackage;
@@ -40,8 +42,8 @@
# gnt-cluster init cluster1.example.com
# gnt-node add node2.example.com
-# gnt-os add -o debian-etch -p /srv/ganeti/os/debian-etch
-# gnt-instance add -n node2.example.com -o debian-etch -s 128 -m 8 \
+# gnt-instance add -n node2.example.com \
+> -o debootstrap --disk 0:size=30g \
> -t plain instance1.example.com
@@ -51,7 +53,8 @@
The ganeti software manages physical nodes and virtual instances
of a cluster based on a virtualization software. The current
- version (1.2) supports Xen 3.0 (also tested with 3.1).
+ version (2.0) supports Xen 3.0 (also tested with 3.1) and KVM
+ hypervisors.
@@ -62,7 +65,7 @@
First you must install the software on all the cluster nodes,
either from sources or (if available) from a package. The next
step is to create the initial cluster configuration, using
- gnt-cluster init.
+ gnt-cluster init.
@@ -71,6 +74,163 @@
+
+ Cluster architecture
+
+
+ In Ganeti 2.0, the architecture of the cluster is a little more
+ complicated than in 1.2. The cluster is coordinated by a master
+ daemon (
+ ganeti-masterd
+ 8 ), running on the master
+ node. Each node runs (as before) a node daemon, and the master
+ has the RAPI daemon running too.
+
+
+
+ Node roles
+
+ Each node can be in one of the following states:
+
+
+ master
+
+
+ Only one node per cluster can be in this role, and
+ this node is the one holding the authoritative copy of
+ the cluster configuration and the one that can
+ actually execute commands on the cluster and modify
+ the cluster state. See more details under
+ Cluster configuration.
+
+
+
+
+ master_candidate
+
+ The node receives the full cluster configuration
+ (configuration file and jobs) and can become a master
+ via the gnt-cluster masterfailover
+ command. Nodes that are not in this state cannot
+ transition into the master role due to missing
+ state.
+
+
+
+ regular
+
+ This the normal state of a node.
+
+
+
+ drained
+
+ Nodes in this state are functioning normally but
+ cannot receive new instance, because the intention is to
+ set them to offline or remove them
+ from the cluster.
+
+
+
+ offline
+
+ These nodes are still recorder in the ganeti
+ configuration, but except for the master daemon startup
+ voting procedure, they are not actually contacted by the
+ master. This state was added in order to allow broken
+ machines (that are being repaired) to remain in the
+ cluster but without creating problems.
+
+
+
+
+
+
+
+ Cluster configuration
+
+ The master node keeps and is responsible for the cluster
+ configuration. On the filesystem, this is stored under the
+ @LOCALSTATEDIR@/ganeti/lib
+ directory, and if the master daemon is stopped it can be backed
+ up normally.
+
+ The master daemon will replicate the configuration
+ database called config.data and the job
+ files to all the nodes in the master candidate role. It will
+ also distribute a copy of some configuration values via the
+ ssconf files, which are stored in the same
+ directory and start with ssconf_ prefix, to
+ all nodes.
+
+
+
+
+ Jobs
+
+
+ All cluster modification are done via jobs. A job consists of
+ one or more opcodes, and the list of opcodes is processed
+ serially. If an opcode fails, the entire job is failed and
+ later opcodes are no longer processed. A job can be in one of
+ the following states:
+
+
+ queued
+
+ The job has been submitted but not yet
+ processed by the master daemon.
+
+
+
+ waiting
+
+ The job is waiting for for locks before the
+ first of its opcodes.
+
+
+
+ canceling
+
+ The jos is waiting for locks, but is has been
+ marked for cancelation. It will not transition to
+ running, but to
+ canceled.
+
+
+
+
+ running
+
+ The job is currently being executed.
+
+
+
+ canceled
+
+ The job has been canceled before starting
+ execution.
+
+
+
+ success
+
+ The job has finished successfully.
+
+
+
+ error
+
+ The job has failed during runtime, or the master
+ daemon has been stopped during the job execution.
+
+
+
+
+
+
+
&footer;