设为首页 收藏本站
查看: 858|回复: 0

[经验分享] Linux服务器负载均衡LB Cluster的LVS(NAT,DR)

[复制链接]

尚未签到

发表于 2019-1-4 09:12:24 | 显示全部楼层 |阅读模式
  一 基础知识:
  1 群集种类:
  1.1 LB 负载均衡;解决大量的并发的连接请求;
  scale on(单机处理能力的增强)
  scale out
  1.2 HA 高可用性群集;应用于企业网中高可用性体系,提供时时的在线服务99.999%能够正常运行;
  1.3 HP 高性能群集;应用于大量的复杂的计算时使用;
  2 群集分发装置(director dispather):将请求分发到群集中的各个主机中
  2.1 从表现形式上划分:
  2.1.1 通过硬件实现(F5)
  2.1.2 通过软件(比如Linux中的2.4、2.6、ipvs[ipvsdm]-->lvs)
  2.2 从层次上划分:
  2.2.1 四层交换:协议  端口号【包括:F5、lvs】
  2.2.2 七层交换:squid  nginx
  3 为了实现LVS-DR模型需要解决相关问题:
  3.1 每个real server上都需要配置vip;vip配置在lookback接口上;
  3.2 解决多个相同vip导致的arp应答混乱;
  3.3 通过arp_arpannounce和arp_ignore来控制realserver的arp应答;
  3.4 解决realserver的应答报文的源地址,源地址应该为VIP;
  4 LVS三种模型:
  4.1 LVS-NAT模型:
  特点:VS-NAT 最易于配置 ; 可扩展性差 ;所有流量都要经过分发装置,容易形成瓶颈;
  数据包流向:CIP-DGW-VIP-RIP-DIP-DGW-CIP

  4.2 LVS-DR模型:直接路由模型;
  特点:能够处理比nat模型更过的节点;
  数据包流向:CIP-DGW-VIP-RIP-DGW-CIP
  Rip和dip需在同一个网络中;
  Realserver的网关不再是rip;

  4.3 LVS-TUN:隧道模型;
  特点:可以夸广播域,即不再同一局域网内;可扩展性好;仅修改请求进入IP;
  数据包流向:CIP-DGW-VIP-RIP-DGW-CIP

  5 ipvsadmin 常用命令:   
           ipvsadm -Ln           查看分发规测和分发情况   
           ipvsadm -Ln -c         查看连接状态   
           ipvsadm -L -n --rate    查看当前连接数   
           ipvsadm -L -n --stats    查看总连接数   
           ipvsadm -C            清空规则
  6 客户端的arp控制:
  6.1 详解arp_arpannounce:

  //将使用2  integer;
  6.2 详解arp_ignore:

  //将使用1  integer;
  二 案例一:实现基于LVS-NAT模型的服务器群集
  1 拓扑图:

  2 案例说明:
  实现基于LVS-NAT模型的服务器群集,采用轮训调度(RR);
  3 配置步骤:
  3.1 配置realserver1
  3.1.1 网络参数:

  3.1.2 重启网络服务:

  3.1.3 挂在光盘:

  3.1.4 安装realserver1的httpd服务:

  3.1.5 创建realserver1的测试页:

  3.1.6 启动httpd服务:

  3.2 配置realserver2
  3.2.1 网络参数:

  3.2.2 重启网络服务:

  3.2.3 挂在光盘:

  3.2.4 安装realserver1的httpd服务:

  3.2.5 创建realserver1的测试页:

  3.2.6 启动httpd服务:

  3.3 配置director群集服务器
  3.3.1 网络参数:


  3.3.2 重启网络服务:

  3.3.3 打开路由转发功能:



  3.3.4 挂在光盘:

  3.3.5 安装ipvs管理工具:

  3.3.6 执行一下命令产生ipvsadm规则文件:

  3.3.7 启动ipvsadm:

  3.3.8 添加ipvs规则:

  3.3.9 将ipvsadm规则写入ipvsadm文件中:

  3.4 测试:
  3.4.1 使用http访问192.168.10.100

  3.4.2 刷新后:

  三 案例二“实现基于LVS-DR模型的服务器群集
  1 拓扑图

  2 案例说明
  实现基于LVS-DR模型的服务器群集,采用轮训调度(RR);
  3 配置步骤
  3.1 配置realserver1
  3.1.1 在系统控制文件sysctl.conf中添加arp内核参数:



  3.1.2 在eth0网卡上配置RIP:

  3.1.3 在loopback接口上配置VIP:

  3.1.4 重启网络服务:

  3.1.5 添加路由:

  //为了实现使用vip来对访问进行应答,需要使从realserver1到任何地址的数据包从lo:0的接口使用vip发送;
  3.1.6 挂在光盘:

  3.1.7 安装realserver1的httpd服务:

  3.1.8 创建realserver1的测试页:

  3.1.9 启动httpd服务:

  3.2 配置realserver2
  3.2.1 在系统控制文件sysctl.conf中添加arp内核参数:



  3.2.2 在eth0网卡上配置RIP:

  3.2.3 在loopback接口上配置VIP:

  3.2.4 重启网络服务:

  3.2.5 添加路由:

  //为了实现使用vip来对访问进行应答,需要使从realserver1到任何地址的数据包从lo:0的接口使用vip发送;
  3.2.6 挂在光盘:

  3.2.7 安装realserver1的httpd服务:

  3.2.8 创建realserver1的测试页:

  3.2.9 启动httpd服务:

  3.3 配置director群集服务器
  3.3.1 配置director的RIP:

  3.3.2 配置director的VIP:

  3.3.3 重启网络服务:

  3.3.4 挂载光盘:

  3.3.5 安装ipvsadm服务:

  3.3.6 执行一下命令产生ipvsadm规则文件:

  3.3.7 启动ipvsadm:

  3.3.8 添加ipvs规则:

  3.3.9 将ipvsadm规则写入ipvsadm文件中:

  3.4 测试:
  3.4.1 使用http访问192.168.10.10

  3.4.2 刷新后:

