LVS负载均衡群集概念的一些详细解答

发布时间:2020-04-15 16:20:59 作者:三月
来源:亿速云 阅读:178

亿速云负载均衡(Cloud Load Balancer)是对多台云服务器进行流量分发的服务。亿速云负载均衡可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。亿速云负载均衡服务通过设置虚拟服务地址(VIP),将位于同一地域的多台云服务器资源虚拟成一个高性能、高可用的应用服务池。根据应用指定的方式,将来自客户端的网络请求分发到云服务器池中。亿速云负载均衡服务会检查云服务器池中云服务器实例的健康状态,自动隔离异常状态的实例,从而解决了云服务器的单点问题,同时提高了应用的整体服务能力。今天亿速云给大家介绍下LVS负载均衡群集概念的一些详细解答

LVS负载均衡群集概念的一些详细解答

在各种互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求越来越高,单台云服务器将难以承担所有的访问。除了使用价格昂贵的大型机、专用负载分流设备以外,企业中还有另外一种选择来解决难题,就是构建群集服务器——通过整个多台相对廉价的普通服务器,以同一个地址提供相同的服务。

在Linux系统中,有一种非常常用的群集技术——LVS(Linux Virtual Server,Linux虚拟服务器)。

博文大纲:
一、群集技术概述;
二、LVS虚拟服务器详解;
三、NFS共享存储服务详解;

LVS群集应用基础

群集:表示一群、一串的意思,用在服务器领域则表示大量服务器的集合体,以区分于单个服务器。

一、群集技术概述

根据实际企业环境的不同,群集所提供的功能也各不相同,采用的技术细节也可能各有千秋。然而从整体上来看,需要先了解一些关于群集的共性特征,这样才能在构建和维护群集的工作中做到心中有数,避免操作上的盲目性。

1.群集的类型

无论是哪种群集,都至少包括两台节点服务器,而对外表现为一个整体,只提供一个访问入口(域名或IP地址),相当于一台大型计算机。

根据群集所针对的目标差异,可分为以下三种类型:

不同类型的群集在必要的时候可以合并,如高可用的负载均衡群集。

2.负载均衡的分层结构

在典型负载均衡群集中,包括三个层次的组件,前端至少有一个负载调度器负责相应并分发来自客户机的访问请求;后端由大量真实服务器构成服务器池,提供实际的应用服务,整个群集的伸缩性通过增加、删除服务器节点来完成,而这些过程对客户机是透明的,为了保持服务的一致性,所有节点使用共享存储设备。如图:
LVS负载均衡群集概念的一些详细解答

图中各层的详细介绍:

3.负载均衡的工作模式

关于群集的负载调度技术,可以基于IP、端口、内容等进行分发,其中基于IP的负载调度是效率最高的。

基于IP的负载均衡模式中,常见的有:

地址转换:简称NAT模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,及作为客户机的访问入口。服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式。如图:
LVS负载均衡群集概念的一些详细解答
NAT模式的实现步骤可以参考博文:LVS负载均衡群集之构建NAT模式,可跟做!!!
IP隧道:简称TUN模式,采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器。服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信。如图:
LVS负载均衡群集概念的一些详细解答
直接路由:简称DR模式,采用半开放式的网络结构,与TUN模式的结构相似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络。负责调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道。如图:
LVS负载均衡群集概念的一些详细解答
DR模式的实现步骤可参考博文:LVS负载均衡群集之构建DR模式,可跟做!!!
以上三种工作模式中,NAT方式只需要一个公网IP地址,从而成为最易用的一种负载均衡模式,安全性也比较好,许多硬件负载均衡设备就采用这种方式,相比较而言,DR模式和TUN模式的负载能力更加强大,使用范围更广,但节点的安全性要稍差一些。

二、LVS虚拟服务器详解

Linux Virtual Server是针对Linux内核开发的一个负载均衡的项目,其官方网站是http://www.linuxvirtualserver.org/ 。LVS实际上相当于基于IP地址的虚拟化应用,为基于IP地址和内容请求分发的负载均衡提出了一种高效的解决方法。

LVS现在已成为Linux内核的一部分,默认编译为ip_vs模块,必要时能够自动调用。在Centos 7系统中,手动加载ip_vs模块,可以执行以下命令:

 [root@localhost ~]# modprobe ip_vs                                    //加载IP_vs模块
[root@localhost ~]# cat /proc/net/ip_vs                                 //查看IP_vs版本信息
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn
1.LVS的负载调度算法

针对不同的网络服务和配置需要,LVS调度器提供了多种不同的负载调度算法,其中最常用的几种算法:

2.使用ipvsadm管理工具

