Statistics
| Branch: | Tag: | Revision:

root / README.upgrade @ 23f583a3

History | View | Annotate | Download (8.2 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
v0.7 -> v0.8
8
NEW/UPDATED SETTINGS
9
    * New config file 31-userdata.conf, containing userdata app settings
10
    * USERDATA_SSH_KEY_LENGTH:
11
      Genetared SSH key bits length
12
    * USERDATA_SSH_KEY_EXPONENT:
13
      Generated SSH key exponent
14
    * UI_SUPPORT_SSH_OS_LIST
15
      A list of os names that support ssh public key assignment
16
    * UI_OS_DEFAULT_USER_MAP
17
      OS/username map to identify default user name for a specific os
18

    
19
NEW DEPENDENCIES
20
    * M2Crypto is needed for server side ssh key pair generation. 
21

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

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

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

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

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

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

    
97

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

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

    
109

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

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

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

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

    
132
NEW SETTINGS
133
    * 30-ui.conf:SUGGESTED_FLAVORS
134
    * 30-ui.conf:VM_IMAGE_COMMON_METADATA
135

    
136

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

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

    
147
          https://github.com/dougbarth/amqp-utils
148

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

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

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

    
161

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

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

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

    
179
DB MIGRATIONS
180
    * 0018_auto__add_field_virtualmachine_buildpercentage
181

    
182
PACKAGING
183
    * Split Synnefo Ganeti tools to separate snf-ganeti-tools Debian package
184

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

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

    
193

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

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

    
204

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

    
209
REMOVED SETTINGS
210
    * 10-backend.conf:GANETI_OS_PROVIDER
211
    * 20-api.conf:GANETI_DISK_TEMPLATE
212

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