Statistics
| Branch: | Tag: | Revision:

root / docs / upgrade / upgrade-0.15.rst @ eb765213

History | View | Annotate | Download (3.8 kB)

1 774f683b Giorgos Korfiatis
Upgrade to Synnefo v0.15
2 774f683b Giorgos Korfiatis
^^^^^^^^^^^^^^^^^^^^^^^^
3 774f683b Giorgos Korfiatis
4 774f683b Giorgos Korfiatis
The upgrade to v0.15 consists in the following steps:
5 774f683b Giorgos Korfiatis
6 774f683b Giorgos Korfiatis
1. Bring down services and backup databases.
7 774f683b Giorgos Korfiatis
8 774f683b Giorgos Korfiatis
2. Upgrade packages, migrate the databases and configure settings.
9 774f683b Giorgos Korfiatis
10 eb765213 Giorgos Korfiatis
3. Re-register components and services in astakos.
11 eb765213 Giorgos Korfiatis
12 eb765213 Giorgos Korfiatis
4. Bring up all services.
13 774f683b Giorgos Korfiatis
14 774f683b Giorgos Korfiatis
.. warning::
15 774f683b Giorgos Korfiatis
16 774f683b Giorgos Korfiatis
    It is strongly suggested that you keep separate database backups
17 774f683b Giorgos Korfiatis
    for each service after the completion of each step.
18 774f683b Giorgos Korfiatis
19 774f683b Giorgos Korfiatis
1. Bring web services down, backup databases
20 774f683b Giorgos Korfiatis
============================================
21 774f683b Giorgos Korfiatis
22 774f683b Giorgos Korfiatis
1. All web services must be brought down so that the database maintains a
23 774f683b Giorgos Korfiatis
   predictable and consistent state during the migration process::
24 774f683b Giorgos Korfiatis
25 774f683b Giorgos Korfiatis
    $ service gunicorn stop
26 774f683b Giorgos Korfiatis
    $ service snf-dispatcher stop
27 774f683b Giorgos Korfiatis
    $ service snf-ganeti-eventd stop
28 774f683b Giorgos Korfiatis
29 774f683b Giorgos Korfiatis
2. Backup databases for recovery to a pre-migration state.
30 774f683b Giorgos Korfiatis
31 774f683b Giorgos Korfiatis
3. Keep the database servers running during the migration process.
32 774f683b Giorgos Korfiatis
33 774f683b Giorgos Korfiatis
34 774f683b Giorgos Korfiatis
2. Upgrade Synnefo and configure settings
35 774f683b Giorgos Korfiatis
=========================================
36 774f683b Giorgos Korfiatis
37 774f683b Giorgos Korfiatis
2.1 Install the new versions of packages
38 774f683b Giorgos Korfiatis
----------------------------------------
39 774f683b Giorgos Korfiatis
40 774f683b Giorgos Korfiatis
::
41 774f683b Giorgos Korfiatis
42 774f683b Giorgos Korfiatis
    astakos.host$ apt-get install \
43 774f683b Giorgos Korfiatis
                            python-objpool \
44 774f683b Giorgos Korfiatis
                            snf-common \
45 774f683b Giorgos Korfiatis
                            python-astakosclient \
46 774f683b Giorgos Korfiatis
                            snf-django-lib \
47 774f683b Giorgos Korfiatis
                            snf-webproject \
48 774f683b Giorgos Korfiatis
                            snf-branding \
49 774f683b Giorgos Korfiatis
                            snf-astakos-app
50 774f683b Giorgos Korfiatis
51 774f683b Giorgos Korfiatis
    cyclades.host$ apt-get install \
52 774f683b Giorgos Korfiatis
                            python-objpool \
53 774f683b Giorgos Korfiatis
                            snf-common \
54 774f683b Giorgos Korfiatis
                            python-astakosclient \
55 774f683b Giorgos Korfiatis
                            snf-django-lib \
56 774f683b Giorgos Korfiatis
                            snf-webproject \
57 774f683b Giorgos Korfiatis
                            snf-branding \
58 774f683b Giorgos Korfiatis
                            snf-pithos-backend \
59 774f683b Giorgos Korfiatis
                            snf-cyclades-app
60 774f683b Giorgos Korfiatis
61 774f683b Giorgos Korfiatis
    pithos.host$ apt-get install \
62 774f683b Giorgos Korfiatis
                            python-objpool \
63 774f683b Giorgos Korfiatis
                            snf-common \
