~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to doc/man/upgrade.rst

  • Committer: William Grant
  • Date: 2009-06-24 10:47:38 UTC
  • mfrom: (1288 trunk)
  • mto: (1281.1.8 aufsless)
  • mto: This revision was merged to the branch mainline in revision 1300.
  • Revision ID: grantw@unimelb.edu.au-20090624104738-ezgfy17mjzwz09i3
MergeĀ fromĀ trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
.. IVLE - Informatics Virtual Learning Environment
2
 
   Copyright (C) 2007-2010 The University of Melbourne
3
 
 
4
 
.. This program is free software; you can redistribute it and/or modify
5
 
   it under the terms of the GNU General Public License as published by
6
 
   the Free Software Foundation; either version 2 of the License, or
7
 
   (at your option) any later version.
8
 
 
9
 
.. This program is distributed in the hope that it will be useful,
10
 
   but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
 
   GNU General Public License for more details.
13
 
 
14
 
.. You should have received a copy of the GNU General Public License
15
 
   along with this program; if not, write to the Free Software
16
 
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17
 
 
18
 
********
19
 
Upgrades
20
 
********
21
 
 
22
 
Follow these instructions to upgrade your IVLE installation. In the case of a
23
 
multi-node installation, follow each instruction on every node unless
24
 
otherwise specified.
25
 
 
26
 
 
27
 
Shutting down
28
 
=============
29
 
 
30
 
Before commencing the main upgrade process, ensure that the slave web servers
31
 
are inaccessible -- stopping Apache is a good way to be sure. ::
32
 
 
33
 
   sudo /etc/init.d/apache2 stop
34
 
 
35
 
You should then check for and kill any ``python-console`` process on the
36
 
slaves. These are the console backend processes, and may hold resources open
37
 
across the upgrade -- that could end badly.
38
 
 
39
 
 
40
 
Unmounting user jails
41
 
=====================
42
 
 
43
 
An upgrade is a good opportunity to purge obsolete jail mounts on each slave.
44
 
Unmounting the jails will also reduce the likelihood of problems during the
45
 
later jail rebuilds. Take heed of any ``Device busy`` errors -- that normally
46
 
indicates that a ``python-console`` process is still running. ::
47
 
 
48
 
   sudo ivle-mountallusers -u
49
 
 
50
 
 
51
 
Upgrading the code
52
 
==================
53
 
 
54
 
The next stage of the IVLE upgrade process depends on the installation mode.
55
 
 
56
 
 
57
 
Upgrading a source installation
58
 
-------------------------------
59
 
 
60
 
To upgrade a source installation, update your checkout or extract a new
61
 
release tarball.
62
 
 
63
 
Then build and install the updated code: ::
64
 
 
65
 
   ./setup.py build
66
 
   sudo ./setup.py install
67
 
 
68
 
 
69
 
Upgrading a packaged installation
70
 
---------------------------------
71
 
 
72
 
To upgrade an installation from the Ubuntu package, a normal apt upgrade
73
 
is sufficient. ::
74
 
 
75
 
   sudo apt-get update
76
 
   sudo apt-get upgrade
77
 
 
78
 
 
79
 
Patching the database
80
 
=====================
81
 
 
82
 
If the new version has additional database patches, apply each in order on
83
 
the master with something like this: ::
84
 
 
85
 
   sudo -u postgres psql -d ivle -f userdb/migrations/YYYYMMDD-XX.sql
86
 
 
87
 
 
88
 
Upgrading the jail
89
 
==================
90
 
 
91
 
The code inside the jail will normally need to be kept in sync with that
92
 
on the master and slaves. On the upgraded master: ::
93
 
 
94
 
   sudo ivle-buildjail -u
95
 
 
96
 
 
97
 
Rebuilding user jails
98
 
=====================
99
 
 
100
 
To ensure that any configuration or structural updates are pushed into the
101
 
jails, rebuild them all on the master. ::
102
 
 
103
 
   sudo ivle-remakeuser -a
104
 
 
105
 
This will preserve the user files (in ``/home/USERNAME``), but rebuild the
106
 
external configuration files and filesystem structure.
107
 
 
108
 
 
109
 
Changing the media version
110
 
==========================
111
 
 
112
 
If you've set a media version (in ``ivle.conf``, the ``media`` section's
113
 
``version`` value), you'll need to update it on each slave. Set it to a value
114
 
that hasn't been used before -- the IVLE version number, for example. Ensure
115
 
that it is the same on all slaves.
116
 
 
117
 
 
118
 
Restarting the user management server
119
 
=====================================
120
 
 
121
 
The master's user management server should be restarted after each upgrade. ::
122
 
 
123
 
   sudo /etc/init.d/ivle-usrmgt-server restart
124
 
 
125
 
 
126
 
Starting everything back up
127
 
===========================
128
 
 
129
 
Now that the upgrade is done, Apache can be restarted on the slaves. This
130
 
should bring IVLE back into service. ::
131
 
 
132
 
   sudo /etc/init.d/apache2 start