全面讲述linux集群负载均衡
时间:2010-11-22 来源:uplooking_sh
www.uplooking.com
学习linux时,你可能会遇到linux集群的问题,这里将介绍linux集群负载均衡的方法,经过仔细整理,在这里拿出来和大家分享一下,希望本文能教会你更多东西。
集群原理
linux集群系统包括集群节点和集群管理器两部分。集群节点有时简称为节点、服务器或服务器节点,是提供处理资源的系统,它进行集群的实际工作。一般来讲,它必须进行配置才能成为集群的一部分,也必须运行集群的应用软件。应用软件可以是专用于集群的软件,也可以是设计用于分布式系统的标准软件。linux集群管理器则是将节点捆绑在一起,以构成单一系统外观的逻辑结构,它用于将任务分解到所有的节点。
集群因多种不同的原因而有着不同的类型,建立linux集群的最直接原因是共享CPU资源,在多个机器之间平衡负载,获得更多的系统可靠性,或在主机失败时提供后备系统(切换)。
通过对相关软件的分析,实现集群负载的功能是通过流量管理实现的,具体有以下几种实现方法:直接路由(Direct Forwarding)、网络地址转换(NAT)和隧道技术(Tunneling)。
直接路由(Direct Forwarding)是当参与集群的计算机和作为控制管理的计算机在同一个网段时可以使用此法。控制管理的计算机接收到请求包时,直接送到参与集群的节点。它的优点是返回给客户的流量不经过控制主机,速度快、开销少。
可能大家比较熟悉网络地址转换(NAT)这种方法。地址转换器有能被外界访问到的合法IP地址,它修改来自专有网络的流出包的地址,外界看起来包是来自地址转换器本身。当外界包送到转换器时,它能判断出应该将包送到内部网的哪个节点。它的优点是节省IP地址,能对内部进行伪装;缺点是效率低,因为返回给请求方的流量要经过转换器。
隧道技术(Tunneling)这种方式是linux集群的节点不在同一个网段时采用的转发机制,是将IP包封装在其它网络流量中。从安全角度考虑,应该使用隧道技术中的VPN,也可使用租用专线。
linux集群所能提供的服务是基于TCP/IP的Web服务、Mail服务、News服务、DNS服务和Proxy服务器等。下面我就以一个具体的产品TurboLinux Cluster Server 来实现一个负载均衡linux集群系统,用于提供Web和FTP服务。
规划
1.提供的服务:Web、FTP。
2.做一个较完善的负载均衡系统,以便能用到其中较多的功能。
3.使用4台服务器,其中3台安装TurboLinux Cluster Server,1台安装Windows 2000 Sever 。
安装
1.在3台服务器上安装Turbo Linux,还需要安装Apache和wu-ftpd,因为linux集群要提供这种服务。安装完成后重启机器,挂接光驱在目录/mnt/cdrom下,执行./TLCS-install,然后按提示完全安装。
2.在1台服务器上安装Windows 2000 Server,还要安装Internet Information Server 5.0。
配置linux集群管理器
1.设置各台服务器的IP地址、子网掩码、路由等,调通网络,并将1台TurboLinux服务器设置成DNS服务器,使其能够正向解析和反向解析。此例服务器名为pc1,域为test.com。
2.配置Cluster Server。执行Turbolinuxclusteradmin,设置情况如下(连字符连接的是选单选项或其下级选单,冒号后为设置情况):
(1)ClusterServer Configuration-Cluster Services-Application Stability Agents:
◆ http为默认的服务,不用设置。
◆ ftp:/usr/lib/ftpAgent。
(2)ClusterServer Configuration--Cluster Services--Service Settings:
◆ http,80:TCP,sticky。
◆ ftp,21:TCP,ftp。
(3)ClusterServer Configuration--Servers Configuration:
◆ pc1 (pc1.test.com),direct,ping。
◆ pc2 (pc2.test.com),direct,ping。
◆ pc3 (pc3.test.com),direct,ping。
◆ pc4 (pc4.test.com),direct,ping。
(4)ClusterServer Configuration--Advance Traffic Managers:
◆ Advance Traffic Manager System:pc1.test.com。
◆ Advance Traffic Manager Setting: 默认值。
(5)ClusterServer ConfigurationàVirtual Severs:
◆ 主机为:pc1.test.com。
◆sendmail:master@pc1 .test.com。
◆ Server pool name: Server Group1。
(6)ClusterServer ConfigurationàGloble Settings:
网络设置:netmask 255.255.255.0。
配置集群各节点
1.配置Windows 2000 Server节点
因为TurboLinux Cluster Server 本身能被工具自动同步,所以只要配置Windows 2000 Server即可。
(1)开始→设置→控制面板→添加新硬件→下一步→添加/排除设备故障→添加新设备→否,再从列表选择硬件→其它设备→Microsoft:Microsoft Loopback Adapter→完成。
(2)在桌面上单击鼠标右键选择网上邻居→属性→TCP/IP,设置IP地址、缺省网关、子网掩码(先设成 255.255.255.0)。
(3)开始→运行→regedit→找到注册表中与Microsoft Loopback Adapter相关的项,将子网掩码改成 255.255.255.255。
(4)配置系统运行合适的服务,并配置适合集群管理器管理的配置,以便可在控制管理器中使用。
2.配置TurboLinux Cluster Server节点
(1)在管理菜单中选tlcs_content _sync执行内容同步,输入将要配置的节点机密码,将复制集群管理器中的服务内容到节点。
(2)在管理菜单中选择tlcs_ config _sync执行设置同步,输入将要配置的节点机密码,复制集群管理器中的设置内容到节点。
到此,我们已经可以在集群管理器PC1上看到运行状态,可将客户端连在接服务器的交换机上,客户端可以请求Web和FTP服务。如果想看运行情况还可以从集群管理器控制台使用https:// pc1.test.com:910进行管理。
在计算机技术中,集群负载平衡是目前一个热门技术,也是一个高端应用。Internet/Intranet中使用集群负载平衡方案十分广泛,尤其是大中型网站都难离这种技术。直接路由、网络地址转换、隧道技术会根据应用需要而被采用。