LVS负载均衡 -- NAT模式
  pNDzPQcMbnhQ 2023年11月02日 63 0

负载均衡 -- LVS (NAT)

0、实验拓扑

image-20221108190609191.png

1、环境主备

主机名 IP 服务
LVS 外网:192.168.100.138 内网:10.0.0.11 ipvsadm工具
real-server-nginx-1 管理:192.168.100.139 内网:10.0.0.31 nginx
real-server-nginx-2 管理:192.168.100.140 内网:10.0.0.32 nginx

ps:可以使用vmware中的vmnet(虚拟交换机)实现网段隔离

2、lvs的配置

  1. 修改主机名

  2. 关闭防火墙和selinux

  3. 安装ipvsadm

    yum install -y ipvsadm
    
    ps: ipvsadm使用内核模块net_fileter
    
  4. 配置iptables规则

    iptables -t nat -F 
    iptables -t nat -X 
    
    
    ps:不需要执行一下命令ipvs会帮助转发的 
    iptables -t nat -A POSTROUTING -s 172.17.0.0/24 -o eth0 -j MASQUERADE
    
  5. 配置lvs规则

    ipvsadm -A -t 192.168.100.199:80 -s rr
    ipvsadm -a -t 192.168.100.199:80 -r 172.17.0.31:80 -m
    ipvsadm -a -t 192.168.100.199:80 -r 172.17.0.32:80 -m
    
    ipvsadm -Ln		查看配置的规则
    
    

3、real-server的配置

  1. 修改主机名

  2. 关闭防火墙和selinux

  3. 安装nginx

    配置nignx的源
    cat /etc/yum.repos.d/nginx.repo
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    
    安装nginx
    yum install -y nginx
    
    修改nginx的主页,方便查看负载均衡的效果
    
    启动nginx
    systemctl enable nginx --now
    查看nginx的端口
    netstat -lntup 
    
  4. 添加一条默认路由

    route add -net 0.0.0.0 gw 172.17.0.11
    
    [root@real-server-nginx-1 ~]# route -n
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         10.0.0.11     0.0.0.0         UG    0      0        0 eth1
    10.0.0.0      0.0.0.0         255.255.255.0   U     103    0        0 eth1
    

4、访问测试

通过主机的浏览器访问LVS的IP地址,请求会被代理带后端的两台real-server

image-20221108190252376.png

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  bifOjSxj34Bv   2023年12月07日   36   0   0 nginxDockerdockernginx
pNDzPQcMbnhQ