ipvsadm是在负载调度器上使用的LVS群集管理工具,通过调用ip_vs模块来添加、删除服务器节点,以及查看群集的运行状态。

在CentOS 7系统默认没有安装,需要自行安装!

[root@localhost ~]# yum -y install ipvsadm
[root@localhost ~]# ipvsadm -v
ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)

ipvsadm命令的操作方法:

[root@localhost ~]# ipvsadm -A -t 192.168.1.254:80 -s rr
//群集的VIP地址是192.168.1.254,针对TCP的80端口提供负载分流服务,使用的调度算法是轮询。

命令中各选项的含义:

[root@localhost ~]# ipvsadm -a -t 192.168.1.254:80 -r 192.168.1.100 -m -w 1
//为虚拟服务器添加一个IP为192.168.1.254的真实服务器

命令中各选项(及相关选项)的含义:

[root@localhost ~]# ipvsadm -ln
//查看群集节点状态
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.1.254:80 rr
  -> 192.168.1.100:80             Masq    1      0          0   
    //Forward列对应的是Masq(地址伪装),表示采用的群集模式为NAT;
    ActiveConn列:当前连接数;
    InActConn列:正在活动的连接数;
[root@localhost ~]# ipvsadm -d -r 192.168.1.100:80 -t 192.168.1.254:80
//从群集中删除192.168.1.100的节点(-d表示删除)
[root@localhost ~]# ipvsadm -D -t 192.168.1.254:80
//删除192.168.1.254这个VIP(也就意味这个群集就没了)
[root@localhost ~]# ipvsadm-save
//查看设置的策略
[root@localhost ~]# ipvsadm-save > 123.txt
//保存策略到指定文件
[root@localhost ~]# cat 123.txt
-A -t 192.168.1.254:http -s rr
-a -t 192.168.1.254:http -r 192.168.1.100:http -m -w 1
//确认保存文件内容
[root@localhost ~]# ipvsadm -C
//清空所有策略
[root@localhost ~]# ipvsadm-restore < 123.txt
//从指定文件导入策略
三、NFS共享存储服务详解

NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源,对于绝大多数的负载均衡群集来说,使用NFS协议来共享数据存储是非常常见的做法。

1.使用NFS发布共享资源

NFS服务的实现依赖与RPC机制,已完成远程到本地的映射过程。需要安装一下两个软件包才能提供NFS共享服务。

[root@localhost ~]# yum -y install nfs-utils
//用于NFS共享发布和访问
[root@localhost ~]# yum -y install rpcbind
//用于RPC支持
2.设置共享目录
[root@localhost ~]# mkdir /a
[root@localhost ~]# touch /a/123.txt
//创建目录、文件用于测试
[root@localhost ~]# vim /etc/exports
//填写以下内容(NFS服务的配置文件为/etc/exports)
/a      192.168.1.0(rw,sync,no_root_squash)
或者
[root@localhost ~]# vim /etc/exports
//填写以下内容(NFS服务的配置文件为/etc/exports)
/a      192.168.1.1(rw,sync,no_root_squash) 192.168.1.10(ro,sync)

配置文件中

[root@localhost ~]# systemctl start nfs
[root@localhost ~]# systemctl start rpcbind
//启动nfs服务、rpcbind服务
[root@localhost ~]# showmount -e
//查看本机发布的共享目录
Export list for localhost.localdomain:
/a 192.168.1.10,192.168.1.1
3.客户机访问测试
[root@localhost ~]# showmount -e 192.168.1.2
//查询NFS服务的发布情况
Export list for 192.168.1.2:
/a 192.168.1.10,192.168.1.1
[root@localhost ~]# mount 192.168.1.2:/a /b
[root@localhost ~]# ls /b
123.txt
//挂载到本地,并查看内容
//如果开启同步权限,有任何变化,NFS服务器和客户端会立马更新内容
4.客户机实现自动挂载
[root@localhost ~]# vim /etc/fstab
               ………………                     //省略部分内容,填写以下内容
192.168.1.2:/a          /b                      nfs     defaults,_netdev        0 0
//_netdev  建议添加次参数,表示需要网络支持;如果想在网络终端的情况下放弃挂载,添加一下参数(soft、intr)实现软挂载


如果大家还有什么地方需要了解的可以在亿速云官网找我们的专业技术工程师的,亿速云技术工程师在行业内拥有十几年的经验了,所以会比小编回答的更加详细专业。亿速云官网链接www.yisu.com

推荐阅读:
  1. LVS负载均衡群集(理论)
  2. LVS负载均衡群集实战详细介绍

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

lvs负载均衡群集

上一篇:zabbix   监控平台搭建过程中的报错与解决方法总结

下一篇:LVS负载均衡群集的含义、分类及工作模式等的解答

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》