侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

Windows Server 2008 R2 负载平衡安装配置入门篇

Windows  /  管理员 发布于 7年前   310

一、简单介绍负载均衡

负载均衡也称负载共享,它是指负载均衡是指通过对系统负载情况进行动态调整,把负荷分摊到多个操作节点上执行,以减少系统中因各个节点负载不均衡所造成的影响,从而提高系统的工作效率。
在常用的大型服务器系统当中都存在着负载均衡组件,常用的像微软的网络负载平衡NLB、甲骨文的Oracle RAC、思科的负载均衡(SLB),Apach+Tomcat 负载均衡,它们能从硬件或软件不同方面实现系统各节点的负载平衡,有效地提高大型服务器系统的运行效率,从而提升系统的吞吐量。本篇文章以微软的网络负载平衡NAT为例子,简单介绍Windows Server 2008 R2 负载平衡的安装与使用方式。
在Windows Server 2008 R2当中,存在着 “网络负载平衡” 功能 (简称 NLB, Network Load Balancing),它以TCP/IP 为基础的服务,可以将一个已注册的IP地址映射到多个内部域的IP地址当中,让多台主机为同时对网络请求作出反应。使用NLB网络负载均衡最多可以连接到32台主机上,让32台主机共同分担大量的服务压力。在Windows Server 2008 R2 中还具备 “故障转移群集” 功能,它是利用负载共享的方式,把多台服务器的共用信息进行持久化储存,当其中某台服务器出现问题时,请求会自动分摊到其他服务器当中。使用 “故障转移群集” 功能,更能保证 “网络负载平衡集群”的正常运行,有利于统筹管理分布式系统中的各种资源,利用共享信息及其服务机制扩大系统的处理能力。“故障转移群集” 功能将在下一篇文章再作详细介绍。

二、NLB 主要功能

支持群集功能,一个群集最多支持32台服务器。支持网络地址转换(NAT)功能,能把请求自动转发到 NLB 群集上对各台服务器。实现管道化式管理,允许向 NLB 群集同时发送多个请求。支持多地址多端口管理,每台服务器可以绑定多个虚拟 IP,每个虚拟 IP 可建立多个开放式端口。支持故障快速恢复功能,当服务器出现故障重启后将自动恢复群集联机。支持单播、多播、IGMP多播多种群集操作模式。支持事件日志管理,可以快速查阅群集事件记录。

NLB安装

 

三、NLB 使用方式

3.1.  打开 “服务管理器”,添加 “网络负载平衡” 功能。

3.2. 安装完成后,打开“网络负载平衡管理器”

3.3.新建群集,连接到作为群集服务器当中的一台主机

3.4.为此主机绑定优先级数,和专用的IP地址,一台主机可以绑定多个IP地址

3.5.建立群集IP地址以进行负载平衡,若存在多个IP地址系统将会以第一个IP作为此群集的IP对信息进行检测。

3.6.设定群集参数,此处可设定群集完整的Internet名称,确定其操作模式。此处需要稍作解释:

3.6.1 单播模式
指把各主机节点重时指向同一个虚拟MAC地址,在此情况下各节点之间不能实现通讯。

3.6.2 多播模式
指各主机节点都保留原有的MAC地址,此外再外加专用于NLB的通讯MAC地址,使各节点之间能正常实现通讯。但并非所有的路由器或交换机都支持多播模式,使用时需要谨慎处理。

3.6.3 IGMP多播模式
建立在多播模式功能之上,在默认情况下每隔60秒发送一次IGMP信息。它可以确保发送给网络负载平衡群集的通讯只通过服务于群集主机的端口,而不是所有交换机端口。

注意: 由于并非所有路由器或交换机都支持多播模式,所以在不确定的情况下最好使用双网卡单播模式,并且预先设置好ARP,否则可能造成跨网段无法访问群集ip的错误。

3.7 绑定群集开放的端口,此处可为主机设置一定范围内的开放端口。置于TCP、UDP协议就不多作解释,一般设置只使用TCP协议使数据传输更具备可靠性和安全性。此处对筛先模式稍作解释:

3.7.1 多主机
该参数指定了群集中多个主机处理与端口规则相关的网络通讯。通过在多个主机之间分布网络负载,该筛选模式提供了可缩放性能以及容错。可以指定在主机之间均衡分布负载,或每个主机处理指定的负荷量。在多主机相似性选项中,存在3种选择:

 1、“无”选项:指定来自同一客户端 IP 地址的多条连接可由不同的主机(无客户端的相似性)进行处理。第一次请求可能指向主机A,第二次请求可能指向主机B,为了实现在多台主机之间共享session,系统应该预先把session作出持久化处理。若使用ASP.NET进行开发时,可通过命令:
aspnet_regsql.exe -S 〈SQL Server IP> -U 〈User Name> -P 〈Password> -E -ssadd -sstype c -d 〈Database Name>
建立用于Session持久化保存的数据库
 2、“单一”选项:指定网络负载平衡应该将来自同一客户端 IP 地址的多个请求导向同一台群集主机。这是相似性的默认设置。
 3、“网络”选项:指相似性指定网络负载平衡将来自同一个 TCP/IP C 类地址范围的多个请求定向到同一台群集主机。比如在客户端使用了多台代理服务器对群集进行访问时,请求看起来像源自不同的计算机。启用“网络”相似性选项,可以正确处理同一客户端多个代理服务器的session会话数据。
