I’m new to Ruby and Rails, but my team is interested in using Redmine for project management. So my question is as follows: How does one deploy Redmine to a load-balanced server (so really two servers) that doesn’t currently run and Ruby/rails apps? Would it be necessary to install ruby/rubygems/etc on both servers and proceed with the installation from there? Thx.
Share
If you are going to deploy any rails app, you’ll need to have ruby, rubygems, and probably phusion passenger or some other app server (thin, etc.), on both servers.
For redmine, you should consult the install docs:
http://www.redmine.org/projects/redmine/wiki/RedmineInstall
And the howto guides for install:
http://www.redmine.org/projects/redmine/wiki/HowTos
In general, when load balancing, the trick is the db, and you can use a number of tricks to replicate and load balance the db, as with any other rails app.
There seems to be one guide for that in the wiki, that leads to these (not terribly helpful) comments:
http://www.redmine.org/boards/1/topics/24727?r=24739#message-24739
http://www.redmine.org/boards/1/topics/16687
My own advice would be to set-up both servers as serving up the rails app, but have one be the active master db, and the other the passive slave, then set-up monitoring on the master and if it goes down, promote the slave to master. How to do this is a longer answer, and much code has been written in this direction. Look-up DRBD and Heartbeat for how to do this on linux for mysql.