Statistics
| Branch: | Tag: | Revision:

root / README.upgrade @ 21dd2100

History | View | Annotate | Download (8.1 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.3 -> 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
ADMIN TOOLS
15
    * A new --disk-template flag has been added to snf-admin to choose a
16
      disk template when creating flavors. Similarly, disk_template support
17
      in flavors has beed added to the admin web interface.
18

    
19

    
20
v0.6.2 -> v0.7
21
HTML TEMPLATES
22
    * Included a generic service unavailable template based on
23
      generic_info_tpl.html, as ui/static/service_unavailable.html.
24

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

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

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

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

    
90
LOGGING
91
    * A new logging mechanism has been implemeted. Please see 00-logging.conf
92
      under settings.d/ and read the relevant section in README.admin for more
93
      info.
94

    
95

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

    
103
COMPONENTS
104
    * Only the Django webapp is affected, must restart the logic dispatcher
105
      due to DB migration taking place.
106

    
107

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

    
115
RECONCILIATION
116
    * Implemented new reconciliation management command, please see
117
      ./manage.py reconcile --help and README.admin for more info.
118
      Recommended to run ./manage.py reconcile --detect-all periodically,
119
      via cron.
120

    
121
GANETI-INSTANCE-IMAGE
122
    * A new version of ganeti-instance-image is required (v0.5.1-1-snf1).
123
      The new version is available for download as a debian package:
124
      https://code.grnet.gr/projects/gnt-instance-image/files
125

    
126
COMPONENTS
127
    * snf-ganeti-tools must be rebuilt, see snf-ganeti-tools/debian/
128
      for Debian packaging.
129

    
130
NEW SETTINGS
131
    * 30-ui.conf:SUGGESTED_FLAVORS
132
    * 30-ui.conf:VM_IMAGE_COMMON_METADATA
133

    
134

    
135
v0.5.4 -> v0.5.5
136
LOGGING
137
    * Changed the default logging settings for the dispatcher to also log
138
      to /var/log/synnefo/dispatcher.log, redirecting stderr and stdout there
139

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

    
145
          https://github.com/dougbarth/amqp-utils
146

    
147
      and run the amqp-deleteq tool for each declared queue. Alternatively,
148
      amqp-utils can be installed with: sudo gem install amqp-utils.
149

    
150
UI
151
    * Feedback form now uses django native send_mail for sending emails.
152
      Proper django settings should be set for feedback mails to work
153
      (https://docs.djangoproject.com/en/dev/topics/email/)
154

    
155
COMPONENTS
156
    * snf-ganeti-tools must be rebuilt, see snf-ganeti-tools/debian/
157
      for Debian packaging.
158

    
159

    
160
v0.5.3 -> v0.5.4
161
REPOSITORY
162
    * Split Synnefo Ganeti tools to snf-ganeti-tools, with Debian packaging
163

    
164
REMOVED APPS
165
    * The ganeti/ app has been removed from the Django project completely.
166
      Any explicit references to it in Django settings must be removed.
167

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

    
177
DB MIGRATIONS
178
    * 0018_auto__add_field_virtualmachine_buildpercentage
179

    
180
PACKAGING
181
    * Split Synnefo Ganeti tools to separate snf-ganeti-tools Debian package
182

    
183
NEW DEPENDENCIES
184
    * python-prctl: Needed by the snf-progress-monitor,
185
      specified as a dependency of the snf-ganeti-tools Debian package.
186

    
187
EXTERNAL COMPONENTS
188
    * Ganeti Instance Image must be upgraded to support progress monitoring,
189
      please see README.deploy.
190

    
191

    
192
v0.5.2 -> v0.5.3
193
NEW SETTINGS
194
    * 30-ui.conf:LOGOUT_URL
195
    * 00-admins.conf:DEFAULT_FROM_EMAIL
196
    * 90-okeanos.conf.sample:LOGOUT_URL
197

    
198
REMOVED SETTINGS
199
    * 00-admins.conf:SYSTEM_EMAIL_ADDR
200
    * 90-okeanos.conf.sample:APP_INSTALL_URL
201

    
202

    
203
v0.5.1 -> v0.5.2
204
NEW SETTINGS
205
    * 10-backend.py:GANETI_CREATEINSTANCE_KWARGS
206

    
207
REMOVED SETTINGS
208
    * 10-backend.conf:GANETI_OS_PROVIDER
209
    * 20-api.conf:GANETI_DISK_TEMPLATE
210

    
211
BACKEND CHANGES
212
    * Need to patch Ganeti, file:
213
      lib/python2.6/site-packages/ganeti/rapi/rlib2.py
214
      to honor the wait_for_sync flag, see Synnefo #835.
215
      Patch provided under contrib/patches/ganeti-rlib2.py-v0.5.2