博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
高可用服务安全访问配置(负载均衡服务)
阅读量:2337 次
发布时间:2019-05-10

本文共 848 字,大约阅读时间需要 2 分钟。

为了安全,nginx只监听高可用(keepalived)的VIP地址,不允许通过负载均衡的外网地址进行网站的访问.

LB: 10.0.0.5  10.0.0.6

VIP : 10.0.0.3   10.0.0.4

 

修改nginx负载均衡文件

    upstream web {
       server 10.0.0.7:80;
       server 10.0.0.8:80;
       server 10.0.0.9:80;
    }
    server {
        listen       10.0.0.3:80;
        server_name  www.aaa.com;
        location / {
           proxy_pass http://web;
           proxy_set_header Host $host;
           proxy_set_header X-Forwarded-For $remote_addr;
           proxy_next_upstream error timeout http_404 http_502 http_403;
        }
    }
    server {
        listen       10.0.0.4:80;
        server_name  bbs.aaa.com;
        location / {
           proxy_pass http://web;
           proxy_set_header Host $host;
           proxy_set_header X-Forwarded-For $remote_addr;
        }
    }

 

注:这样配置后会存在一个问题,前面keepalived上是主主模式,会有两个VIP,每一台负载均衡上面只有一个VIP,另一个VIP不存在的问题,这造成了启动Nginx报错的问题,监听网卡上没有的地址

解决: 需要修改内核信息

echo 'net.ipv4.ip_nonlocal_bind = 1' >>/etc/sysctl.conf

sysctl -p 

 

重启nginx

systemctl restart nginx

注:nginx配置文件只要涉及到ip地址的改变,reload重新加载时不会生效的

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://qhepb.baihongyu.com/

你可能感兴趣的文章
Angular 2+中的ngShow和ngHide等效于什么?
查看>>
HTML“no-js”类的目的是什么?
查看>>
如何将Java String转换为byte []?
查看>>
@Transactional注释在哪里?
查看>>
找不到Gradle DSL方法:'runProguard'
查看>>
AngularJS ngClass条件
查看>>
连字符分隔的大小写是什么? [关闭]
查看>>
为什么Java中没有SortedList?
查看>>
在Go中表示枚举的惯用方法是什么?
查看>>
如何在本地运行travis-ci
查看>>
模板中关键字“ typename”和“ class”的区别?
查看>>
在React中显示或隐藏元素
查看>>
暂存已删除的文件
查看>>
为什么需要在脚本文件的开头加上#!/ bin / bash?
查看>>
ReactJS-每次调用“ setState”时都会调用渲染吗?
查看>>
如何在Ubuntu上安装Boost
查看>>
如何在变更事件中使用广播?
查看>>
如何解决错误:使用nodejs时监听EADDRINUSE?
查看>>
如何检查批处理文件中是否存在文件[重复]
查看>>
抛出异常的Java 8 Lambda函数?
查看>>