在现行的许多网络应用中,有时一台服务器往往不能满足客户端的要求,此时只能通过增加服务器来解决问题。
那么,有没有一个办法或者技术来解决此类问题呢 ? 使用 Windows 2000 或 Windows Server 2003 中的网络负载平衡群集就可以(本文将介绍 Windows Server 2003 中的网络负载平衡技术的实现方法)。
一、网络负载平衡的优点
1.
网络负载平衡允许你将传入的请求传播到最多达
32
台的服务器上,即可以使用最多
32
台服务器共同分担对外的网络请求服务。网络负载平衡技术保证即使是在负载很重的情况下它们也能作出快速响应。
2.
网络负载平衡对外只须提供一个
IP
地址(或域名)。
3.
如果网络负载平衡中的一台或几台服务器不可用时,服务不会中断。网络负载平衡自动检测到服务器不可用时,能够迅速在剩余的服务器中重新指派客户机通讯。此保护措施能够帮助你为关键的业务程序提供不中断的服务。可以根据网络访问量的增多来增加网络负载平衡服务器的数量。
4.
网络负载平衡可在普通的计算机上实现。
在
Windows Server 2003
中,网络负载平衡的应用程序包括
Internet
信息服务
(IIS)
、
ISA
Server 2000
防火墙与代理服务器、
VPN
虚拟专用网、终端服务器、
Windows Media Services
(
Windows
视频点播、视频广播)等服务。同时,网络负载平衡有助于改善你的服务器性能和可伸缩性,以满足不断增长的基于
Internet
客户端的需求。
网络负载平衡可以让客户端用一个逻辑
Internet
名称和虚拟
IP
地址(又称群集
IP
地址)访问群集,同时保留每台计算机各自的名称。
下面,我们将在两台安装
Windows Server 2003
的普通计算机上,介绍网络负载平衡的实现及应用。
这两台计算机中,一台计算机名称为
w2003-1
,
IP
地址为
202.206.197.190
,另一台名为
w2003-2
,
IP
地址为
202.206.197.191
。
规划网络负载平衡群集使用的
IP
地址为
202.206.197.195
,规划网络负载平衡群集完整的计算机名称为
cbf001.com
。你需要在
heinfo.edu.cn
域中注册此主机名称并将地址设置为
202.206.197.195
。如果你没有
DNS
,可以在需要访问网络负载平衡的客户机(包括网络负载平衡主机)上编辑
%systemroot%system32driversetc
目录下的
hosts
文件,添加一条信息“
202.206.197.195 cluster.heinfo.edu.cn
”,即可解决
DNS
域名解析的问题。
当正式应用时,客户机只需要使用
cbf001.com
或
IP
地址
202.206.197.195
来访问服务器,网络服务平衡会根据每台服务器的负载情况自动选择
202.206.197.190
或者
202.206.197.191
对外提供服务。
网络负载平衡的实现过程如下:
在实现网络负载平衡的每一台计算机上,只能安装
TCP/IP
协议,不要安装任何其他的协议(如
IPX
协议或者
NetBEUI
协议),在网络属性中,“网络负载平衡”也不能被选择,这可以从“网络连接属性”中查看。
①先进入第一台计算机,以管理员身份登录,从“管理工具”中运行“网络负载平衡管理器”,用鼠标右键单击“网络负载平衡群集”,从出现的菜单中选择“新建群集”,进入“群集参数”界面(图
1
)。
在“ IP 地址”后面输入规划的群集参数地址 202.206.197.195 ,在子网掩码处使用默认值,在“完整 Internet 名称”后面输入 cluster.heinfo.edu.cn (也可以是其他的名称,但输入的 DNS 名称必须与输入的 IP 地址相符)。
如果允许远程控制,请选中“允许远程控制”,并在“远程密码”和“确认密码”处输入可以进行远程控制的密码。
②点击“下一步”按钮,进入群集 IP 地址页面后再进入“端口规则”界面,点击“下一步”按钮,进入“连接”界面(图 2 )。
③在“连接”界面的“主机”栏中输入当前计算机的名称 w2003-1 ,然后点击“连接”按钮,将在“对配置一个新的群集可用的接口”框中显示出连接的计算机的网卡及 IP 地址。选择与群集 IP 地址同一网段的地址(用于对外提供网络应用的网卡),然后点击“下一步”按钮,进入设置“主机参数”界面,点击“完成”按钮,系统将自动开始网络负载平衡群集的配置。几分钟后,网络负载平衡群集配置完成。
④打开第二台计算机,并以管理员的身份登录进入。
注意:在网络负载平衡中的每个节点上,管理员账号的用户名和密码最好一致。
⑤然后,在第一台计算机上,用鼠标右键单击新创建的群集,从出现的菜单中选择“添加主机到群集”。将出现“连接”界面,在“主机”中输入第二台计算机的计算机名称,点击“连接”按钮,将会在“对配置群集可用的接口”下面显示出连接的计算机上的网络配置。选择202.206.197.191 的网卡,进入主机参数界面,点击“完成”按钮,即可返回网络负载平衡管理器(图 3 )。
⑥关闭网络负载平衡管理器后再进入网络负载平衡管理器。用鼠标右键单击“网络负载平衡群集”,从出现的菜单中选择“连接到现存的”,将会弹出“连接”界面。
输入第一台计算机的名称,点击“连接”按钮,在“群集”下面将列出群集的
IP
地址,选择此
IP
地址,并点击“完成”按钮,连接群集即可完成。
以后,如果这两台服务器不能满足需求,可以按以上步骤添加第
3
台、第
4
台计算机到网络负载平衡中以满足要求。
三、用
IIS
服务验证网络负载平衡
网络负载平衡配置好后,为了实现某项具体的服务,需要在网络负载平衡的计算机上安装相应的服务。例
如:为了实现
IIS
网站的负载平衡,需要在相应的网络负载平衡的计算机上安装
IIS
服务。
安装网络负载平衡的应用程序时,不需要特别的方法,只需要在配置好网络负载平衡的计算机上安装相应的服务即可。但 是为了让每个用户在通过网络负载平衡访问到不同的计算机时,能够访问到一致的数据,需要在网络负载平衡的每台计算机上保持数据的一致性。举例来说:实现了 两个节点的
IIS
的网络负载平衡,为了保证两个网站内容的一致性,除了这两个
IIS
服务器的配置相同外,相应的网站数据必须一致。
为了检验网络负载平衡,我们可以通过
IIS
来进行验证,其他的一些应用如终端服务、
Windows Media
服务与
IIS
的应用相类似。
在网络负载平衡的每一台计算机上安装
IIS
服务,方法如下:
在“添加
/
删除程序”中,点击“添加
Windows
组件”,进入
Windows
组件向导,双击“应用程序服务器”,进入“应用程序服务器”(图
4
)。
选中 ASP.NET 、 Internet 信息服务及应用网络 COM+ 访问后,即可开始安装 IIS 服务。
安装之后,进入第一台计算机的
inetpubwwwroot
目录,新建一个文本文件,输入以下内容:
<html>
This win2003-1
</html>
然后将它保存为
default.htm
文件。这个网页在
IE
中将显示如下内容:
This w2003-1
在第二台计算机的
inetpubwwwroot
目录,新建一个文本文件,并输入下面的内容:
<html>
This win2003-2
</html>
这个网页在
IE
浏览器中将显示“
This w2003-2
”,随后将这个文件以
default.htm
名称保存。
然后,在其他计算机上的
IE
浏览器中键入
http//cbf001.com
,将会显示为“
This win2003-1
”或“
This win2003-2
”, 根据网络的负载,网络负载平衡会自动转发到第一台计算机或第二台计算机。为了验证效果,你可以在浏览的时候,拔掉第一台计算机的网线或拔掉第二台机器的网 线,将会发现浏览到的将是不同内容。当然,我们只是测试的时候,为了验证网络负载平衡的效果,两个网站的内容不一致,而在正式应用的时候,网络负载平衡群 集的每个节点计算机的内容将是一致的,这样,不管使用那一个节点响应,都保证访问的内容是一致的。