背景:
机器1 192.168.100.231, os: CentOS release 3.6 (Final),装上apache2.3.6+mongrel cluster
机器2 192.168.100.234, os: CentOS release 4.3 (Final) 装上 mongrel cluster
1)安装和配置mongrel_cluster
gem install mongrel_cluster
cd #{your_rails_app_root}
mongrel_rails cluster::configure -e production -p 4000 -N 4 -c #{your_rails_app_root} -a 127.0.0.1
上面命令在#{your_rails_app_root}/config产生如下配置文件mongrel_cluster.yml
内容如下:

cwd: #...{your_rails_app_root}
log_file: log/mongrel.log
port: "4000"
environment: production
address: 127.0.0.1
pid_file: tmp/pids/mongrel.pid
servers: 4
上面已经安装和配置好mongrel_cluster,开始启动和停止试试
启动:
mongrel_rails cluster::start结果:
starting port 4000
starting port 4001
starting port 4002
starting port 4003停止
mongrel_rails cluster::stop结果:
stopping port 4000
stopping port 4001
stopping port 4002
stopping port 4003
注意
上面的 配置过程并没有为mongrel_cluster产生特别的用户和组,如果你已非root身份登陆可能是需要的
2)安装apache2.2.6
cd /usr/local
wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.6.tar.gz
tar xvzf httpd-2.2.6.tar.gz
cd httpd-2.2.6
./configure --prefix=/usr/local/apache2.2.6
--enable-proxy=shared
--enable-proxy_http=shared
--enable-proxy-balancer=shared
make && make install
由于apache2.2.6的配置文件中已经引入了
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so所以你无需在配置文件加入这些
你的加上如下部分
<Proxy balancer://spacecluster>
# cluster members
BalancerMember http://127.0.0.1:4000
BalancerMember http://127.0.0.1:4001
BalancerMember http://127.0.0.1:4002
BalancerMember http://127.0.0.1:4003
BalancerMember http://192.168.100.234:4000
BalancerMember http://192.168.100.234:4001
BalancerMember http://192.168.100.234:4002
BalancerMember http://192.168.100.234:4003
</Proxy>
ExtendedStatus On
<Location /server-status>
SetHandler server-status
</Location>
<Location /balancer-manager>
SetHandler balancer-manager
</Location>
<VirtualHost *:80>
ServerName space.mofile.com
ProxyRequests Off
ProxyPass /balancer-manager !
ProxyPass /server-status !
ProxyPass / balancer://spacecluster/
ProxyPassReverse / balancer://spacecluster/
</VirtualHost>到此你的 apache+mongrel cluster就安装配置好了,你可以用浏览器访问apache看看是否生效了
本文介绍如何使用Mongrel_cluster在两台CentOS服务器上部署Rails应用,并通过Apache进行负载均衡。主要内容包括Mongrel_cluster的安装配置、启动停止操作及Apache配置。
216

被折叠的 条评论
为什么被折叠?



