1) 安装nginx
包含两个组件包:nginx、nginx-sticky-module
下载地址
http://limto.cn/download/nginx/nginx-1.4.2.tar.gz
http://limto.cn/download/nginx/nginx-sticky-module-1.1.tar.gz
1.部署nginx-sticky-module
2.解压
#tar zxvf nginx-sticky-module-1.1.tar.gz
2) 安装nginx
3.解压
#tar zxvf nginx-1.4.2.tar.gz
4.编译
#./configure –add-module=/root/nginx-sticky-module-1.1 –without-http_rewrite_module
#./make
#./make install
5.配置
6.nginx.conf
Nginx的核心配置文件为:nginx.conf,文件位置:/usr/local/nginx/conf/nginx.conf,修改内容如下:
主要注意点:这三个地方是需要添加在nginx.conf里面的
l worker_rlimit_nofile
l include vhosts/local_upstream.conf
l include vhosts/server.conf
worker_processes 10;#工作线程信息
error_log logs/error.log;#错误日志输出信息
worker_rlimit_nofile 30000;#工作线程最大值
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
include vhosts/local_upstream.conf;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
include vhosts/server.conf;
}
}
#接下来这两个文件需要建立个vhosts文件夹,然后在里面创建这两个文件
7.Server.conf
该文件存放url与模块之间的关系,如下所示,配置了/dcms模块对应的反向代理地址
location /web{
proxy_pass http://web;
proxy_set_header Host $host;
}
location /taobao{
proxy_pass http://taobao;
proxy_set_header Host $host;
}
location标签:指定现有模块,如果有多个模块可以通过重复添加location标签实现,在location中包含多个proxy_pass标签:指定反向代理地址,格式为:http://${模块名},其中${模块名}与后续配置local_upstream.conf中的upstream属性一致,见:local_upstream.conf配置文件
8.local_upstream.conf
该文件中存放模块与IP地址的关系,如果门户模块部署在多台服务器上,可以添加多条server属性
upstream web {
sticky;
server 127.0.0.1;
server 127.0.0.2;
}
upstream taobao {
sticky;
server 127.0.0.1;
server 127.0.0.2;
}
…
upstream标签用于设置集群属性,内部包含多个server属性,每一个server属性对应一个集群服务的IP地址。在内部的sticky标签必须增加,表示请求分发策略为基于cookie的会话粘连。
3) 启动nginx
#/user/local/nginx/sbin/nginx
通过上述命令启动
9.重新加载nginx配置信息
#/user/local/nginx/sbin/nginx –s reload
10.nginx命令查看
#/user/local/nginx/sbin/nginx –h
Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]
Options:
-?,-h : this help
-v : show version and exit
-V : show version and configure options then exit
-t : test configuration and exit
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload
-p prefix : set prefix path (default: /usr/local/nginx/)
-c filename : set configuration file (default: conf/nginx.conf)
-g directives : set global directives out of configuration file
4) SocketIo配置
SocketIo集群的配置,需要安装nginx-sticky-module,见部署nginx-sticky-module章节。
1.1.1.1 配置转发
Nginx的配置文件为:/usr/local/nginx/conf/nginx.conf
| upstream socket-servers { sticky; server 192.168.56.101:20000; //dms中socketIO的ip和端口 server 192.168.56.103:20000; // dms中socketIO的ip和端口 } location / { try_files $uri @socket; add_header "Access-Control-Allow-Origin" "*"; } location @socket { proxy_pass http://socket-servers; 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; } |
|
|
红色部分为需要修改的dms集群配置项,这一部分是需要一些socket接口时,添加这些代码,如果没有socket接口,就不需要这些代码了
(注意: proxy_pass http://socket-servers; 此处socket-servers后面不能带/,即不能带PATH,否则nginx启动会报错)
3352

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



