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