什么是负载均衡?  

  负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。群集是指一组服务器,通过彼此的协同作业,提供一个相同的服务器或应用程序,用于提升服务或应用程序的可用性(availability)、可靠性(reliability)和可扩展性(scalability)。当群集内的服务器down掉以后,服务请求会转给其他群集内的节点,以实现24小时不中断服务

 

负载均衡实现的几种方法有: 

■基于DNS的负载均衡,它是通过DNS服务中的随机名字解析来实现的,但不能够按照Web服务器的处理能力分配负载,无法完全解决现在网络中面临的问题:如单点故障问题,服务器资源不够用问题等。 

■如果是基于IIS,Windows 2003 Server本身就带了负载均衡服务,但这一服务也只是轮流分配,可能会造成额外的网络问题。 

■软件方式,通过一台负载均衡服务器进行,上面安装软件。这种方式比较灵活,成本相对也较低。但是软件负载均衡解决方案缺点比较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,软件本身会成为服务器工作成败的一个关键;软件可扩展性并不是很好,受到操作系统的限制。 

■硬件方式,通过专门的负载均衡设备实现。直接在服务器和外部网络间安装负载均衡设备,这种设备我们通常称之为负载均衡器,对于流量的分配可以有多种策略,但基本上都是应用无关的,独立于操作系统。这种方式往往适合大流量、简单应用。

 

 

网络负载均衡

 

 

 

网络负载均衡

 

“单播”模式:群集MAC地址会覆盖每个节点的MAC地址,同时所有节点发送的数据包源MAC地址为群集MAC,因此交换机不能把群集MAC地址绑定于某个端口,根据该特性,单播模式会有两个缺点(1.群集MAC没有绑定交换端口,所有的NLB通信均在交换机所有端口广播,而不管该端口是否连接了NLB节点,造成额外的网络流量。2.所有节点有相同的MAC地址,节点之间不能通过原有的IP进行通信)

“多播”模式:NLB不会修改NLB节点上用于群集的网络适配器的MAC地址,而是为它再分配一个二层多播MAC地址(群集MAC地址)专用于NLB的通信,这样NLB节点之间可以通过自己原有的IP地址进行通信。但是在多播模式中,NLB节点可以将针对群集IP地址的ARP请求映射到多播MAC地址(群集MAC地址),而许多交换机或者路由器默认不会学习多播MAC地址,所以必须手工在交换机或路由器上添加群集IP地址和群集MAC地址的映射,否则无法进行ARP解析,客户将不能通过群集IP地址访问

网络负载均衡


群集IP地址:指定规则所针对的群集IP。

端口范围:默认是为所有,可以指定群集监听的端口范围,如80到80,就是指监听对WEB进行负载均衡。

协议:指定群集所服务的协议类型。

筛选模式:多个主机

相似性无:客户端的服务请求会分配到群集内的每一台服务器,假设NLB有2台服务器,当接到客户端的请求时,第一个请求由第一个服务器执行,第二个请求由第二个服务器执行,第三个请求由第一个进行执行。因为所有客户端都会平均分配到服务器,这样做到最好的负载均衡。

相似性单一:客户端的请求会固定分配到一台服务器,NLB会根据客户端的IP来选择由那一台服务器进行执行,也就是一台服务器只执行一部分的IP地址。

相似性网络:根据IP的Class C屏蔽来决定由那一台服务器来处理,也就是某些服务器指处理来自某些网段C的请求。

单一主机:该端口范围内的所有请求都由一台服务器执行,此选项配合优先级进行。

禁用此端口范围:这也就是说我们指定了一个大的端口范围,但是里面的几个端口我们不需要,但是客户端在访问时可能会访问到,所以我们要讲这几个端口排除在外

 

微软官方强烈建议在实施网络负载平衡(已经称NLB)时最好为服务器配置两块网卡,一块用来发布(Public),一块作为心跳(HeartBeat)。并且不论是MSCS还是NLB都属于企业级的应用,而在IDC部署方面更多采用的是硬件方式。不论怎样,技术学习和实验还是要做的。强化自己,提高自己的能力才能适应当前的竞争环境。

注意:在网络负载平衡中的每个节点上,管理员账号的用户名和密码最好一致

单网卡多播,多网卡单播.官方强烈建议在实施网络负载平衡先用单播