Task #10463 (closed)
Opened 11 years ago
Closed 8 years ago
Suggestions for OMERO.server upgrade instructions
Reported by: | crueden-x | Owned by: | |
---|---|---|---|
Priority: | critical | Milestone: | Unscheduled |
Component: | Documentation | Version: | 4.4.9 |
Keywords: | n.a. | Cc: | jamoore, sbesson, bpindelski |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | n.a. |
Sprint: | n.a. |
Description
I recently upgraded the LOCI OMERO to 4.4.6 from 4.3.4. It went very smoothly, and looks great! The suggestions documented in this ticket are extremely minor nitpicks which might improve the server upgrade page, or may be off-base. They certainly don't imply any confusion or displeasure from me—just ideas.
Perform a database backup
Perhaps we should ship a script to do it, rather than have that big scary pg_dump command. I already had such a command in my ~omero/bin folder, called backupOmeroSql.sh, which I think I got from Josh or the web site long ago:
#!/bin/bash DATE=`date '+%Y-%m-%d_%H:%M:%S-%Z'` OUTPUT_DIRECTORY=/OMERO/backup/database DATABASE="omero" DATABASE_ADMIN="omero" mkdir -p $OUTPUT_DIRECTORY chown -R $DATABASE_ADMIN $OUTPUT_DIRECTORY su $DATABASE_ADMIN -c "pg_dump -Fc -f $OUTPUT_DIRECTORY/$DATABASE.$DATE.pg_dump"
As you can see, it does essentially the same thing, except it puts the backup in /OMERO/backup/database, which is nice. And it time stamps it.
Of course, everyone's credentials are different, but those could be arguments to the script, with omero as defaults.
Copy new binaries
This isn't really specific to that section, but the fact that it mentions stopping the OMERO server reminds me: it would be nice to have an easy way to add an OMERO service to /etc/init.d (assuming Ubuntu Linux or similar). I currently have the following script in /etc/init.d/omero:
#!/bin/sh # # /etc/init.d/omero # case "$1" in start) echo "Starting omero" su omero -c "/home/omero/omero/bin/omero admin start" su omero -c "/home/omero/omero/bin/omero web start" ;; stop) echo "Stopping omero" su omero -c "/home/omero/omero/bin/omero admin stop" su omero -c "/home/omero/omero/bin/omero web stop" ;; restart|force-reload) echo "Restarting omero" su omero -c "/home/omero/omero/bin/omero admin restart" su omero -c "/home/omero/omero/bin/omero web start" ;; status) echo "Getting omero status" su omero -c "/home/omero/omero/bin/omero admin status" su omero -c "/home/omero/omero/bin/omero web status" ;; *) echo "Usage: /etc/init.d/omero {start|stop|restart|force-reload|status}" exit 1 ;; esac exit 0
Probably this script is wrong/naive/problematic so would be nice if there were an official OMERO solution rather than each sysadmin hacking their own.
Anyway, then you could document sudo service omero stop or whatnot as appropriate in this section.
Also, rather than renaming the old OMERO folder, my personal preference is to have a fixed folder called "omero" that is symlinked to the current version. Then I don't have to update any init scripts, Apache stanzas, or whatever, each time I upgrade (unless I would otherwise need to do so). If the instructions did things that way, it might simplify some of the sections, since certain things would still "just work".
Run the upgrade script
Would be cool if you could bin/omero upgrade instead of needing to call psql directly. In theory the script could check which version of the DB is there, and make the appropriate system call, though again, I am naive so perhaps this is too much work to justify spending the time?
Optimise an upgraded database (optional)
Similarly, bin/omero optimise would rule. And that one would be easier to implement, I'd guess.
Merge script changes
If bin/omero upgrade started to exist, it could warn if users had any such conflicts between script versions...
Environment variables
This section could probably go away if using the symlink approach I mentioned above, right?
Changes to OMERO.web URLs
For configuring the Apache stanza, I was previously pasting it directly into /etc/apache2/sites-available/default, which was getting pretty unwieldy (the stanza has grown a lot). So now instead I created ~omero/apache.conf generated from bin/omero (thanks for that, it's a life-saver!), and just added it to /etc/sites-available/default via an Include now. Much cleaner. However, that lends itself to the possibility of easing the installation even further somehow. bin/omero fix-my-apache? But again, perhaps there are too many cases there.
Restart your database
Again, I would love to be able to sudo service omero start without worry, including OMERO.web.
Restore a database backup
Similar to the "Perform a database backup" section, would be nice to have a simpler script for this.
Change History (9)
comment:1 Changed 11 years ago by jmoore
- Cc jmoore sbesson bpindelski added
- Milestone changed from Unscheduled to OMERO-4.5
- Priority changed from minor to major
- Sprint set to Bugs Fixing
comment:2 Changed 11 years ago by jburel
- Sprint changed from Bugs Fixing to 2013-04-09 (7))
comment:3 Changed 11 years ago by jburel
- Sprint changed from 2013-04-09 (7)) to 2013-05-07 (8)
Moved from sprint 2013-04-09 (7))
comment:4 Changed 11 years ago by jburel
- Milestone changed from OMERO-4.4.x to OMERO-4.4.9
- Sprint changed from 2013-05-07 (8) to Blocker 4.4.9 (1)
Moved from sprint 2013-05-07 (8)
comment:5 Changed 10 years ago by jamoore
- Milestone changed from OMERO-4.4.x to 5.0.0
- Priority changed from major to critical
- Version set to 4.4.9
comment:6 Changed 10 years ago by hflynn
- Owner hflynn deleted
This is really rather more than a docs task, maybe @bpindelski could take it on when he is back next week?
comment:7 Changed 10 years ago by hflynn
Referencing ticket #11788 has changed sprint.
comment:8 Changed 8 years ago by jamoore
- Milestone changed from 5.x to Unscheduled
comment:9 Changed 8 years ago by jamoore
- Resolution set to duplicate
- Status changed from new to closed
Moving to devx card: https://trello.com/c/cqK38SMm/554-server-upgrade-improvement
Moved from sprint Bugs Fixing