四 案例三“实现基于LVS-DR模型的服务器群集,并实现基于NFS的简单存储“
1 拓扑图



2 案例说明
实现基于LVS-DR模型的服务器群集,采用轮训调度(RR);
Web服务器的页面文件从NFS网络文件系统中读取
3 配置步骤:基于案例2的群集模型,只是在web服务中加入了存储;
3.1 配置nfs服务器:
3.1.1 网络配置:
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
  1 # Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
  2 DEVICE=eth0
  3 BOOTPROTO=none
  4 ONBOOT=yes
  5 HWADDR=00:0c:29:58:6b:94
  6 NETMASK=255.255.255.0
  7 IPADDR=192.168.10.103
  8 TYPE=Ethernet
3.1.2 重启网络服务:
# service network restart
3.2 NFS服务是默认安装的,使用时直接启动即可;
3.2.1 启动nfs服务:
# service nfs start
3.2.2 创建一个共享文件和测试页面:
# mkdir /public
# echo 'from nfs server!' >/public/index.html
3.2.3 编写共享清单:
# vim /etc/exports
    1 /public 192.168.10.0/24(ro)
3.2.4 导出共享清单:
# exportfs -rv
exporting 192.168.10.0/24:/public
-r 导出;
-v 详细信息;
3.3 realserver1服务器上进行nfs客户端配置:
3.3.1 编辑自动挂载文件:
# vim /etc/auto.master
  9 /misc   /etc/auto.misc
10 /var/www /etc/auto.htmount --timeout
3.3.2 创建并编辑nfs共享文件挂载点的监控文件:
# cp -p /etc/auto.misc /etc/auto.htmount
# vim /etc/auto.htmount
18 html            -ro,soft,intr           192.168.10.103:/public
3.3.3 重启autofs服务:
# service autofs restart
3.3.4 重启httpd服务:
# service httpd restart
3.3.5 查看当前挂载情况:
[root@localhost ~]# mount
/dev/sda2 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/hdc on /mnt/cdrom type iso9660 (ro)
192.168.10.103:/public on /var/www/html type nfs (ro,timeout,soft,intr,addr=192.168.10.103)
//此时httpd的主配置文件成功挂载;
3.4 realserver2服务器上进行nfs客户端配置:
3.4.1 编辑自动挂载文件:
# vim /etc/auto.master
  9 /misc   /etc/auto.misc
10 /var/www /etc/auto.htmount --timeout
3.4.2 创建并编辑nfs共享文件挂载点的监控文件:
# cp -p /etc/auto.misc /etc/auto.htmount
# vim /etc/auto.htmount
18 html            -ro,soft,intr           192.168.10.103:/public
3.4.3 重启autofs服务:
# service autofs restart
3.4.4 重启httpd服务:
# service httpd restart
3.4.5 查看当前挂载情况:
[root@localhost ~]# mount
/dev/sda2 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda1 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/hdc on /mnt/cdrom type iso9660 (ro)
192.168.10.103:/public on /var/www/html type nfs (ro,timeout,soft,intr,addr=192.168.10.103)
3.5 测试:

  测试成功!!




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-659171-1-1.html 上篇帖子: LVS负载均衡之NAT&&DR 下篇帖子: CentOS下LVS DR模式详细搭建过程
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表