Upgrading to bugfix releases within one version (e.g. from 1.6.6-1 to 1.6.6-3) may be done by shutting down the server and upgrading the packages with
[root] # rpm -Uvh <packageName>For details on the changes, pease refer to the change log.
This section describes the upgrade of dCache instances installed with the previous version (currently version 1.6.5) and also some earlier versions - notably the one distributed with the previous or current WLCG software. The first section will give a quick upgrade guide. It might not be applicable to complex setups. Not all features of the new version will be enabled after the quick upgrade guide. The next section will give pointers on how to enable them.
Note that the upgrade of dCache is independent of a
conversion of the pnfs database from GDBM to PostgreSQL. The
conversion and upgrade to the PostgreSQL version of pnfs may
be performed any time before or after the upgrade of
dCache. Do not perform the dCache upgrade and the pnfs
database conversion simultaneously. It is better to do them one
after the other, and test the system inbetween. Do not be
mislead by the fact the dCache release only contains the
PostgreSQL version of pnfs (since version 1.6.6). See Chapter 19, Moving the pnfs Data from GDBM to PostgreSQL for a guide to convert and upgrade
the pnfs server.
In case you are already using PostgreSQL (e.g. for the SRM),
it is a good idea to upgrade to version 8 now, because prior to
dCache Version 1.6.6 no precious data is stored and therefore
can be wiped off, allowing a PostgreSQL 8 installation from
scratch. Starting from dCache version 1.6.6 PostgreSQL will
be utilized more heavily, making migration a complex
task. Another advantage of PostgreSQL 8 is an integrated
mechanism for automatic backups.
Stop the dCache services on all nodes of the instance:
[root] #/opt/d-cache/bin/dcache-pool stop[root] #/opt/d-cache/bin/dcache-opt stop[root] #/opt/d-cache/bin/dcache-core stop
Leave the pnfs server running. In WLCG installations, there
might be a “meta-package” installed which can
prevent the update to the current version. It should be
deinstalled. The following command will do that and will not
harm if the metapackage is not installed. Therefore, go ahead
and do it anyway:
[root] # rpm -e lcg-SE_dcacheUpgrade the dCache RPM packages with
[root] # rpm -Uvh dcache-server-1.6.6-1.i386.rpm dcache-client-1.6.6-1.i386.rpm
For this quick upgrade you have to keep your old configuration
files (i.e. config/dCacheSetup,
config/PoolManager.conf
etc/node_config,
etc/door_config, and
etc/pool_path). Do not use the
templates.
However, make sure that etc/node_config
contains
PNFS_OVERWRITE=no
and that a single value is assigned to
NODE_TYPE. Check that
etc/pool_path contains
“no” in the third field of
each line. You might also want to doublecheck the contents of
etc/door_config on each node.
Run the install script:
[root] # /opt/d-cache/install/install.shAnd start the server again with
[root] #/opt/d-cache/bin/dcache-core start[root] #/opt/d-cache/bin/dcache-pool start
Note that the start-up script for the optional components is not needed anymore. Therefore, it is probably best to remove them:
[root] # rm /opt/d-cache/bin/dcache-opt /etc/init.d/dcache-optThis section gives a few hints for solving problems and fine-tuning after the upgrade.
Check if the information given in the files
/opt/d-cache/etc/node_config and
/opt/d-cache/etc/door_config is correct:
Check, that a single value is assigned to
NODE_TYPE in
/opt/d-cache/etc/node_config. If the
assignment contains several words, the behaviour of some
previous versions might be different from the new one.
Check that the doors which are started in the (now obsolete)
/opt/d-cache/bin/dcache-opt start-up
script are also enabled in
/opt/d-cache/etc/door_config. The latter
file is now evaluated by the start-up script
/opt/d-cache/bin/dcache-core and not by
the install script any more. This might lead to a different
behaviour.
If, prior to the upgrade, you changed anything in a batch file
(config/<domainName>.batch)
these changes will be moved to files with names
config/<domainName>.batch.rpmsave.
There have been major changes to the batch files. Therefore it
is necessary to reapply your changes. However, keep in mind
that the batch files are considered to be part of the software
and not configuration files.
It should not be necessary to change them in most
situations. Try to find a prober configuration variable in
config/dCacheSetup. (See the template in
etc/dCacheSetup.template for hints.) If
it should still be necessary to change a batch file, contact
<support@dcache.org> and report a “request
for enhancement”. (See Chapter 5, The Cell Package
for background information on the batch files.)
Your old config/PoolManager.conf will not
be overwritten by the upgrade. Its format did not
change. Therefore, it is fine to keep your old one. In case
you did not customize the pool manager configuration, make
sure that the set costcuts line reads
set costcuts -idle=0.0 -p2p=2.0 -alert=0.0 -halt=0.0 -fallback=0.0
Prior versions installed a
config/PoolManager.conf with
-idle=1.0 which will lead to undesired
behaviour of the pool manager.
Before switching on the companion in
config/dCacheSetup with the line
cacheInfo=companion
you have to be aware of the following:
For each file the list of pools the file is stored on (the
cache info) is now stored within the pnfs namespace
metadata. When switching on the companion, the dCache
system expects it to be stored in a PostgreSQL database. You
should first create this database:
[root] #createdb -U srmdcache companion[root] #psql -U srmdcache companion -f /opt/d-cache/etc/psql_install_companion.sql
on the node where the PnfsManager will run (normally the admin node). Now, put
cacheInfo=companion
into config/dCacheSetup and restart the
PnfsManager:
/opt/d-cache/bin/dcache-core restartNow the dCache system will not be aware of any files stored on the pools. To make it aware again, you have to go through the following steps: Since this will take a while and will put a considerable load on the PnfsManager, take care that this is done with one pool at a time. You should also plan for a downtime:
In the admin interface (see the section called “The Admin Interface”) go to a pool, e.g.
(local) admin > cd <hostname>_1and issue the command
(<poolname>) admin > pnfs registerThen go to the pnfs manager:
(<poolname>) admin >..(local) admin >cd PnfsManager
Check the output of the “info” command repeatedly:
(PnfsManager) admin > info
...
Threads (4) Queue
[0] 10
[1] 12
[2] 9
[3] 13
...and wait till the value for all four queues is zero. Then go to the next pool and repeat the process.
| Copyright dCache.org © 2003 - 2008 |