- 浏览: 610275 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
oldrat:
引用Special cases aren't special ...
武汉大学开源技术俱乐部 技术交流 第1期 -
yzsunlight:
试了试 ,不行
Android Studio SDK Manager无法正常下载如何设置 -
qianjigui:
更全面的文档:http://www.5wpc.info/it/ ...
Ruby正则表达式操作参考 -
qianjigui:
Anddy 写道Anddy 写道tag是自动创建的吗? 能手动 ...
vim的跳转 -
Anddy:
Anddy 写道tag是自动创建的吗? 能手动创建吗? 在sh ...
vim的跳转
Ubuntu8.04 nginx mongrel mongrel_cluster 架设集群服务器
搞了一天,终于弄完了,也稍懂了一些utuntu命令。
架设一台nginx+mongrel服务器,使用mongrel_cluster来配置集群。
得益于以下几篇文章。谢谢rushairer
及slicehost
http://articles.slicehost.com/2008/5/27/ubuntu-hardy-nginx-rails-and-mongrels
http://forum.ubuntu.org.cn/viewtopic.php?f=63&t=82685&p=479103&hilit=mongrel+nginx+%E6%9E%B6%E8%AE%BE#p479103
在我的配置中,试把集群的几台服务器架设在内网的win机器上,也能够跑起来,但效率怎么样就不知道了
再看看是否可以让这几个服务器共用一个mysql库就OK。
引用如下:
=======
在终端输入并运行
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup (备份当前的源列表,以便日後需要时恢复)
sudo gedit /etc/apt/sources.list (修改sources.list文件中源的列表)
我是选的北方网通的源,具体源内容 大家参照上面的帖子吧,人家写的很好,所以还是去捧场吧.
帖子中也提到deb http://archive.ubuntu.org.cn/ubuntu-cn/
feisty main restricted universe multiverse要加上.
我常识过弄更高级的3D桌面,换主题,结果好像少什么文件,启动不了,所以放弃了.华而不实的东西,暂时没兴趣考虑.
闲话少说,安装Ruby RubyGems Rails Mongrel
Nginx
.
这次Ubuntu7.10的源里都有了,所以用新立得安装就行了,Ruby要选上ruby1.8和ruby1.8-dev.
但是好像还缺东西,补充上sudo apt-get install libssl-dev(必须)
sudo apt-get install libzlib-ruby rdoc ri irb (我不记得新立得选ruby的话会不会安装这些了,写多了也没事,不会重复安装的)
下面再装mongrel_cluster来管理多个mongrel
服务
sudo gem install daemons gem_plugin mongrel
mongrel_cluster
记得选的版本里面是ruby编译的.如果报错就是ruby开发包少装了.
建立mogrel用户 sudo /usr/sbin/addusr mongrel
密码也mongrel
吧
用rails 建立个站点 比如在 /home/abendas/www/www.abendas.com
给站点目录加上刚才mongrel
用户的权限吧 sudo chown -R mongrel
:mongrel
/home/abendas/www.abendas.com/
然后设置站点mongrel
配置
cd /home/abendas/www/www.abendas.com
sudo mongrel_rails cluster::configure -e development -p 8000 -N 2 -c /home/abendas/www.abendas.com/ -a 127.0.0.1 --user
mongrel
--group mongrel
说明下 -e development 是rails的development模式,可以跟自己需要改其他模式.-p 8000 开始用的端口号 -N 2 是开的mongrel
进程数量(我
现在开了2个线程,每个都要用单独端口,向后排,那就是8000 和 8001端口分给它们俩使用了) -c /home/abendas/www.abendas.com/ 站点的路
径 -a 127.0.0.1 mongrel
服务所在的电脑的IP. --user mongrel
--group mongrel
注意是两个-,用户名和组,就是刚才我们建立的
mongrel
用户.
这时候在站点的config里面生成了一个mongrel_clueter.yml文件,可以看看里面是怎么写的,回头可以自己方便的改.
下面的工作就是把配置文件放到统一的一个地方来.
sudo mkdir /etc/mongrel_cluster
sudo ln -s /home/abendas/www/www.abendas.com/config/mongrel_cluster.yml /etc/mongrel_cluster/abendas.yml
意思就是从站点目录把yml文件链接到 /etc/mongrel_cluster/下 重新命名,可随意,我是命名为abendas.yml了.
下面,不同与7.04的地方出现了
要找mongrel_cluster,
sudo find / -name mongrel_cluster
结果在/var/lib/gems/1.8/gems/mongrel_cluster-1.0.2/resources/mongrel_cluster找到了,我记得是跟7.04不一样.
放到启动文件夹去.
cd /etc/init.d/
sudo cp /var/lib/gems/1.8/gems/mongrel_cluster-1.0.2/resources/mongrel_cluster mongrel_cluster
给它可执行的属性
sudo chmod +x /etc/init.d/mongrel_cluster
然后设为随机启动
sudo update-rc.d mongrel_cluster defaults
然后我们可以启动了吧?sudo /etc/init.d/mongrel_cluster start
没反应.....
2B的现象发生了........
我查看mongrel_cluster的代码,每个语句执行发现mongrel_cluster_ctl 找不到...
恍然大悟
sudo find / -name mongrel_cluster_ctl
在/var/lib/gems/1.8/bin/mongrel_cluster_ctl
那我们就
####################################################################
sudo ln -s /var/lib/gems/1.8/bin/mongrel_cluster_ctl /usr/bin/
####################################################################
再sudo /etc/init.d/mongrel_cluster 就ok了,这地方一开始不知道,重装了一次还是出错,所以我觉得是这个版本的mongrel_cluster安装默认
设置漏掉把它链接到/usr/bin/了吧.
如果米有给mongrel
帐号在站点目录的权限,或者站点目录在/var/www里,可能会报 mongrel8000.pid什么的错误,那是权限的问题.自行解决吧:)
刚才在新立得里就已经安装nginx
了,不错的很.
配置nginx
在/etc/nginx
/nginx
.conf
默认里面有句 include /etc/nginx
/sites-enabled/*;
那就去 /etc/nginx
/site-enabled里面找文件打开
我的配置如下
#后面的注释后来打的,不知道会不会影响,不行就去掉注释哈.
upstream abendas {
#命名为abendas了 再复制一份 改个名字就是另一个站点的mongrel
群,注意端口号.
server 127.0.0.1:8000;
server 127.0.0.1:8001;
}
server {
listen 80;
listen www.abendas.com:80;
server_name www.abendas.com;
#加上 server_name www.abendas.cn;
就是多域名指向同一个站点
access_log /var/log/nginx
/localhost.access.log;
location / {
root /home/abendas/www/www.abendas.com/public;
#rails站点目录的public目录
index index.html index.htm;
}
location / {
proxy_pass http://abendas;
#跟对应的mongrel
群名字要对上
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^.+\.
(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|mov)$ {
#以上后缀名的文件直接走nginx
不走mongrel
了
root /home/abendas/www/www.abendas.com/public;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/nginx
-default;
}
}
记得以后重启mongrel
和nginx
就在
sudo /etc/init.d/mongrel
start|restart|stop
sudo /etc/init.d/nginx
start|restart|stop
nginx
的设置里面 server {
listen 80;...
如果米有,就会开机启动不了nginx
,在nginx
的日志里说无法解析ip...
可想而知,nginx
的启动顺序比name等服务要靠前了...
sudo update-rc.d nginx
remove 删除nginx
自动启动
sudo update-rc.d nginx
start 99 1 2 3 4 5 6 .
#99是顺序,你可以看看其他启动项的顺序,然后把nginx
放后面就行了
发表评论
-
Android Studio SDK Manager无法正常下载如何设置
2014-06-02 10:29 5670一方面在/etc/hosts中设置: #Google主页 ... -
Ubuntu 10.04 企业 Cisco VPN 安装与配置使用
2013-12-31 23:36 789更全的版本见: http://www.5wpc.info/ ... -
用Markdown做文档的问题
2013-12-23 18:06 823一直有想一种语言能够解决文档编写问题。 一般文档编写 ... -
Android root 原理学习
2013-12-15 23:51 2279学习资源: http://www.zhihu.com/qu ... -
Android PREBUILT APPS 运行dex preopt
2013-12-09 13:57 0主体思路是模仿package的preopt处理,对buil ... -
Android 设置/system/bin/cmd的权限遇到的问题
2013-11-25 16:17 2006Android开发的过程中,需要添加一些系统服务,而这些服 ... -
模块网络访问分析
2013-12-27 11:29 849上述工作,可以通过: 人工了解 主要是沟通成本太高 ... -
Android系统启动过程整体视图
2013-11-25 11:07 710整体如上图:分为三个系统体系: uboot Li ... -
将设备的部分分区dump出来
2013-11-20 14:25 776基本命名: dd if=/dev/block/mmcblk ... -
Android Build系统bash filename too long问题
2013-11-06 10:45 1430在对Android Build系统进行修改的过程中,可能会在 ... -
VIM diff 模式使用
2013-11-04 11:24 788vimdiff mode: do -- Get chan ... -
Linux工作基本使用
2013-11-04 11:23 964Mount相关 sudo apt-get install ... -
Android 4.2 init: skipping insecure file '/init.rc' 问题
2013-11-01 13:13 3506一个比较完整的分析见:http://blog.csdn.ne ... -
fastboot mmc及sf,nand使用
2013-10-25 14:05 2395fastboot# mmc mmc - MMC sub ... -
OTT盒子 Hisi 通过网络进行image烧写方法总结
2013-10-25 13:40 2788整体结构如上图,通过网络进行烧写时,整体上是通过tftp ... -
Android 系统调试接口
2013-12-20 12:37 1405建议从理论学习: http://www.5wpc.in ... -
Android API兼容检查体系
2013-08-29 12:00 0系统工具 添加工具 代码对比、查看相关工具 -
global + Ruby
2012-11-16 13:07 1240http://simple-and-basic.com/200 ... -
Linux pthread线程同步相关的API学习
2012-11-12 18:43 1417原因 最近在深入理解Dalvik虚拟机的内部线程控制体系,其 ... -
MMTk代码学习(系统结构与流程)
2012-11-06 19:08 1605MMTk的整体结构和驱动模型主要由Plan, Collecto ...
相关推荐
ubuntu8.04默认的源ubuntu8.04默认的源ubuntu8.04默认的源ubuntu8.04默认的源ubuntu8.04默认的源ubuntu8.04默认的源ubuntu8.04默认的源ubuntu8.04默认的源
ubuntu8.04使用手册,ubuntu8.04使用手册ubuntu8.04使用手册,ubuntu8.04使用手册,ubuntu8.04使用手册,
ubuntu8.04优化指南 ubuntu8.04优化指南
Ubuntu8.04安装基础入门教程没叫你如何搞定安装Ubuntu8.04!
ubuntu 8.04 安装g++ ,在ubuntu 8.04 配置okl4时有用
Ubuntu 8.04_邮件服务器
用 Wubi 安装 Ubuntu 8.04 只需五步
ubuntu8.04速成手册。这个资源对与想学ubuntu的新手来说。绝对值得看
ubuntu 8.04使用手册
ubuntu8.04速成手册1.0.rar ubuntu8.04 ubuntu8安装与配置 ubuntu8.0.4实用手册
ubuntu8.04速成手册1.0(入门)
Ubuntu 8.04 Server版安装图解 很完整
一.系统初始化 二.输入法 三.系统美化 四.影视工具 五.文件浏览 六.系统管理 七.其他软件 八.虚拟 九.编程环境 十.KDE 十一.Ubuntu 出现的一些问题 十二.Ubuntu 使用技巧
该文章比较详细地讲述了如何在ubuntu8.04中安装中文输入法,特别对于初学ubuntu的来说,无疑是个好的参考资料。
Linux-----UBUNTU8.04离线升级包.ISO
ubuntu8.04中配置java+tomcat+eclipseMyEclipse开发环境(更新)
Ubuntu 8.04桌面版详细安装教程,图片文字版!
描述在ubuntu 8.04上安装samba的步骤及其设置方法
ubuntu8.04服务器配置优化,里面的软件包含Apache2,tomcat5.5,MySQL,LDAP和mod-jk等软件配置及优化,主要是针j2ee系统应用,后台为ubuntu系统或Linux系统的应用