3.7.2 单一主机
该参数指定群集中的单个主机根据指定的处理优先级来处理相关端口规则的网络通讯。该筛选模式为处理网络通讯提供了端口专用的容错性能。

3.7.3 禁用该端口范围
该参数指定阻止相关端口规则的所有网络通讯。在这种情况下,网络负载平衡驱动程序将筛选所有相应的网络数据包或数据报。该筛选模式可让您阻止传送到特定范围的端口的网络通讯。

3.8 在完成群集配置后,在群集上按右键,选择 “添加主机到群集”,重复 3.3 、3.4安装步骤,可连接多台群集主机。

 

四、网络负载平衡群集系统测试

建立一个ASP.NET项目,加入以下 Default.aspx 页面,然后建立一个群集,绑定IP为192.168.1.110,在编辑 “端口规则” 时,选择 “多主机无相关性” 筛选模式。最后分别在群集加入Virtual-PC-A1、Virtual-PC-A2两台主机。使用第三方客户端进行访问时,多次点击 NewPage 连接时,可检测到系统会把请求连接到不同的主机之上。

<html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <script type="text/C#" runat="server"> protected void Page_Load(object sender, EventArgs e) {  String hostName = System.Net.Dns.GetHostName();  Response.Write(hostName+"<br/>");  IPAddress[] addressList = System.Net.Dns.GetHostAddresses(hostName);  foreach(IPAddress address in addressList)  Response.Write(address.ToString()+"<br/>"); } </script></head><body> <form id="form1" runat="server" > <div align="left">  <a href="http://192.168.1.110/Default.aspx" target="_blank">New Page</a>  </div> </form></body></html>

测试结果

 

五、NLB 安装注意事项

5.1.如果需要使用“域”服务,一般在安装 “网络负载平衡” 管理器前,先添加“Active Directory 域服务” 角色,并进行林、域配置。

 
若服务器需要使用IIS或者ASP.NET,那么在安装 NLB 前建议先添加Web服务器(IIS)服务器角色和 .NET Framework 3.5 功能


5.2.要建立 “网络负载平衡群集” ,需要先在 “高级共享设置” 中打开 “启用网络发现” 功能。

若无法打开 “启用网络发现” 功能,可先在服务管理器中打开以下3项服务:

Function Discovery Resource PublicationSSDP Discovery UPnP Device Host


5.3. 若使用VMware、Hyper-V等虚拟化工具,在网络中实现信息共享时无法查找到其他虚拟主机,可尝试检查虚拟机设置时“网络适配器”是否使用同一种“网络连接方式”,并且已打开“网络共享服务”功能。


5.4.在“网络负载平衡管理器”中建立群集,群集连接主机时显示“RPC连接服务器不可用”等错误信息,可尝试检查主机有否打开“Remote Procedure Call(RPC)”和“Remote Procedure Call(RPC)Locator” 服务,并查检“Remote Procedure Call(RPC)的属性――依存关系――依赖服务” 的“状态”是否已经全部设置为 “已经启动” 或 “启动类型” 设置为 “自动”。


5.5. 若使用虚拟化工具克隆主机,在群集连接主机时显示 “指定主机没有可用于安装新的群集的任何接口”,这可能是在克隆主机时多台主机使用同一个MAC造成的,此时可以尝试卸载网络适配器的驱动程序,然后再进行驱动软件更新。


5.6.若在群集连接主机时显示出现错误提示 “在主机 ‘MyPC上的NLB管理器' 不能继续,因为没有安装Microsoft群集服务” 。可以检查服务器上是否已经成功安装 “网络负载平衡” 服务,然后打开 “本地连接-属性”,选择“网络负载平衡(NLB)”。

 

结束语

为满足大型企业内部需求,实现企业服务器的高性能、高可用度、高可靠度,各大软、硬件提供商都构建起一系列的解决方案,而微软的网络负载平衡(NLB)只是其中一种。但鉴于本人知识度有限,且并非网络服务管理类专家,所以本文只牵涉到NLB入门安装方面的知识。
更多资料可参阅 TechNet Library http://technet.microsoft.com/zh-cn/library/cc778263.aspx
文中存在的错误与漏洞敬请各位点评。
对 .NET 开发有兴趣的朋友欢迎加入QQ群:230564952 共同探讨 !


  • 上一条:
    Win2008 R2下配制负载均衡方法(图文简洁版)
    下一条:
    在Xen虚拟机全虚拟化环境中安装Windows2003系统
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Windows 10的告别:2025年10月14日,一段时代的终结(0个评论)
    • windows 11激活_Win11 KMS激活流程步骤(1个评论)
    • 安装Windows 11系统的注意了,看看你的cpu是否在微软兼容列表排除中(1个评论)
    • 微软将于2022年9月20日推送Windows11 22H2新版本,推测2024发布windows 12(0个评论)
    • windows11系统中可以关闭禁止的服务及介绍(1个评论)
    • 近期文章
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2018-01
    • 2018-06
    • 2020-06
    • 2021-06
    • 2021-07
    • 2022-01
    • 2022-04
    • 2022-08
    • 2023-08
    • 2023-10
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客