Centos+nginx+tomcat 集群

前端之家收集整理的这篇文章主要介绍了Centos+nginx+tomcat 集群前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

用来记录centos6.7+Nginx1.8.1+tomcat7集群 环境的搭建.

1.安装centos6.7

2.安装Nginx1.8.1

3.安装jdk7

4.安装tomcat7

5.Nginx+单个tomcat

6.Nginx+2个tomcat集群


1.安装centos6.7

这个略过了.找个iso文件,装到vm就OK

安装后,切换到root用户sudo su - root


解决这个问题步骤如下

1) 输入su root,回车,会让输入密码,输入当前用户密码

2)visudo 找到 root ALL=(ALL) ALL 这行,加入当前用户


3):wq 保存并退出.

4)现在使用 sudo su - root 可以正常使用了.


2.安装Nginx1.8.1

1) 下载安装包 http://Nginx.org/en/download.html

2)创建一个文件夹,并解压刚才下载的包

 tar zxvf Nginx-1.8.1.tar.gz


3) 进行配置

cd /mnt/Nginx-1.8.1 
./configure

报错,一些包找不到


4) 安装上面缺少的包

yum -y install pcre-devel
yum -y install openssl-devel

完成后,再./configure,虽然还有些包没找到,不过貌似不影响了


5)编译,安装

make
make install

6)测试是否安装成功

cd /usr/local/Nginx/sbin
./Nginx -t


7) 启动,访问测试

./Nginx

打开浏览器,访问http://localhost:80,如果不是本机换成ip访问.


8) 其他命令

pkill -9 Nginx <span style="white-space:pre">		</span>停止
./Nginx -s reload    <span style="white-space:pre">	</span>重启(也是在/usr/local/Nginx/sbin目录下)


3.安装jdk7

1)下载,官网找了下没找到,我用以前下载的包了

2) 将包放到 data目录下,解压

tar -zxvf jdk1.7.0_67.tar
3) 设置环境变量

vim /etc/profile

然后在文件最后插入

#set java environment
export JAVA_HOME=/data/jdk1.7.0_67
export JRE_HOME=/data/jdk1.7.0_67/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

4) 重新加载配置文件,测试

source /etc/profile
java -version




4.安装tomcat7

1) 下载安装包

2) 将包放到 data目录下,直接解压

tar zvxf apache-tomcat-7.0.56.tar.gz

3)启动tomcat

sh /data/apache-tomcat-7.0.56/bin/startup.sh

如果提示

Neither the JAVA_HOME nor the JRE_HOME environment variable is defined,则可能是环境变量未生效

因为我是开了2个命令行,一个装jdk,一个装tomcat,就出现了这个提示

执行

echo $JAVA_HOME
echo $JRE_HOME

打印环境变量,发下jdk可以,tomcat不行,说明是命令行加载环境变量的问题,重新打开新的命令行即可

或者按网上的修改tomcat的配置文件,写上环境变量

4)测试

http://localhost:8080/




5.Nginx+单个tomcat

1) 首先新建个web项目,项目名称test,在WebContent目录下新建一个t.html,然后把项目放到tomcat下面,启动,进行访问

<span style="font-size:14px;"><!DOCTYPE html>
<html>
<head>
<Meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	这是tomcat1
</body>
</html></span>

访问 http://localhost:8080/test/t.html,成功,如下图.



2) 将tomcat和Nginx关联起来,其实就是访问Nginx,然后Nginx再转发给tomcat.

这就要修改Nginx配置文件.(注意不是Nginx安装目录下的配置文件)

vim /usr/local/Nginx/conf/Nginx.conf

在下图中标红的地方加上标红的话

proxy_pass http://localhost:8080;


3)重启Nginx,访问 http://localhost/test/t.html (注意这里端口是默认80),成功显示,如下图:



6.Nginx+2个tomcat集群

1) 首先把tomcat停掉,然后复制一份出来,改个名字,做区分,目录分别是tomcat1,tomcat2

2) 将tomcat2下面的 t.html内容修改一下,改为tomcat2

3)修改tomcat2占用的端口为7080;(8005,8009端口也要修改)

4) 修改ngnix的配置文件,用来做指向2个tomcat,如下图


增加upstream 节点,将2个tomcat包进去.下面的 proxy_pass 指向 upstream节点,所以2处名称要保持一致.

Nginx负载均衡有好几种方式,常见的是轮询和ip_hash,默认的是轮询.所以我们在upstream中没有指定,就用默认的.

    upstream local_tomcat {  
	server localhost:8080;  
	server localhost:7080;
    }  

    proxy_pass http://local_tomcat;

5) 启动2个tomcat,分别访问

http://localhost:8080/test/t.html

http://localhost:7080/test/t.html

页面显示对应的tomcat名称.

6)重启Nginx,访问http://localhost/test/t.html

多次刷新页面,发现tomcat1和tomcat2 字样轮流显示,OK. 集群成功!

7)可以测试停掉tomcat1,或者tomcat2,Nginx还能正常访问,这样就可以部署的时候不影响用户访问了.

原文链接:https://www.f2er.com/centos/381717.html

猜你在找的CentOS相关文章