文档章节

NGINX源码安装+nginx_upstream_jvm_route

仁江
 仁江
发布于 2017/04/06 17:17
字数 678
阅读 63
收藏 1

1、准备安装包

  • nginx-1.4.7.tar.gz
  • nginx_upstream_jvm_route

nginx扩展包,使得nginx能根据客户端的cookie实现粘性转发,保证同一客户端的请求转发到相同的tomcat,解决session问题。由于安装此模板对nginx版本有一定要求,所以请务必按照文档所写的版本进行安装。基于各个服务器的差异,下面的安装步骤可能会有所差异,但是原理是一样的,请安装人员在安装过程中,按照实际提示进行安装。

  • 把这两个包都放到安装目录中,解压nginx-1.4.7.tar.gz
#tar zxvf nginx-1.4.7.tar.gz

输入图片说明

2、编译安装nginx 如果之前有用yum在服务器上安装了nginx,请先卸载

# yum remove nginx

进入nginx安装包解压之后的目录

# cd /dhsq/nginx-1.4.7

安装nginx_upstream_jvm_route模块补丁

# patch -p0 < /dhsq/nginx_upstream_jvm_route/jvm_route.patch

显示如下信息表示补丁安装成功。 输入图片说明

然后我们对源码进行编译

./configure --with-http_stub_status_module --with-http_ssl_module --add-module=/dhsq/nginx_upstream_jvm_route/

输入图片说明

提示我们还没有安装PCRE库,使用yum安装

# yum install pcre
# pcre-devel

安装之后再次编译 编译还是不通过,提示缺少OpenSSL库 输入图片说明

使用yum安装

# yum install openssl
# yum install openssl-devel

安装之后再次编译,编译成功

输入图片说明

注意红色地方的路径为nginx安装的相关路径,当然你也可以在编译的时候指定安装的路径,这里我们使用默认的安装路径。 然后进行安装

# make

输入图片说明

# make install

输入图片说明

我们来到nginx的目录

# cd /usr/local/nginx/

可以看到各文件已经有了。

输入图片说明

启动nginx。由于源码安装没有把nginx安装成服务,我们不能使用service nginx start这些命令。

# /usr/local/nginx/sbin/nginx

启动之后我们可以在浏览器输入服务器的ip地址 看到如下界面,说明nginx安装成功。 输入图片说明

3、基于nginx_upstream_jvm_route模块粘性session负载均衡配置

worker_processes  4;
worker_rlimit_nofile 4096;
worker_connections  4096;
upstream www.mytest.com{
        #ip_hash;
        server 127.0.0.1:8080 srun_id=tomcat1;
        server 127.0.0.1:9090 srun_id=tomcat2;
        jvm_route $cookie_JSESSIONID|sessionid reverse;
}
location / {
            proxy_pass http://www.mytest.com;
            root   html;
            index  index.html index.htm;
 }

输入图片说明

还需要修改tomcat的server.xml配置文件

# vi /dhsq/apache-tomcat-app-t2/conf/server.xml
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">

在后面增加jvmRoute标签,内容即为在nginx中的名字。注意在集群的tomcat中名字唯一。 输入图片说明

最后重启tomcat和nginx

# /www/apache-tomcat-app-t1/bin/shutdown.sh
# /www/apache-tomcat-app-t1/bin/startup.sh

Nginx的重启方法

# ps -ef|grep nginx

查询nginx的进程,然后使用kill杀掉进程,然后再重新启动即可。

# /usr/local/nginx/sbin/nginx

这时候再在浏览器中输入ip地址可以看到请求被转发到tomcat中了

输入图片说明

© 著作权归作者所有

共有 人打赏支持
仁江
粉丝 8
博文 12
码字总数 7176
作品 0
广州
程序员
Nginx+Weblogic集群及session共享复制(生产案例)

生产环境: 系统: Redhat6.6.x8664 负载反向代理工具: Nginx-1.8.1 Session工具: nginx-upstream-jvm-route-0.2.tar.gz nginx-upstream-jvm-route下载地址:https://code.google.com/arc......

linuxzkq
06/26
0
0
linux环境下通过nginx实现tomcat集群

linux环境下通过nginx实现tomcat集群 安装nginx之前需要pcre依赖和jvm-remote补丁 一、准备如下软件: 1、nginx-1.1.2.tar.gz,负载均衡/反向代理服务器,可通过http://nginx.org/en/downloa...

城邑耕夫
2011/09/21
0
4
NGINX + TOMCAT7 + MEMCACHED 实现SESSION 共享

TOMCAT7.0+ NGINX + MEMCACHED + memcached-session-manager 实现SESSION共享 http://blog.csdn.net/nerissa/article/details/18961361 ; //参考博客 http://pan.baidu.com/s/1pJlZ0mB //相关......

it_i_it
2014/06/23
0
16
nginx1.4+tocat7 负载均衡(在一台机器上按两个tomcat)

实践环境: 系统版本:CentOS6.4 X8664 Nginx版本:Nginx-1.4.5 Tomcat版本:Tomcat-7.0 虚拟机10.10.54.61 ############################ 源码编译nginx1.4.5 1.下载 [root@gyf soft]#wget......

浮云飘飘
2014/03/13
0
0
Centos6.2上做nginx和tomcat的集成及负载均衡

--------------------------------------------------------Jdk------------------------------------------------------------------- 1:centos上安装jdk6 Jdk: jdk-6u34-linux-i586.bin 安......

罗荣熙
2012/10/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

day96-20180923-英语流利阅读-待学习

英国王子也不看好人工智能,理由却和霍金不同 Daniel 2018-09-23 1.今日导读 2016 年 3 月 9 日至 15 日,世界围棋冠军李世石与谷歌研发的计算机围棋程序 AlphaGo 进行人机大战并以 1 比 4 ...

飞鱼说编程
5分钟前
0
0
今天在码云遇到一个很有意思的人 for Per.js

今天在码云遇到一个很有意思的人,他在我的Per.js项目下面评论了一句,大意为“你试试这句代码,看看速度到底是你快还是Vue快”【当然,这个评论被我手残不小心删掉了...】。 然后我就试了,...

Skyogo
10分钟前
3
0
Java -------- 首字母相关排序总结

Java 字符串数组首字母排序 字符串数组按首字母排序:(区分大小写) String[] strings = new String[]{"ba","aa","CC","Ba","DD","ee","dd"}; Arrays.sort(strings); for (int i ...

切切歆语
12分钟前
0
0
还在用 Git 的 -f 参数强推仓库,你这是在作死!

最近,美国一个程序员因为同事不写注释,代码不规范,最严重的是天天使用 git push -f 参数强行覆盖仓库,该程序员忍无可忍向四名同事开抢,其中一人情况危急!!! 不写注释、代码不规范是一...

红薯
25分钟前
200
0
NPM报错终极大法

所有的错误基本上都跟node的版本相关 直接删除系统中的node 重新安装 sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*} 重新安装 $ n lts$ npm...

lilugirl
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部