Centos6.2上做nginx和tomcat的集成及负载均衡(已实践)
Centos6.2上做nginx和tomcat的集成及负载均衡
---------------------------------------------------------Jdk-------------------------------------------------------------------
1:centos上安装jdk6
Jdk:
jdk-6u34-linux-i586.bin
安装命令:
./jdk-1_5_0_06-linux-i586.bin
配置环境变量如下:
用vi打开/etc/profile在文件尾部添加如下内容
|
测试:
通过java –version命令测试是否会出现相关java信息,有则安装成功.如下
---------------------------------------------------------Jdk-------------------------------------------------------------------
---------------------------------------------------------Nginx----------------------------------------------------------------
2:安装nginx
Nginx:
下载: http://nginx.org/en/download.html
安装命令:
Step 1: rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
Step 2: yum install nginx
会显示一大堆信息,问你ok不ok啊:Is this ok [y/N]:
输入y,屏幕滚了一会之后就安装完毕,最后提示“Complete!”就是安完了。
软件说明:
1 配置所在目录:/etc/nginx/
2 PID目录:/var/run/nginx.pid
3 错误日志:/var/log/nginx/error.log
Nginx常用命令:
1 启动:nginx
2 重启:killall -HUP nginx
3 测试配置:nginx –t
测试:
用命令”nginx”起动服务,在浏览器中输入”127.0.0.1”如果出现欢迎信息说明安装成功
---------------------------------------------------------Nginx----------------------------------------------------------------
---------------------------------------------------------Tomcat--------------------------------------------------------------
3:安装tomcat
Tomcat:
apache-tomcat-6.0.35.tar.gz
安装命令:
tar xvzf apache-tomcat-6.0.35.tar.gz (解压到了当前目录)
mv tomcat(源) /usr/local/tomcat(目) ---移到目标目录
常用命令:
起动:bin/startup.sh
关闭:bin/shutdown.sh
测试:
127.0.0.1:8080是否出现tomcat信息页面
---------------------------------------------------------Tomcat--------------------------------------------------------------
---------------------------------------------------------整合-----------------------------------------------------------------
4:整合nginx和tomcat
在/etc/nginx/nginx.conf中添加如下内容 http {}中 添加
upstream www.imeixi.cn {
server 127.0.0.1:8080 weight=1;#转向tomcat
}
在 /etc/nginx/conf.d/default.conf 中修改
server {
listen 80;
server_name localhost; // 也可以是www.imeixi.cn
location / {
root html;
index index.jsp index.html index.htm;
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;
proxy_pass http://www.mygogo.com; //这句是指转发(将nginx作为反向代理配置)
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
添加之后需要重启nginx生效
|
测试:
在tomcat中加入一个简单web应用(一个html页面就ok),分别访问127.0.0.1/yourweb(nginx—图1)和127.0.0.1:8080/yourweb(tomcat 图2)是否会出现相同的页面,有则成功
图1
图2
---------------------------------------------------------整合-----------------------------------------------------------------
---------------------------------------------------------负载均衡----------------------------------------------------------
5:负载均衡
1、 架构图:
2、安装第二个tomcat:
由于是在同一台机子上安装两个tomcat,所以要做相应的修改,如下
1:从第一个tomcat生成新的tomcat
|
2:在/etc/profile文件尾部添加如下内容 【可省略】
|
3:在tomcat2/bin/catalina.sh文件顶部添加如下内容 【可省略】
|
更改profile后,使用 #source /etc/profile 使新配置的环境变量生效
4:修改tomcat2/conf/server.xml文件
修改三个监听端口
<Server port="8005" shutdown="SHUTDOWN">改成<Server port="9005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />改成<Connector port="9080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />改成<Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />
5:在两个tomcat下发布相同的web应用并且起动两个tomcat
|
3、配置nginx
在/etc/nginx/nginx.conf中添加如下内容 http {}中 添加
upstream www.imeixi.cn {
server 127.0.0.1:8080 weight=1; //server localhost:8080 weight=1(权重)
server 127.0.0.1:9080 weight=1; //server localhost:9080 weight=5
}
在 /etc/nginx/conf.d/default.conf 中不做改动。
server {
listen 80;
server_name www.imeixi.cn;
location / {
root html;
index index.jsp index.html index.htm;
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;
proxy_pass http://www.mygogo.com;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
添加之后需要重启nginx生效
|
4、测试:
访问www.imeixi.cn 将以轮寻的方式访问两个tomcat
---------------------------------------------------------负载均衡----------------------------------------------------------