64 774f683b Giorgos Korfiatis
                            python-astakosclient \
65 774f683b Giorgos Korfiatis
                            snf-django-lib \
66 774f683b Giorgos Korfiatis
                            snf-webproject \
67 774f683b Giorgos Korfiatis
                            snf-branding \
68 774f683b Giorgos Korfiatis
                            snf-pithos-backend \
69 774f683b Giorgos Korfiatis
                            snf-pithos-app \
70 774f683b Giorgos Korfiatis
                            snf-pithos-webclient
71 774f683b Giorgos Korfiatis
72 774f683b Giorgos Korfiatis
    ganeti.node$ apt-get install \
73 774f683b Giorgos Korfiatis
                            python-objpool \
74 774f683b Giorgos Korfiatis
                            snf-common \
75 774f683b Giorgos Korfiatis
                            snf-cyclades-gtools \
76 774f683b Giorgos Korfiatis
                            snf-pithos-backend
77 774f683b Giorgos Korfiatis
78 774f683b Giorgos Korfiatis
.. note::
79 774f683b Giorgos Korfiatis
80 774f683b Giorgos Korfiatis
   Make sure `snf-webproject' has the same version with snf-common
81 774f683b Giorgos Korfiatis
82 774f683b Giorgos Korfiatis
.. note::
83 774f683b Giorgos Korfiatis
84 774f683b Giorgos Korfiatis
    Installing the packages will cause services to start. Make sure you bring
85 774f683b Giorgos Korfiatis
    them down again (at least ``gunicorn``, ``snf-dispatcher``)
86 774f683b Giorgos Korfiatis
87 774f683b Giorgos Korfiatis
2.2 Sync and migrate the database
88 774f683b Giorgos Korfiatis
---------------------------------
89 774f683b Giorgos Korfiatis
90 774f683b Giorgos Korfiatis
.. note::
91 774f683b Giorgos Korfiatis
92 774f683b Giorgos Korfiatis
   If you are asked about stale content types during the migration process,
93 774f683b Giorgos Korfiatis
   answer 'no' and let the migration finish.
94 774f683b Giorgos Korfiatis
95 774f683b Giorgos Korfiatis
::
96 774f683b Giorgos Korfiatis
97 774f683b Giorgos Korfiatis
    astakos-host$ snf-manage syncdb
98 774f683b Giorgos Korfiatis
    astakos-host$ snf-manage migrate
99 774f683b Giorgos Korfiatis
100 774f683b Giorgos Korfiatis
    cyclades-host$ snf-manage syncdb
101 774f683b Giorgos Korfiatis
    cyclades-host$ snf-manage migrate
102 774f683b Giorgos Korfiatis
103 774f683b Giorgos Korfiatis
    pithos-host$ pithos-migrate upgrade head
104 774f683b Giorgos Korfiatis
105 eb765213 Giorgos Korfiatis
3. Re-register components and services in astakos
106 eb765213 Giorgos Korfiatis
=================================================
107 eb765213 Giorgos Korfiatis
108 eb765213 Giorgos Korfiatis
Component registration has changed; you will thus need to repeat the
109 eb765213 Giorgos Korfiatis
process. On the astakos node, run::
110 eb765213 Giorgos Korfiatis
111 eb765213 Giorgos Korfiatis
    astakos-host$ snf-component-register
112 eb765213 Giorgos Korfiatis
113 eb765213 Giorgos Korfiatis
This will detect that the Synnefo components are already registered and ask
114 eb765213 Giorgos Korfiatis
to re-register. Answer positively. You need to enter the base URL and the UI
115 eb765213 Giorgos Korfiatis
URL for each component, just like during the initial registration.
116 eb765213 Giorgos Korfiatis
117 eb765213 Giorgos Korfiatis
4. Bring all services up
118 774f683b Giorgos Korfiatis
========================
119 774f683b Giorgos Korfiatis
120 774f683b Giorgos Korfiatis
After the upgrade is finished, we bring up all services:
121 774f683b Giorgos Korfiatis
122 774f683b Giorgos Korfiatis
.. code-block:: console
123 774f683b Giorgos Korfiatis
124 774f683b Giorgos Korfiatis
    astakos.host  # service gunicorn start
125 774f683b Giorgos Korfiatis
    cyclades.host # service gunicorn start
126 774f683b Giorgos Korfiatis
    pithos.host   # service gunicorn start
127 774f683b Giorgos Korfiatis
128 774f683b Giorgos Korfiatis
    cyclades.host # service snf-dispatcher start