Statistics
| Branch: | Tag: | Revision:

root / docs / src / deployment.rst @ c469ca86

History | View | Annotate | Download (2.5 kB)

1
.. _deployment:
2

    
3
Deployment
4
==========
5

    
6
Node types
7
----------
8

    
9
Nodes in a Synnefo deployment belong in one of the following types:
10

    
11

    
12
.. _DB_NODE:
13

    
14
DB
15
**
16
A node [or more than one nodes, if using an HA configuration], running a DB
17
engine supported by the Django ORM layer. The DB is the single source of
18
truth for the servicing of API requests by Synnefo.
19
Services: PostgreSQL / MySQL
20

    
21

    
22
.. _APISERVER_NODE:
23

    
24
APISERVER
25
*********
26
A node running the implementation of the OpenStack API, in Django. Any number
27
of APISERVERs can be used, in a load-balancing configuration, without any
28
special consideration. Access to a common DB ensures consistency.
29
Services: Web server, vncauthproxy
30

    
31

    
32
.. _QUEUE_NODE:
33

    
34
QUEUE
35
*****
36
A node running the RabbitMQ software, which provides AMQP functionality. More
37
than one QUEUE nodes may be deployed, in an HA configuration. Such
38
deployments require shared storage, provided e.g., by DRBD.
39
Services: RabbitMQ [rabbitmq-server]
40

    
41

    
42
.. _LOGIC_NODE:
43

    
44
LOGIC
45
*****
46
A node running the business logic of Synnefo, in Django. It dequeues
47
messages from QUEUE nodes, and provides the context in which business logic
48
functions run. It uses Django ORM to connect to the common DB and update the
49
state of the system, based on notifications received from the rest of the
50
infrastructure, over AMQP.
51
Services: the Synnefo logic dispatcher [``synnefo-dispatcher``]
52

    
53

    
54
.. _GANETI_NODES:
55

    
56
GANETI-MASTER and GANETI-NODE
57
*****************************
58
A single GANETI-MASTER and a large number of GANETI-NODEs constitute the
59
Ganeti backend for Synnefo, which undertakes all VM management functions.
60
Any APISERVER can issue commands to the GANETI-MASTER, over RAPI, to effect
61
changes in the state of the VMs. The GANETI-MASTER runs the Ganeti request
62
queue.
63

    
64
Services:
65
 only on GANETI-MASTER:
66
   the Synnefo Ganeti monitoring daemon [/ganeti/snf-ganeti-eventd]
67
   the Synnefo Ganeti hook [/ganeti/snf-ganeti-hook.py].
68
 on each GANETI_NODE:
69
   a deployment-specific KVM ifup script
70
   properly configured :ref:`NFDHCPD <nfdhcpd-setup>`
71

    
72

    
73
.. _WEBAPP_NODE:
74

    
75
WEBAPP
76
******
77
Synnefo WEBAPP node is the server that runs the web application contained within
78
the synnefo package. At the current state Synnefo provides two web frontends.
79

    
80

    
81
.. _webapp-deploy:
82

    
83
Web application deployment
84
--------------------------
85

    
86
Using Apache
87
************
88

    
89
.. todo:: document apache configuration
90

    
91
Using nginx
92
***********
93

    
94
.. todo:: document nginx configuration
95

    
96
Serving static files
97
********************
98

    
99
.. todo:: document serving static files instructions
100