您现在的位置是:群英 > 服务器 > 系统运维
nginx如何实现负载均衡和反向代理?
Admin发表于 2023-05-15 17:37:46339 次浏览
这篇文章主要给大家介绍“nginx如何实现负载均衡和反向代理?”的相关知识,下文通过实际案例向大家展示操作过程,内容简单清晰,易于学习,有这方面学习需要的朋友可以参考了解一下,希望这篇“nginx如何实现负载均衡和反向代理?”文章对大家有所帮助。

1: 修改centos命令行启动(减少内存占用):

vim /etc/inittab     id:5:initdefault:  --> 修改5为3  
若要界面启动使用 startx

2:安装jdk

1)解压:jdk-7u55-linux-i586.tar.gz
       [root@localhost jdk]# tar -zxvf jdk-7u55-linux-i586.tar.gz 
2)复制:[root@localhost jdk]# cp -rf jdk1.7.0_55/ /usr/local/jdk
  授权:[root@localhost jdk]# cd /usr/local/jdk
       [root@localhost jdk]# chmod u+x jdk/
3)配置环境;[root@localhost bin]# vim /etc/profile
  最后面插入:export JAVA_HOME=/usr/local/jdk/jdk1.7.0_79
            export PATH=$JAVA_HOME/bin:$PATH
4)刷新配置文件:source /etc/profile

    验证:java   javac

3:安装tomcat

    1)解压:tar -zxvf
    2)授权:chmod u+x/usr/local/tomcats/tomcat1/apache-tomcat-7.0.47/bin
    3)启动:进入tomcat目录bin 目录后: ./startup.sh 
    4)开放端口:vim  /etc/sysconfig/iptables
    5)关闭防火墙:chkconfig iptables off
    6)重启防火墙: service iptables restart
    7)修改端口号:vim conf/server.xml
    8)查看进程:ps aux | grep tomcat

4:安装nginx

    1)安装环境:  
              yum -y install gcc-c++
              yum -y install pcre pcre-devel
              yum -y install zlib zlib-devel
              yum -y install openssl openssl-devel

    2)解压:tar -zxvf nginx-1.8.0.tar.gz 

    3)创建安装目录:[root@localhost local]# mkdir -p nginx
                  [root@localhost local]# cd nginx/
                  [root@localhost nginx]# pwd
                    /usr/local/nginx

    4)创建临时目录:var]# mkdir -p temp/nginx
    5)进入目录:cd nginx-1.8.0/  
    6)修改参数: 
            ./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 
    7)编译安装:
        make
        make install

    8)启动: cd /usr/local/nginx/sbin/
         ./nginx 
    9)查看进程:ps aux | grep nginx
    10)快速停止:./nginx -s stop
    11)完整停止:./nginx  -s quit  此方式停止步骤是待nginx进程处理任务完毕进行停止。推荐使用
    12)重启: ./nginx -s quit
            ./nginx  
    13)重新加载配置文件: ./nginx -s reload

5:配置虚拟主机:

    1、nginx支持的三种虚拟主机的配置:
            基于ip的虚拟主机
            基于域名的虚拟主机
            基于端口的虚拟主机

    2、nginx配置文件的结构: 每个service就是一个虚拟主机
......
            events{
                ......
            }

            http{
                .......
                server{
                    ......
                }

                server{
                    ......
                }
            }
    3、基于ip的虚拟主机配置:
        修改配置文件: vim /usr/local/nginx/nginx-1.8.0/conf/nginx.conf 
 server{ 
                listen 80;
                server_name 192.168.31.88;

                location / {
                    root html;
                    index index.html index.htm;
                }
            }
    4、基于域名的虚拟主机配置:
        修改配置文件:vim /usr/local/nginx/nginx-1.8.0/conf/nginx.conf
server{ 
                listen 80;
                server_name www.nginxdns1.com;

                location / {
                    root html_dns1;
                    index index.html index.htm;
                }
            }

            server{ 
                listen 80;
                server_name www.nginxdns2.com;

                location / {
                    root html_dns2;
                    index index.html index.htm;
                }
            }
    5、基于端口的虚拟主机配置:
        修改配置文件:vim /usr/local/nginx/nginx-1.8.0/conf/nginx.conf

        监听端口:netstat -an | grep 80
           server{ 
                listen 88;
                server_name 192.168.31.88;

                location / {
                    root html_port1;
                    index index.html index.htm;
                }
            }

            server{ 
                listen 89;
                server_name 192.168.31.88;

                location / {
                    root html_port2;
                    index index.html index.htm;
                }
            }

6、nginx 反向代理:

修改hosts:# nginx反向代理环境测试
            192.168.31.88 www.nginxproxy1.com
            192.168.31.88 www.nginxproxy2.com

开启不同虚拟机中的两台tomcat:192.168.31.88:8080 和 192.168.31.89:8081
修改配置文件:
            #代理tomcat1服务器 
            upstream  tomcat_server1{
                server  192.168.31.89:8081;
            }

            #代理tomcat2服务器
            upstream tomcat_server2{
                server 192.168.31.88:8080;
            }

            #配置虚拟主机:
            server{ 
                listen 80;
                server_name www.nginxproxy1.com;

                location / {
                    #root html_port1;

                    proxy_pass http://tomcat_server1;
                    index index.html index.htm;
                }
            }

            server{ 
                listen 80;
                server_name www.nginxproxy2.com;

                location / {
                    #root html_port2;
                    proxy_pass http://tomcat_server2;
                    index index.html index.htm;
                }
            }

7、nginx 负载均衡:

    修改hosts :# nginx负载均衡环境测试
                 192.168.31.88 www.nginxbalance.com

    开启不同虚拟机中的两台tomcat:192.168.31.88:8080 和 192.168.31.89:8081
    修改配置文件:
            #代理tomcat2服务器
            upstream tomcat_server_pool{
                server 192.168.31.88:8080 weight=1;
                server 192.168.31.89:8081 weight=1;
            }

            #配置虚拟主机:
            server{ 
                listen 80;
                server_name www.nginxbalance.com;

                location / {
                    #root html_port1;

                    proxy_pass http://tomcat_server_pool;
                    index index.html index.htm;
                }
            }

hosts文件配置:

1:nginx基于域名环境测试

192.168.31.88 www.nginxdns1.com  192.168.31.88 www.nginxdns2.com

2:nginx反向代理环境测试

192.168.31.88 www.nginxproxy1.com  192.168.31.88 www.nginxproxy2.com

3:nginx负载均衡环境测试

192.168.31.88 www.nginxbalance.com


以上就是关于nginx如何实现负载均衡和反向代理?的介绍,本文内容仅供参考,有需要的朋友可以借鉴了解看看,希望对大家学习或工作,想要了解更多欢迎关注群英网络,小编每天都会为大家更新不同的知识。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

相关信息推荐
2022-08-15 17:30:36 
摘要:linux中产生死锁的原因有:1、竞争不可抢占资源而引起死锁;2、竞争可消耗资源而引起死锁 ;3、进程推进顺序不当而引起死锁(进程运行过程中,请求和释放资源的顺序不当,而导致进程死锁)。
2023-05-05 16:50:05 
摘要:广东韶关国家数据中心集群第三批数据中心项目签约
2022-05-12 15:45:28 
摘要:在linux中,samba是一个基于SMB协议的开源软件,是一个能让Linux系统应用Microsoft网络通讯协议的软件。samba软件既可以用于windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享。
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部