Statistics
| Branch: | Tag: | Revision:

root / README.upgrade @ c909cbbd

History | View | Annotate | Download (7.9 kB)

1
README.Upgrade
2
===============
3

    
4
This file documents the upgrade to newer versions of the Synnefo software.
5
For more information, please see README.deploy.
6

    
7

    
8
v0.7 -> v0.8
9
API
10
    * A new 'disk_template' attribute has been added to Flavors.
11
      GANETI_DISK_TEMPLATES and DEFAULT_GANETI_DISK_TEMPLATE have been added
12
      in 20-api.conf to control its value. A database migration is needed.
13

    
14

    
15
v0.6.2 -> v0.7
16
HTML TEMPLATES
17
    * Included a generic service unavailable template based on
18
      generic_info_tpl.html, as ui/static/service_unavailable.html.
19

    
20
NEW DEPENDENCIES
21
    * python-unittest2, python-paramiko needed by the new integration
22
      test suite snf-tools/burnin. Paramiko shipped with Squeeze uses
23
      broken RandomPool, produces warnings, see #576697.
24
    * snf-image must be installed on all Ganeti hosts, see README.deploy,
25
      Step 13.
26

    
27
COMPONENTS
28
    * snf-admin has been updated with new functionality, be sure to upgrade any
29
      locally installed versions.
30
    * snf-image replaces snf-ganeti-instance-image as the Ganeti OS provider
31
      used by Synnefo, and can live alongside snf-ganeti-instance-image.
32
      Once snf-image has been deployed on all Ganeti nodes, be sure to modify
33
      the value of settings.d/10-backend.conf:GANETI_CREATEINSTANCE_KWARGS
34
      to use 'snf-image+default'.
35

    
36
UI STATIC FILES
37
    * A major reorganization of static files has been commited. All ui and
38
      invitations static files has been moved in their own separate directory
39
      (ui/static/snf, ui/static/invitations).
40
    * UI static files base url is now configurable via UI_MEDIA_URL.
41
    * A symlink named after the current version of the ui application has been
42
      committed in ui/static directory. The symlink will get updated after each
43
      version upgrade to allow us provide unique urls of static files between
44
      after each upgrade, see #1460.
45

    
46
NEW/UPDATED SETTINGS
47
    * EMAIL_SUBJECT_PREFIX:
48
      Prepended to automated emails, set to someting that uniquely identifies
49
      the deployment.
50
    * MAX_PERSONALITY and MAX_PERSONALITY_SIZE in 20-api.conf:
51
      Maximum number of files to be injected in newly created servers,
52
      maximum total size of encoded file contents.
53
    * Renamed SUGGESTED_FLAVORS to VM_CREATE_SUGGESTED_FLAVORS in 30-ui.conf
54
    * VM_CREATE_SUGGESTED_ROLES in 30-ui.conf:
55
      A list of suggested vm roles to display to user on create wizard.
56
    * UI_DELAY_ON_BLUR in 30-ui.conf:
57
      Whether to increase the intervals of recurrent requests (networks/vms 
58
      update) if window loses its focus.
59
    * UI_BLUR_DELAY in 30-ui.conf:
60
      The value of update intervals if window loses its focus.
61
      Considered only if `UI_DELAY_ON_BLUR` is set to True.
62
    * UI_UPDATE_HIDDEN_VIEWS in 30-ui.conf:
63
      Whether not visible vm views will update their content if vm changes.
64
    * UI_SKIP_TIMEOUTS in 30-ui.conf:
65
      After how many timeouts of reccurent ajax requests to display the timeout
66
      error overlay.
67
    * UI_HANDLE_WINDOW_EXCEPTIONS in 30-ui.conf:
68
      Whether UI should display error overlay for all Javascript exceptions.
69
    * UI_MEDIA_URL in 30-ui.conf:
70
      Base url for ui static files, 
71
      defaults to MEDIA_URL + 'snf-<latest_ui_version>/'.
72
    * MEDIA_URL changed in 00-site.conf:
73
      Changed to '/static/' since it is now used in ui app.
74
    * TEMPLATE_CONTEXT_PROCESSORS changed in 00-apps.conf:
75
      added 'django.core.context_processors.media' to allow access of MEDIA_URL
76
      in template files.
77
    * GANETI_CREATEINSTANCE_KWARGS in 10-backend.conf:
78
      Must be updated to use snf-image as the Ganeti OS provider.
79
      
80
    
81
DB MIGRATION
82
    * Uniqueness constraints have been added to the metadata models.
83
      A database migration is needed.
84

    
85
LOGGING
86
    * A new logging mechanism has been implemeted. Please see 00-logging.conf
87
      under settings.d/ and read the relevant section in README.admin for more
88
      info.
89

    
90

    
91
v0.6.1 -> v0.6.2
92
ADMIN INTERFACE
93
    * The models were changed so that Flavors and SynnefoUsers now have
94
      a deleted state. The admin tools were updated so that models are
95
      now marked as deleted instead of actually being deleted from the DB.
96
      A database migration is needed.
97

    
98
COMPONENTS
99
    * Only the Django webapp is affected, must restart the logic dispatcher
