lvs-fullnat负载均衡

14 篇文章 1 订阅

NAT模式和FULLNAT模式对比
nat模式下报文变化
发送 接收
cip —> vip
cip —> rip ( DNAT )
rip —> cip
vip —> cip ( SNAT )

fullnat模式下报文变化
发送 接收
cip —> vip
lip —> rip ( SNAT + DNAT )
rip —> lip
vip —> cip ( SNAT + DNAT )
注释:
cip为客户端的地址
vip为虚拟地址
rip为真实的服务器
lip为本地地址
SNAT为来源地址转换
DNAT为目的地址转换

首先保证server1调度器端和真机可以进行数据的传输,当真机数据包过来之后到达的是server1的目的地址也就是VIP, 即就是cip —> vip。server1要到达后端server2和server3,网段也得一致,进行了lip —> rip,由于fullNAT 模式进行了两次SNAT+DNAT转换,数据包回来也是如此。

一、添加fullnat模式

  1. 涉及到内核的编译,首先更改虚拟机的内存大小
    在这里插入图片描述

  2. 在虚拟机server1上安装软件搭建服务,需要的软件包以及解决依赖性的包
    在这里插入图片描述安装源码包
    在这里插入图片描述

[root@server1 ~]# cd rpmbuild/
[root@server1 rpmbuild]# ls
SOURCES  SPECS
[root@server1 rpmbuild]# cd SPECS/
[root@server1 SPECS]# ls
kernel.spec
[root@server1 SPECS]# rpmbuild -bp kernel.spec

首先解决这些依赖性
在这里插入图片描述

[root@server1 SPECS]#  yum install redhat-rpm-config patchutils xmlto  asciidoc elfutils-libelf-devel binutils-devel newt-devel python-devel hmaccalc perl-ExtUtils-Embed -y

在这里插入图片描述

[root@server1 SPECS]# yum install -y gcc

在这里插入图片描述
再次尝试
在这里插入图片描述

安装自己下载的软件包解决剩下的依赖性问题

[root@server1 ~]# yum install -y asciidoc-8.4.5-4.1.el6.noarch.rpm slang-devel-2.2.1-1.el6.x86_64.rpm newt-devel-0.52.11-3.el6.x86_64.rpm

在这里插入图片描述

在这里插入图片描述
编译过程中会卡在这里,重新打开一个终端ssh连接到server1,

[root@server1 ~]# yum provides */rngd
Loaded plugins: product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel-source/filelists_db                                 | 3.8 MB     00:00     
rng-tools-2-13.el6_2.x86_64 : Random number generator related utilities
Repo        : rhel-source
Matched from:
Filename    : /etc/sysconfig/rngd
Filename    : /sbin/rngd
Filename    : /etc/rc.d/init.d/rngd
[root@server1 ~]# yum install -y rng-tools

在这里插入图片描述
取随机数,生成所需要的key

[root@server1 ~]# rngd -r /dev/urandom 
[root@server1 ~]# 

在这里插入图片描述
解压lvs-fullnat安装包,并安装补丁包,打补丁
在这里插入图片描述
在这里插入图片描述
打补丁

[root@server1 linux-2.6.32-220.23.1.el6.x86_64]# patch -p1 < lvs-2.6.32-220.23.1.el6.patch

添加版本型号
在这里插入图片描述
在这里插入图片描述

编译
这里因为是内核编译,所以第一步make花费的时间较长。

[root@server1 linux-2.6.32-220.23.1.el6.x86_64]# make 
[root@server1 linux-2.6.32-220.23.1.el6.x86_64]# make modules_install 
[root@server1 linux-2.6.32-220.23.1.el6.x86_64]# make install 

在这里插入图片描述
修改配置文件
在这里插入图片描述

[root@server1 grub]# vim grub.conf
## 更改default=0

在这里插入图片描述
重启虚拟机,检测是否编译成功
在这里插入图片描述
解压tool工具包,若安装过ipvsadm,要卸载掉ipvsadm
在这里插入图片描述
在这里插入图片描述
安装工具包中的ipvsadm和keepalived
在这里插入图片描述
源码安装三部曲
安装keepalived

[root@server1 keepalived]# ./configure --with-kernel-dir="/lib/modules/`uname -r`/build"

在这里插入图片描述
make
在这里插入图片描述
make install
在这里插入图片描述
安装ipvsadm
make
在这里插入图片描述
make install
在这里插入图片描述
查看:大小已经变成了2的22 次方
在这里插入图片描述

[root@server1 ipvsadm]# ipvsadm --help

支持fullnat模式
在这里插入图片描述

二、fullnat测试

  1. server上添加一块网卡,并设置ip
[root@server1 ipvsadm]# ip addr add 172.25.254.100/24 dev eth2

在这里插入图片描述
2) 添加策略
在这里插入图片描述
查看策略
在这里插入图片描述

server和server3作为后端服务器,打开apache,编写一个测试页即可
在这里插入图片描述
在这里插入图片描述
测试
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值