mirror of
				https://github.com/puma/puma.git
				synced 2022-11-09 13:48:40 -05:00 
			
		
		
		
	git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@849 19e92222-5c0b-0410-8929-a290d50e31e9
		
			
				
	
	
		
			56 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
== Mongrel Cluster Plugin
 | 
						|
 | 
						|
Tool to help start/stop/restart multiple mongrel servers to use behind a load balancer like Apache 2.2 (mod_proxy_balancer), Lighttpd, Pound, Pen or Balance. This plugin adds an option to specify a number of Mongrel servers to launch, a range of ports, and a configuration file for the cluster. Use "-h" to see command syntax.
 | 
						|
 | 
						|
Configure cluster and write configuration file:
 | 
						|
  mongrel_rails cluster::configure  
 | 
						|
 | 
						|
Start cluster:
 | 
						|
  mongrel_rails cluster::start
 | 
						|
 | 
						|
Restart cluster:
 | 
						|
  mongrel_rails cluster::restart
 | 
						|
 | 
						|
Stop cluster:
 | 
						|
  mongrel_rails cluster::stop
 | 
						|
 | 
						|
== Capistrano Recipes
 | 
						|
 | 
						|
Add to config/deploy.rb:
 | 
						|
  require 'mongrel_cluster/recipes'
 | 
						|
 | 
						|
Variables:
 | 
						|
  mongrel_servers: Number of Mongrel servers to start.
 | 
						|
  mongrel_port: Starting port to bind to.
 | 
						|
  mongrel_address: Address to bind to.
 | 
						|
  mongrel_environment: Rails environment to run as.
 | 
						|
  mongrel_conf: Path to conf file. Defaults to /etc/mongrel_cluster/app_name.conf
 | 
						|
  mongrel_user: User to run mongrels in cluster as. Unset by default
 | 
						|
  mongrel_group: Group to run mongrels in cluster as. Unset by default.
 | 
						|
 | 
						|
On Capistrano 2 you get then get the following tasks:
 | 
						|
 | 
						|
  mongrel:cluster:configure Configure the cluster with variables.
 | 
						|
  mongrel:cluster:start: Start Mongrel processes on the app server.
 | 
						|
  mongrel:cluster:stop: Stop the Mongrel processes on the app server.
 | 
						|
  mongrel:cluster:restart: Restart the Mongrel processes on the app server by starting and stopping mongrel_cluster.
 | 
						|
  deploy:restart: Calls mongrel:cluster:restart to allow Mongrel to be used with the standard Capistrano deploy task.
 | 
						|
  deploy:start: Calls mongrel:cluster:start to allow Mongrel to be used with the standard Capistrano deploy task.
 | 
						|
  deploy:stop: Calls mongrel:cluster:stop to allow Mongrel to be used with the standard Capistrano deploy task.
 | 
						|
  
 | 
						|
On Capistrano 1 you get the same tasks, but without the namespace:  
 | 
						|
 | 
						|
  configure_mongrel_cluster: Configure the cluster with variables.
 | 
						|
  start_mongrel_cluster: Start Mongrel processes on the app server.
 | 
						|
  stop_mongrel_cluster: Stop the Mongrel processes on the app server.
 | 
						|
  restart_mongrel_cluster: Restart the Mongrel processes on the app server by starting and stopping mongrel_cluster.
 | 
						|
  restart: Calls restart_mongrel_cluster to allow Mongrel to be used with the standard Capistrano deploy task.
 | 
						|
  spinner: Calls start_mongrel_cluster to allow Mongrel to be used with the standard Capistrano cold_deploy task.
 | 
						|
 | 
						|
== Starting clusters at boot
 | 
						|
 | 
						|
1. Create mongrel_cluster conf directory (/etc/mongrel_cluster).
 | 
						|
2. Assign ownership to your Capistrano user.
 | 
						|
3. Copy the init.d script from this gem's resouces directory /etc/init.d.
 | 
						|
4. chmod +x /etc/init.d/mongrel_cluster
 | 
						|
5. Add to init.d startup. On RHEL/CentOS use: /sbin/chkconfig --level 345 mongrel_cluster on
 |