nginx 配置多tomcat 操作 centos(负载均衡)

最近想要扩展下后端技术知识 所以打算深入了解下nginx 并自己搭建一下感受一下。
希望大家也是一样 ,自己动手试一遍 会有不同的体会。下面进入正题吧!
相信想要实际操作ngnix的 都应该有所了解它的基本知识。
我这里紧紧解决关于负载均衡 为了解决并发和前后端分离的实操。
前期准备:
centos 7.0(服务器)
nginx-1.8.0.tar.gz(nginx安装包)
apache-tomcat-8.5.41.tar(tomcat安装包)
fillzila(文件传输工具)

安装包稍后放在百度云 需要其他版本的自己下载

链接:https://pan.baidu.com/s/1UPs4D-6bwzl1_jORni2-7Q 密码:rha9

1.将nginx-1.8.0.tar.gz通过fillzila上传至centos服务器 并解压

tar ­zxvf nginx-1.8.0.tar.gz 

在这里插入图片描述
2.安装nginx的依赖库

yum install pcre
yum install pcre­devel yum install zlib
yum install zlib­devel yum install openssl

3.进入解压后的目录进行配置(默认配置也可以)

cd nginx-1.8.0

./configure \
­­prefix=/usr/local/nginx \ ­­pid­path=/var/run/nginx/nginx.pid \ ­­lock­path=/var/lock/nginx.lock \ ­­error­log­path=/var/log/nginx/error.log \ ­­http­log­path=/var/log/nginx/access.log \ ­­with­http_gzip_static_module \ ­­http­client­body­temp­path=/var/temp/nginx/client \ ­­http­proxy­temp­path=/var/temp/nginx/proxy \ ­­http­fastcgi­temp­path=/var/temp/nginx/fastcgi \ ­­http­uwsgi­temp­path=/var/temp/nginx/uwsgi \ ­­http­scgi­temp­path=/var/temp/nginx/scgi \ ­­add­module=/usr/local/fastdfs­   ­module/src

4.安装并编译

make && make install

5.启动ngnix

cd /usr/local/nginx/sbin
./nginx

此处有可能报错:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
原因是 你本地80端口被占用,解决方式有两种
1.查看本地占用80端口的进程并杀死(个人不建议)
2.修改配置文件改端口

cd /usr/local/nginx/conf
vim nginx.conf

将端口改成其他端口 我这里改成了90端口
nginx 配置多tomcat 操作 centos(负载均衡)_第1张图片

修改好后从新编译

make && make install

6.编译成功后测试访问 http://ip:90界面如下安装成功
nginx 配置多tomcat 操作 centos(负载均衡)_第2张图片
**

接下来配置tomcat

**

1.将tomcat上传至服务器并解压 操作如下

 tar -xvf apache-tomcat-8.5.41.tar 

2.tomcat解压后的文件重命名 操作如下

mv apache-tomcat-8.5.41 tomcat1
mv apache-tomcat-8.5.41 tomcat2

3.分别对两个tomcat的 server.xml进行端口修改

cd tomcat1/conf/
vim server.xml

作如下修改

"1.0" encoding="UTF-8"?>

<!-- 1 默认8005改成8007 -->
"8006" shutdown="SHUTDOWN">
    <!-- 2 Http默认8080 改成9082 -->
    "9081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
     <!-- 3 AJP默认8009 改成8011 -->         
    "8011" protocol="AJP/1.3" redirectPort="8443" />        

接下来修改tomcat2的server.xml

cd tomcat2/conf/
vim server.xml

作如下修改

"1.0" encoding="UTF-8"?>

<!-- 1 默认8005改成8007 -->
"8007" shutdown="SHUTDOWN">
    <!-- 2 Http默认8080 改成9082 -->
    "9082" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
     <!-- 3 AJP默认8009 改成8011 -->         
    "8011" protocol="AJP/1.3" redirectPort="8443" />        

4.进入相应tomcat目录并运行

# 进入tomcat目录 
cd /相对路径/tomcat1
# 运行tomcat
/bin/startup.sh

5.浏览器访问对应http://ip:9081。 http://ip:9082测试 是否tomcat启动成功
6.配置nginx.conf

cd /usr/local/nginx/conf
vim nginx.conf
# 按下面进行增加和编辑,完成后 :wq 保存。不会使用 vi/ vim。你应该上网搜搜。

http {
    # 省略代码....
   
    # 增加  upstream, 名称为 serverlist
    upstream serverlist{
        server localhost:9081 weight=1;  # weigh表示权重,越大访问的机率越多
        server localhost:9082 weight=1;
        server localhost:9083 weight=1;
    }
    
    # 编辑
    server {
        listen       80;
        server_name  www.yourdomian.com;

        location / {
            # 这里使用定义 serverlist
            proxy_pass http://serverlist;
        }
       

7.重启nginx现在就可以通过你的域名进行访问了。多次刷新就可以看到网站显示是哪个tomcat的内容。

你可能感兴趣的:(nginx,nginx,centos,负载均衡)