root / doc / design-2.0-index.rst @ 109509e4
History | View | Annotate | Download (2.7 kB)
1 |
Ganeti 2.0 design documents |
---|---|
2 |
=========================== |
3 |
|
4 |
|
5 |
The 2.x versions of Ganeti will constitute a rewrite of the 'core' |
6 |
architecture, plus some additional features (however 2.0 is geared |
7 |
toward the core changes). |
8 |
|
9 |
Core changes |
10 |
------------ |
11 |
|
12 |
The main changes will be switching from a per-process model to a |
13 |
daemon based model, where the individual gnt-* commands will be |
14 |
clients that talk to this daemon (see the design-2.0-master-daemon |
15 |
document). This will allow us to get rid of the global cluster lock |
16 |
for most operations, having instead a per-object lock (see |
17 |
design-2.0-granular-locking). Also, the daemon will be able to queue |
18 |
jobs, and this will allow the invidual clients to submit jobs without |
19 |
waiting for them to finish, and also see the result of old requests |
20 |
(see design-2.0-job-queue). |
21 |
|
22 |
Beside these major changes, another 'core' change but that will not be |
23 |
as visible to the users will be changing the model of object attribute |
24 |
storage, and separate that into namespaces (such that an Xen PVM |
25 |
instance will not have the Xen HVM parameters). This will allow future |
26 |
flexibility in defining additional parameters. More details in the |
27 |
design-2.0-cluster-parameters document. |
28 |
|
29 |
The various changes brought in by the master daemon model and the |
30 |
read-write RAPI will require changes to the cluster security; we move |
31 |
away from Twisted and use http(s) for intra- and extra-cluster |
32 |
communications. For more details, see the SECURITY document in the top |
33 |
directory. |
34 |
|
35 |
|
36 |
Functionality changes |
37 |
--------------------- |
38 |
|
39 |
The disk storage will receive some changes, and will also remove |
40 |
support for the drbd7 and md disk types. See the |
41 |
design-2.0-disk-changes document. |
42 |
|
43 |
The configuration storage will be changed, with the effect that more |
44 |
data will be available on the nodes for access from outside ganeti |
45 |
(e.g. from shell scripts) and that nodes will get slightly more |
46 |
awareness of the cluster configuration. |
47 |
|
48 |
The RAPI will enable modify operations (beside the read-only queries |
49 |
that are available today), so in effect almost all the operations |
50 |
available today via the ``gnt-*`` commands will be available via the |
51 |
remote API. |
52 |
|
53 |
A change in the hypervisor support area will be that we will support |
54 |
multiple hypervisors in parallel in the same cluster, so one could run |
55 |
Xen HVM side-by-side with Xen PVM on the same cluster. |
56 |
|
57 |
New features |
58 |
------------ |
59 |
|
60 |
There will be a number of minor feature enhancements targeted to |
61 |
either 2.0 or subsequent 2.x releases: |
62 |
|
63 |
- multiple disks, with custom properties (read-only/read-write, exportable, |
64 |
etc.) |
65 |
- multiple NICs |
66 |
|
67 |
These changes will require OS API changes, details are in the |
68 |
design-2.0-os-interface document. And they will also require many |
69 |
command line changes, see the design-2.0-commandline-parameters |
70 |
document. |