100
      due to DB migration taking place.
101

    
102

    
103
v0.5.5 -> v0.6
104
ADMIN INTERFACE
105
    * A new Web-based admin interface is available under /admin.
106
      It is accessible by users of type 'ADMIN' in the DB, with
107
      their authentication token. "snf-admin user modify" may be used
108
      to change the type of a specific user.
109

    
110
RECONCILIATION
111
    * Implemented new reconciliation management command, please see
112
      ./manage.py reconcile --help and README.admin for more info.
113
      Recommended to run ./manage.py reconcile --detect-all periodically,
114
      via cron.
115

    
116
GANETI-INSTANCE-IMAGE
117
    * A new version of ganeti-instance-image is required (v0.5.1-1-snf1).
118
      The new version is available for download as a debian package:
119
      https://code.grnet.gr/projects/gnt-instance-image/files
120

    
121
COMPONENTS
122
    * snf-ganeti-tools must be rebuilt, see snf-ganeti-tools/debian/
123
      for Debian packaging.
124

    
125
NEW SETTINGS
126
    * 30-ui.conf:SUGGESTED_FLAVORS
127
    * 30-ui.conf:VM_IMAGE_COMMON_METADATA
128

    
129

    
130
v0.5.4 -> v0.5.5
131
LOGGING
132
    * Changed the default logging settings for the dispatcher to also log
133
      to /var/log/synnefo/dispatcher.log, redirecting stderr and stdout there
134

    
135
QUEUES
136
    * Changed default routing key naming for queues. Queues must be redeclared.
137
      The suggested upgrade path is to delete ALL (even obsolete) existing
138
      queues and restart the dispatcher. To do so, download amqp-utils from
139

    
140
          https://github.com/dougbarth/amqp-utils
141

    
142
      and run the amqp-deleteq tool for each declared queue. Alternatively,
143
      amqp-utils can be installed with: sudo gem install amqp-utils.
144

    
145
UI
146
    * Feedback form now uses django native send_mail for sending emails.
147
      Proper django settings should be set for feedback mails to work
148
      (https://docs.djangoproject.com/en/dev/topics/email/)
149

    
150
COMPONENTS
151
    * snf-ganeti-tools must be rebuilt, see snf-ganeti-tools/debian/
152
      for Debian packaging.
153

    
154

    
155
v0.5.3 -> v0.5.4
156
REPOSITORY
157
    * Split Synnefo Ganeti tools to snf-ganeti-tools, with Debian packaging
158

    
159
REMOVED APPS
160
    * The ganeti/ app has been removed from the Django project completely.
161
      Any explicit references to it in Django settings must be removed.
162

    
163
DJANGO SETTINGS
164
    * snf-ganeti-tools is configured independently from Django,
165
      need to add proper /etc/synnefo/settings.conf
166
    * Removed 15-queues.conf: fix_amqp_settings (no need to call it anywhere)
167
    * Removed settings.d/98-ganeti-* due to split of snf-ganeti-tools
168
    * ~okeanos intro: OKEANOS_VIDEO_URL: Changed from string to dict
169
    * ~okeanos intro: OKEANOS_VIDEO_POSTER_IMAGE_URL: New setting
170
    * ~okeanos intro: OKEANOS_VIDEO_FLOWPLAYER_URL: New setting
171

    
172
DB MIGRATIONS
173
    * 0018_auto__add_field_virtualmachine_buildpercentage
174

    
175
PACKAGING
176
    * Split Synnefo Ganeti tools to separate snf-ganeti-tools Debian package
177

    
178
NEW DEPENDENCIES
179
    * python-prctl: Needed by the snf-progress-monitor,
180
      specified as a dependency of the snf-ganeti-tools Debian package.
181

    
182
EXTERNAL COMPONENTS
183
    * Ganeti Instance Image must be upgraded to support progress monitoring,
184
      please see README.deploy.
185

    
186

    
187
v0.5.2 -> v0.5.3
188
NEW SETTINGS
189
    * 30-ui.conf:LOGOUT_URL
190
    * 00-admins.conf:DEFAULT_FROM_EMAIL
191
    * 90-okeanos.conf.sample:LOGOUT_URL
192

    
193
REMOVED SETTINGS
194
    * 00-admins.conf:SYSTEM_EMAIL_ADDR
195
    * 90-okeanos.conf.sample:APP_INSTALL_URL
196

    
197

    
198
v0.5.1 -> v0.5.2
199
NEW SETTINGS
200
    * 10-backend.py:GANETI_CREATEINSTANCE_KWARGS
201

    
202
REMOVED SETTINGS
203
    * 10-backend.conf:GANETI_OS_PROVIDER
204
    * 20-api.conf:GANETI_DISK_TEMPLATE
205

    
206
BACKEND CHANGES
207
    * Need to patch Ganeti, file:
208
      lib/python2.6/site-packages/ganeti/rapi/rlib2.py
209
      to honor the wait_for_sync flag, see Synnefo #835.
210
      Patch provided under contrib/patches/ganeti-rlib2.py-v0.5.2