root / docs / src / deployment.rst @ c9a968e8
History | View | Annotate | Download (2.1 kB)
1 |
Deployment |
---|---|
2 |
========== |
3 |
|
4 |
Node types |
5 |
---------- |
6 |
|
7 |
Nodes in a Synnefo deployment belong in one of the following types: |
8 |
|
9 |
DB |
10 |
** |
11 |
A node [or more than one nodes, if using an HA configuration], running a DB |
12 |
engine supported by the Django ORM layer. The DB is the single source of |
13 |
truth for the servicing of API requests by Synnefo. |
14 |
Services: PostgreSQL / MySQL |
15 |
|
16 |
APISERVER |
17 |
********* |
18 |
A node running the implementation of the OpenStack API, in Django. Any number |
19 |
of APISERVERs can be used, in a load-balancing configuration, without any |
20 |
special consideration. Access to a common DB ensures consistency. |
21 |
Services: Web server, vncauthproxy |
22 |
|
23 |
QUEUE |
24 |
***** |
25 |
A node running the RabbitMQ software, which provides AMQP functionality. More |
26 |
than one QUEUE nodes may be deployed, in an HA configuration. Such |
27 |
deployments require shared storage, provided e.g., by DRBD. |
28 |
Services: RabbitMQ [rabbitmq-server] |
29 |
|
30 |
LOGIC |
31 |
***** |
32 |
A node running the business logic of Synnefo, in Django. It dequeues |
33 |
messages from QUEUE nodes, and provides the context in which business logic |
34 |
functions run. It uses Django ORM to connect to the common DB and update the |
35 |
state of the system, based on notifications received from the rest of the |
36 |
infrastructure, over AMQP. |
37 |
Services: the Synnefo logic dispatcher [/logic/dispatcher.py] |
38 |
|
39 |
GANETI-MASTER and GANETI-NODE |
40 |
***************************** |
41 |
A single GANETI-MASTER and a large number of GANETI-NODEs constitute the |
42 |
Ganeti backend for Synnefo, which undertakes all VM management functions. |
43 |
Any APISERVER can issue commands to the GANETI-MASTER, over RAPI, to effect |
44 |
changes in the state of the VMs. The GANETI-MASTER runs the Ganeti request |
45 |
queue. |
46 |
|
47 |
Services: |
48 |
only on GANETI-MASTER: |
49 |
the Synnefo Ganeti monitoring daemon [/ganeti/snf-ganeti-eventd] |
50 |
the Synnefo Ganeti hook [/ganeti/snf-ganeti-hook.py]. |
51 |
on each GANETI_NODE: |
52 |
a deployment-specific KVM ifup script |
53 |
properly configured `NFDHCPD`_ |
54 |
|
55 |
|
56 |
UI deployment |
57 |
------------- |
58 |
|
59 |
Using Apache |
60 |
************ |
61 |
|
62 |
.. todo:: document apache configuration |
63 |
|
64 |
Using nginx |
65 |
*********** |
66 |
|
67 |
.. todo:: document nginx configuration |
68 |
|
69 |
Serving static files |
70 |
******************** |
71 |
|
72 |
.. todo:: document serving static files instructions |
73 |
|