Difference between revisions of "RucioUpdateToNewVersion"
From GridPP Wiki
(→Instructions To Update Rucio) |
(→Update the database -> takes roughly an hour) |
||
(7 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
== Instructions To Update Rucio == | == Instructions To Update Rucio == | ||
− | ===Pre-steps=== | + | === Pre-steps === |
+ | |||
+ | # Get snapshots for VMs | ||
+ | * Edit /etc/sysconfig/network-scripts/ifcfg-eth0 commenting out HWADDR | ||
+ | * Take snapshots | ||
+ | |||
# Using the daily backup of DB02 move this to DB03 and apply the database | # Using the daily backup of DB02 move this to DB03 and apply the database | ||
− | + | * Find the latest backup | |
− | + | grep Transferred /var/log/atlasbackup/atlasbackup.log | tail -1 | |
− | + | * Retrieve the backup | |
− | + | [root@ruciodb02 ~]# tape -r csfserv <BackUpNumber> <location for backup>/tape.<BackUpNumber> | |
− | + | * Move the backup to DB03 using SCP if backup not availale | |
− | + | [root@ruciodb02 ~]# scp -i <Path/To/PrivateKey> /mnt/backfs/ruciodb02_db_backup_202108241613 root@ruciodb03.gridpp.rl.ac.uk:/var/lib/pgsql | |
− | + | * Move the tape backup to DB03 | |
− | + | [root@ruciodb02 ~]# scp -i <Path/To/PrivateKey> <<location for backup>/tape.<BackUpNumber> root@ruciodb03.gridpp.rl.ac.uk:/var/lib/pgsql | |
− | ### | + | * Unpack the tape backup |
+ | [root@ruciodb03 ~]# tar xf tape.<BackUpNumber> | ||
+ | * Find the database name on DB03 | ||
+ | [root@ruciodb03 ~]# su postgres | ||
+ | bash-4.2$ psql | ||
+ | postgres-# \c | ||
+ | You are now connected to database "<DB_Name>" as user "postgres". | ||
+ | postgres-# \q | ||
+ | bash-4.2$ | ||
+ | * Drop the current database | ||
+ | bash-4.2$ dropdb <DB_Name> | ||
+ | * Create a new databse and apply backup | ||
+ | bash-4.2$ createdb -T template0 <DB_Name> | ||
+ | psql -v -d <DB_Name> -f <Path/To/Backup>/ruciodb02_<ID> | ||
+ | This process will take some time (between 40-60 mins) | ||
+ | |||
+ | === Upgrade Steps === | ||
+ | |||
+ | ==== Update the database -> takes roughly an hour ==== | ||
+ | |||
+ | * Connect alembic and rucio.cfg to database | ||
+ | cd /opt/rucio | ||
+ | vi alembic.ini | ||
+ | Edit the path to the database | ||
+ | cd etc | ||
+ | vi rucio.cfg | ||
+ | Edit database default to the database | ||
+ | |||
+ | * Run alembic for a few upgrades | ||
+ | cd /opt/rucio | ||
+ | alembic upgrade c0937668555f | ||
+ | alembic upgrade 8ea9122275b1 | ||
+ | * Attempt upgrade to d23d23453595260 | ||
+ | alembic upgrade d23453595260 | ||
+ | * If this failed find instructions | ||
+ | alembic upgrade d23453595260 --sql | ||
+ | * Run each instruction manually on the database from the database server | ||
+ | * Upgrade to head | ||
+ | alembic upgrade head |
Latest revision as of 12:32, 8 September 2021
Contents
Instructions To Update Rucio
Pre-steps
- Get snapshots for VMs
- Edit /etc/sysconfig/network-scripts/ifcfg-eth0 commenting out HWADDR
- Take snapshots
- Using the daily backup of DB02 move this to DB03 and apply the database
- Find the latest backup
grep Transferred /var/log/atlasbackup/atlasbackup.log | tail -1
- Retrieve the backup
[root@ruciodb02 ~]# tape -r csfserv <BackUpNumber> <location for backup>/tape.<BackUpNumber>
- Move the backup to DB03 using SCP if backup not availale
[root@ruciodb02 ~]# scp -i <Path/To/PrivateKey> /mnt/backfs/ruciodb02_db_backup_202108241613 root@ruciodb03.gridpp.rl.ac.uk:/var/lib/pgsql
- Move the tape backup to DB03
[root@ruciodb02 ~]# scp -i <Path/To/PrivateKey> <<location for backup>/tape.<BackUpNumber> root@ruciodb03.gridpp.rl.ac.uk:/var/lib/pgsql
- Unpack the tape backup
[root@ruciodb03 ~]# tar xf tape.<BackUpNumber>
- Find the database name on DB03
[root@ruciodb03 ~]# su postgres bash-4.2$ psql postgres-# \c You are now connected to database "<DB_Name>" as user "postgres". postgres-# \q bash-4.2$
- Drop the current database
bash-4.2$ dropdb <DB_Name>
- Create a new databse and apply backup
bash-4.2$ createdb -T template0 <DB_Name> psql -v -d <DB_Name> -f <Path/To/Backup>/ruciodb02_<ID>
This process will take some time (between 40-60 mins)
Upgrade Steps
Update the database -> takes roughly an hour
- Connect alembic and rucio.cfg to database
cd /opt/rucio vi alembic.ini
Edit the path to the database
cd etc vi rucio.cfg
Edit database default to the database
- Run alembic for a few upgrades
cd /opt/rucio alembic upgrade c0937668555f alembic upgrade 8ea9122275b1
- Attempt upgrade to d23d23453595260
alembic upgrade d23453595260
- If this failed find instructions
alembic upgrade d23453595260 --sql
- Run each instruction manually on the database from the database server
- Upgrade to head
alembic upgrade head