怎么实现服务器的负载均衡
负载均衡有两种含义:第一种,单个负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高,也就是常说的集群(clustering)技术。第二种,大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间,这主要针对Web服务器、FTP服务器、企业关键应用服务器等网络应用。通常,负载均衡会根据网络的不同层次(网络七层)来划分。其中,第二层的负载均衡指将多条物理链路当作一条单一的聚合逻辑链路使用,这就是链路聚合(Trunking)技术,它不是一种独立的设备,而是交换机等网络设备的常用技术。现代负载均衡技术通常操作于网络的第四层或第七层,这是针对网络应用的负载均衡技术,它完全脱离于交换机、服务器而成为独立的技术设备。
服务器实现负载均衡有软件和硬件两种方式
软件负载均衡的方式是在一台或多台服务器相应的操作系统上安装一个或多个应用软件来实现负载均衡,如DNS Load Balance,CheckPoint Firewall-1 ConnectControl等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。缺点就是服务器上的软件本身就会消耗服务器系统不定量的资源,同时操作系统本身的原因,安全方面会有影响
硬件负载均衡的方法就是直接在服务器和外部网络间安装负载均衡设备,专由门的设备完成专门的任务,独立于操作系统,整体性能得到提高,加上多样化的负载均衡策略,智能化的流量管理,可达到负载均衡需求。
负载均衡具体有三种部署方式:路由模式、桥接模式、服务直接返回模式。
路由模式部署灵活,服务器的网关设置成负载均衡机的LAN口地址,且与WAN口分署不同的逻辑网络。因此所有返回的流量也都经过负载均衡。这种方式对网络的改动小,能均衡任何下行流量。
桥接模式配置简单,不改变现有网络。负载均衡的WAN口和LAN口分别连接上行设备和下行服务器。LAN口
不需要配置IP(WAN口与LAN口是桥连接),所有的服务器与负载均衡均在同一逻辑网络中。这种安装方式容错性差,网络架构缺乏弹性,对广播风暴及其他生成树协议循环相关联的错误敏感。
服务直接返回模式这种安装方式负载均衡的LAN口不使用,WAN口与服务器在同一个网络中,互联网的客户端访问负载均衡的虚IP(VIP),虚IP对应负载均衡机的WAN口,负载均衡根据策略将流量分发到服务器上,服务器直接响应客户端的请求。因此对于客户端而言,响应他的IP不是负载均衡机的虚IP(VIP),而是服务器自身的IP地址。也就是说返回的流量是不经过负载均衡的。因此这种方式适用大流量高带宽要求的服务。
我们可以通过DNS来实现负载均衡的功能。
Enable round robin 启用循环
为了减轻某台服务器的负载,我们可以在网络中安装多台服务器。例如,原来网络中只有一台X235 的WEB服务器,其主机名为wwwititgocom,IP地址为1921681100。为了减轻这台WEB服务器的负载,我们可以在网络中安装多台X235来提供WEB服务,并保证每台WEB服务器的内容都是一致的。如果可以实现让客户端分别访问不同的WEB服务器,这样就达到了分担负载的目的。那么如何让客户端分别向不同的WEB服务器访问呢?这就要用到DNS服务所提供的round robin功能。
我们可以按如下步骤操作:
在Windows200中打开管理工具中的DNS管理器。
在DNS管理其中,用鼠标右键点击该DNS服务器图标,在弹出的菜单中选择Property属性菜单。
在弹出的窗口中,选择Advanced选项卡。确保Enable round robin选项是处于被选中的状态。
点击OK关闭该窗口。
当设定好Round roubin后,接下来需要在DNS的区域(Zone)中添加主机记录:
打开管理工具中的DNS管理器。
用鼠标右键点击将要创建记录的区域,在弹出的菜单中选择New host新建主机记录。然后依照向导提示输入必要的信息。
主机名 IP地址
www 1921681200
www 1921681201
www 1921681202
当输入完所有主机的主机名与IP的对应关系后,你将看到类似于下图的窗口。
在这里我们注意到,添加的三条主机记录是同一个主机名对应着不同的IP。这些不同的IP即为网络中安装的多台WEB服务器的实际IP,他们对应着同一个主机名wwwititgocom。
这样当客户端们在浏览器的地址栏中输入:wwwititgocom去访问WEB服务器时,就会向DNS服务器发出名称解析请求。当DNS服务器收到第一个客户端的请求时,会把第一个IP 1921681200响应给客户端,当第二个客户端要求解析时,服务器把第二个IP1921681201响应给客户端,以此类推。通过这样的循环分配IP地址,就可以让不同的客户器访问不同的服务器,从而达到分担服务器的负载的功能。
Enable netmask ordering 启用子网优先
如果公司的网络是由多个子网构成的,为了使用户能够更有效地访问服务器中的资源,例如WEB服务器上的资源,我们可以在每个子网中都安装一台WEB服务器,这些WEB服务器保存的数据是完全一样的并且都使用同一个主机名,例如:wwwititgocom。那么如何让用户在其浏览器的地址栏中输入主机名wwwititgocom时,访问的是本子网的WEB服务器,而不是其他子网的web服务器呢?我们可以通过设置Enable netmask ordering 启用子网优先来实现这一功能。
想实现Enable netmask ordering 启用子网优先,我们可以按以下步骤操作:
打开管理工具中的DNS管理器。
在DNS管理其中,用鼠标右键点击该DNS服务器图标,在弹出的菜单中选择Properties属性菜单。
在弹出的窗口中,选择Advanced选项卡。确保Enable subnet ordering选项是处于被选中的状态。
点击OK关闭该窗口。
当设定好subnet ordering后,接下来需要在区域中添加主机记录:
打开管理工具中的DNS管理器。
用鼠标右键单击将要创建记录的区域,在弹出的菜单中选择New host新建主机记录。然后依照向导提示输入必要的信息。
例如:
主机名 IP地址
www 1921681200
www 202961201
www 64351202
当输入完所有主机的主机名与IP的对应关系后,你将看到类似于下图的窗口。
这样我们在DNS服务器中添加了三条主机记录:同一个主机名对应着不同的IP。这些不同的IP即为不同子网中安装的WEB服务器的实际IP地址,他们对应着同一个主机名wwwititgocom。
这样当用户在其浏览器的地址栏中输入:wwwititgocom去访问该WEB服务器时,该客户端就会向DNS服务器发出名称解析请求。作为DNS服务器收到客户端的查询请求后,将比较客户端的IP地址,与它所请求的主机名所对应的IP地址中的哪一个在同一子网中,然后将这个IP (与客户端在同一子网中的IP地址) 响应给客户端。这样就可以实现客户端访问的总是本子网中的服务器, 把服务器的访问负载分摊到了各个子网的服务器中,并且减少了跨子网的网络流量。
A 记录(A record)又名主机记录是互联网上最常见的 DNS 资源记录,用于记录域名或子域名关联的主机地址,通常是 IPv4 地址。
任一域名允许关联多个 A 记录,而请求超过 1 个 A 记录的域名时,云解析 DNS 服务器将自动开启轮询调度。这是一种十分廉价且高效的均衡负载方式,配置方式也很简单。
首先,前往阿里云解析控制台,点击「添加记录」将弹出下面的配置界面。
主机记录 就是你要配置的域名,在 记录值 处填入 IP 地址,点击「确定」保存第一条 A 记录。我们再次点击「添加记录」,这次主机记录不变,在记录值处填入其它 IP 地址。
常言道光说不练假把式,我将手头的空闲域名 aequesfilecc 关联 5 个 A 记录,地址范围从 127001 到 127005 ,下面使用 nslookup 查询试试。
执行了两次查询命令,从上图可以看出两次响应结果确实是随机的。
DNS 均衡负载虽说简单高效,缺点也不少。
第一点、通常无法动态调整主机地址权重(阿里云解析倒是支持权重设置),如果多台主机性能差异较大,则不能很好地均衡负载。
第二点、DNS 服务器通常会缓存查询响应,以便更迅速地向用户提供查询服务,这种设计导致某台主机宕机情况下,即便第一时间修改 A 记录也无济于事。
由于 DNS 均衡负载无法满足高可用性要求,通常被用于第一层简单均衡,第二层采用高可用均衡负载服务如 HAProxy 或者 Nginx
DNS服务器地址呢?
在“开始”中找到“运行”(或者直接Win+R),然后输入“cmd”进入管理员操作界面:
在管理员界面中输入命令:ipconfig/all然后按Enter键确认即可显示Windows IP配置,在这里我们可以查看我们的DNS服务器地址。
如果连接了路由的话也可以通过路由来查看DNS服务器地址,在浏览器输入地址19216811弹出路由器登入对话框,通常路由器默认的账户密码均为:admin(登入后可修改)。登入路由之后可以在首页查看到DNS服务器地址了。
知道了DNS地址就可以来修改了,点击电脑右下角的连接图标,选择“打开网络和共享中心”,当然也可以在控制面板中“网络和Internet”进入“打开网络和共享中心”:
进入“网络和共享中心”后,我们再点击“本地连接”进入“本地连接 状态”对话框:
在“本地连接 状态”对话框中点击“属性”选项,弹出本地连接属性对话框:
这里我们选中本地连接属性对话框中的“Internet 协议版本4 (ICP/iPv4)”,双击后者选择下方的属性,之后即可进入“Internet 协议版本4 (ICP/iPv4)属性对话框”,在这里边即可更改DNS设置。
在“Internet 协议版本4属性”对话框中即可更改DNS地址了,选中“使用下面的DNS服务器地址”,然后DNS地址成为可编辑状态,再把查看到的DNS地址填写上再确认即可。
首选 DNS 服务器(P) 20296128166
备用 DNS 服务器(A) 20296134133
0条评论