LVS 负载均衡部署 NAT模式

一、环境准备

配置环境:

复制代码
负载调度器:配置双网卡 内网:172.168.1.11(ens33)  外网卡:12.0.0.1(ens37)

二台WEB服务器集群池:172.168.1.12、172.168.1.13    

一台NFS共享服务器:172.168.1.14

客户端:

关闭防火墙和selinux

复制代码
[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]#setenforce 0

二、部署共享存储(NFS服务器:172.168.1.14)

1. 启动 nfs 服务

复制代码
yum install nfs-utils rpcbind -y
#安装nfs服务

systemctl start nfs

2. 新建目录,并创建站点文件

复制代码
[root@localhost opt]#mkdir /opt/test1 /opt/test2
[root@localhost opt]#echo 'this is test1!' > /opt/test1/index.html
[root@localhost opt]#echo 'this is test2!' > /opt/test2/index.html

3. 设置共享策略

复制代码
[root@localhost opt]#vim /etc/exports

/opt/test1 *
/opt/test2 *

[root@localhost ~]#exportfs -rv
#发布服务

三、部署节点服务器(172.168.1.12、172.168.1.13)

复制代码
[root@localhost ~]#rpm -qa |grep nfs
[root@localhost ~]#showmount -e 172.168.1.14
#查看nfs服务

1. 节点服务器1(172.168.1.12)

1.1 安装 httpd 服务

复制代码
[root@localhost ~]# yum install httpd -y
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# 

1.2 挂载站点

复制代码
mount 172.168.1.14:/opt/test1 /var/www/html

1.3 测试

2. 节点服务器2(172.168.1.13)

2.1 安装 httpd 服务

复制代码
[root@localhost ~]# yum install httpd -y
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# 

2.2 挂载站点

复制代码
mount 172.168.1.14:/opt/test2 /var/www/html

2.3 测试

四、调度服务器

1. 添加一块网卡

2. 配置新网卡

复制代码
[root@localhost ~]#cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]#cp ifcfg-ens33 ifcfg-ens36
[root@localhost network-scripts]#vim ifcfg-ens36
复制代码
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens36
DEVICE=ens36
ONBOOT=yes
IPADDR=12.0.0.1
NETMASK=255.255.255.0
GATEWAY=12.0.0.1
DNS1=8.8.8.8
DNS2=114.114.114.114

3. 配置 ens33 网卡

复制代码
vim ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=e6eab2a6-16f2-4b63-b5ba-f08de4938357
DEVICE=ens33
ONBOOT=yes
IPADDR=172.168.1.11
NETMASK=255.255.255.0
GATEWAY=172.168.1.11
DNS1=8.8.8.8
DNS2=114.114.114.114
复制代码
[root@localhost network-scripts]#systemctl restart network
[root@localhost network-scripts]#ip a

4. 打开路由转发功能

复制代码
[root@localhost network-scripts]#vim /etc/sysctl.conf
#打开路由转发功能
net.ipv4.ip_forward = 1 
[root@localhost network-scripts]#sysctl -p
net.ipv4.ip_forward = 1

5. 安装 ipvsadm

5.1 网络源安装

复制代码
yum install ipvsadm* -y

5.2 本地yum仓库安装

复制代码
[root@localhost network-scripts]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *.repo bak/
[root@localhost yum.repos.d]# vim local.repo
 
 
[local]
name=local
baseurl=file:///mnt
gpgcheck=0
复制代码
[root@localhost yum.repos.d]# mount /dev/sr0 /mnt/    #挂载
[root@localhost yum.repos.d]# yum clean all    #清缓存
[root@localhost yum.repos.d]# yum makecache    #建立元信息
[root@localhost yum.repos.d]# yum install ipvsadm.x86_64 -y    #安装

6. 开启 ipvsadm 软件

复制代码
[root@localhost yum.repos.d]# ipvsadm-save >/etc/sysconfig/ipvsadm
#保存配置文件
[root@localhost yum.repos.d]# systemctl start ipvsadm.service

7. 配置负载调度器 ipvsadm

复制代码
[root@localhost yum.repos.d]# ipvsadm -C
#清空策略
[root@localhost yum.repos.d]# ipvsadm -A -t 12.0.0.1:80 -s rr
#指定IP地址 外网的入口  -s rr  轮询
[root@localhost yum.repos.d]# ipvsadm -a -t 12.0.0.1:80 -r 172.168.1.12:80 -m
#先指定虚拟服务器再添加真实服务器地址,-r:真实服务器地址 -m指定nat模式
[root@localhost yum.repos.d]# ipvsadm -a -t 12.0.0.1:80 -r 172.168.1.13:80 -m
#

[root@localhost yum.repos.d]# ipvsadm -ln
#查看策略
[root@localhost yum.repos.d]# ipvsadm
#启动

​​​​​​​

8. 测试

此时还有问题,需要修改一下网卡配置

复制代码
[root@localhost network-scripts]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost network-scripts]# systemctl restart network
[root@localhost network-scripts]# route -n
相关推荐
云飞云共享云桌面3 小时前
传统工作站 vs 云飞云共享云桌面:制造业设计云桌面选型深度对比
运维·服务器·前端·网络·3d·架构·制造
森G5 小时前
61、信号与槽机制在 TCP 编程中的应用---------网络编程
网络·c++·qt·网络协议·tcp/ip
楠目6 小时前
Nginx 解析漏洞利用总结
nginx·网络安全
Maynor9966 小时前
我用 Codex 给自己的网站上线了一个智能体客服:从 Dify 到服务器部署,全程实战复盘
运维·服务器
java_cj6 小时前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
swordbob7 小时前
NIO 的 Channel 里有多个 BIO 吗?
linux·网络·nio
天天讯通7 小时前
OKCC 呼叫中心安全性能全解析:技术防护与管理措施指南
大数据·开发语言·网络·人工智能·安全·语音识别
深圳恒讯7 小时前
越南服务器BGP多线和单线有什么区别?
运维·服务器
志栋智能8 小时前
超自动化运维如何提升安全合规水平?
运维·安全·自动化
A_humble_scholar8 小时前
Linux(九) 进程管理完全指南:从入门到实战
linux·运维·chrome