打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
解析RHCS高可用集群HA及负载均衡集群LB的实现方法

解析RHCS高可用集群HA及负载均衡集群LB的实现方法

(12-05-21 01:33)

  Linux集群概述

  集群是个热门话题,在企业中越来越多地应用Linux操作系统提供邮件、Web、文件存储、数据库等服务,随着Linux应用的日益增长,高可用及负载均衡Linux集群也在企业中逐步地发展起来。Linux平台的低成本、高性能、高扩展性使得Linux集群能够以低廉的价格很好地满足各种应用的需求。

  本文介绍Linux集群的基础知识,集群的分类。在熟悉集群的基础知识后会以RHCS(RedHat Cluster Suit)为例介绍高可用集群及负载均衡集群的实现方法。

  集群是什么?

  让我们先从集群的概念开始介绍Linux集群。将多台计算机用特定的软件及硬件连接在一起,让它们为共同的目地而工作就构成了Linux集群。

  Linux集群技术就在你的身边,可能你并未察觉,对于普通用户来说,一个Linux集群通常会表现得像单一的系统,为用户提供网络服务或计算服务。

  著名的搜索引擎GOOGLE就是采用了Linux集群技术来处理每日大量的查询请示,据估计目前GOOGLE集群中已经有超过20000台计算机同时进行工作。当你每次向GOOGLE提交查询请求的时候,就会有一组不同的计算机助你检索信息。

  据世界著名的超级计算机排行网站www.top500.org 2005年6月的数据记录在全球最快的500台超级计算机中有288台采用了Linux集群的方式组建。目前最快的Linux集群超级计算机是由IBM为巴塞罗那超级计算中心建造的MareNostrum集群,该集群目前在2005年6月top500全球超级计算计中排名第五。

  集群的主要类型

  学习Linux集群之前我们首先需要了解集群的主要类型及其能够解决的问题。我们通常会将集群按其用途分为以下的三个主要类型:

  高可用集群(HA,High Available Cluster)

  高可用集群是指通过特殊软件把独立的服务器连接起来,组成一个能够提供故障切换(Failover)功能的集群。

  企业中的关键应用如WEB服务、文件服务、数据库服务等,通常会要求提供7x24不间断地连续提供服务并且对外不能表现出故障。这就要求承载服务的系统能够自动地判断故障并提供故障恢复的能力。高可用集群能够保性系统中关键服务的可用性以及服务数据的完整性。

  高可用集群通常会采用可用性来衡量基实际效果。计算机系统的可用性是通过平均无故障时间(MTTF)及平均维修时间(MTTR)来度量的,可用性的定义为:MTTF/(MTTF+MTTR)*100% 。根据可用性我们可以把计算机系统分为以下几类:

  可用性年停机时间系统类别

  99.53.7天常规系统

  99.98.8小时可用系统

  99.9952.6分钟高可用系统

  99.9995.3分钟抗故障系统

  99.999932秒容错系统

  Linux高可集群系统通常能够达到高可用系统的标准。目前最高级别的容错系统通常是采用高级的支持硬件容错的服务器,容错系统对硬件故障具有最高级别的可用性支持但是这种系统通常不能够对服务的软件故障做出诊断及恢复。Linux高可用集群系统基本都具备对软件和硬件故障的探测及恢复功能。

  在真实的企业应用中一般只会将部分关键服务部署在高可用集群系统上,其它不属于关键服务的部分只需要采用普通的服务器部署即可。所以一般情况下高可用集群系统会包由两台服务器构成。

  目前主要的Linux发行版本基本都会提供高可用集群组件,主要要的高可用集群决方案有SUSE 采用的HeartBeat (www.linux-ha.org)及RedHat Cluster Suit 采用的Kimberlite(oss.missioncriticallinux.com/kimberlite/)

  负载均衡集群(LB,Load Balance Cluster)

  负载均衡集群通常采用专门的负载均衡路由设备将基于TCP/IP协议的服务请求分发至实际提供服务的服务器中并由这些服务器为客户端提供真实的服务。

  负载均衡集群系统一般多用于负载较重的网络服务中,如大型的网站、邮件服务系统等。由于采用了负载均衡技术,可以使多台服务器同时提供相同内容的服务,突破了单一服务器硬件性能的限制。

  负载均衡集群中的关键部件就是负载均衡路由设备,负载均衡路由设备负责将真实客户端的服务请求分发至真实服务器上,一般可采用的方法有使用硬件负载均衡路由设备或使用Linux自己配置负载均衡路由器。

  硬件负载均衡路由设备由于采用了特殊的硬件结构及专门开发的配置软件,通常易于配置及管理,性能较好,但是其价格较高

  在Linux中最常使用的负载均衡路由软件是由章文嵩博士开发的LVS(Linux Virtual Server)项目。LVS能够实现目前大部分硬件负载均衡路由设备的功能。目前基于Linux平台负载均衡解决方案大都是采用了LVS或其衍生产品。由于LVS项目本身未提供负载均衡路由的高可用功能、真实服务器状态探测功能等,所以在实际配置负载均衡集群时通常会采用LVS的衍生产品。常见的LVS衍生产品主要有UltraMonkey (http://www.ultramonkey.org/)及RedHat的Piranha项目。#p#副标题#e#

  高性能计算集群(HPC, High Performance Computing)

  高性能计算是计算机科学的一个分支,它致力于开发超级计算机,研究并行算法和开发相关软件。高性能计算集群系统通常会采用价格昂贵的专用高速网络连接集群内的计算机,在集群内部使用专门编写的软件来进行高速的运算。

  高性能计算主要用于大规模科学计算,如天气预报、地形分析和生物制药、基因测序等领域。

  为什么使用Linux构建集群系统?

  目前大多数的集群系统都是以Linux做为操作系统平台,之所以大家都选择Linux来构建集群系统是因为Linux系统具有以下优点

  低成本

  Linux集群的低成本主要体现在两个方面,首先Linux平台及其软件大部分基于GPL或其它开放源代码协议发布,这些协议对于最终用户是完全免费的。几乎所有的集群类型都可以在Linux平台上找到免费的解决方案。另外由于Linux对各种硬件平台的广泛支持,使得使用Linux 在一些比较旧的机器上构建集群成为可能,即使使用新的硬件,Linux也可以在廉价的X86平台上构建高性能的集群。

  高扩展性

  高扩展性首先表现在对不同硬件及硬件平台的支持上,使用Linux制作集群可以构建多种平台的异构集群,同时可以使用各种硬件对现有集群进行扩充。另外Linux的高扩展性还体现在集群软件上,由于Linux平台上的大部分软件都是基于开源协议发布,所以可以对现有软件进行各种改造,使其能够在现有的环境下最大限度的发挥功能,这种可扩展性在商业化操作系统上是不可能具备的。

  高性能

  Linux最值得称道的特征之一就是Linux的高性能,在Linux系统中可以调节各种操作系统的参数以提高系统性能,并为特殊应用进行优化。Linux系统强大的可订定性也决定了Linux可以将不必要的系统功能禁用,同时提高需要用到服务的性能。

  RedHat 集群套件(RHCS,RedHat Cluster Suit)简介

  本章将会以RHCS 3.0为基础向读者介绍基于Linux的高可用及负载均衡集群的配置方法。RHCS是由RedHat发布的用于RHEL(RedHat Enterprise Linux)的集群产品。

  RHCS必需与RHEL配合使用,RHCS共提供了两种组件,分别支持两种不同类型集群,其中RHCM(RedHat Cluster Manager)提供了高可用集群的支持,Piranha提供了基于LVS的负载均衡集群的支持。

  RHCS 3.0中的RHCM是RedHat的一个开源的高可用集群项目。RHCM基于开源的Kimberlite(oss.missioncriticallinux.com/kimberlite/)项目,同时加入了HeartBeat (www.linux-ha.org)项目的一些先进特征。做为RedHat的一款商业产品,在提供完备的商业支持及RHEL完全兼容的同时,RHCS比其它的开源高可用项目提供了更加完备易用的图形化配置及管理界面。

  RHCM提供了许多先进技术特征,包括图形及命令行的集群配置及监控工具,无单一故障点配置支持、容错域支持、数据完性保证、服务状态自动监控及手动服务迁移功能。另外RHCM中还提供了高可用NFS及SAMBA配置向导功能,使得配置NFS或SAMBA高可用文件服务器在几分钟之内就可以完成。

  Piranha项目是基于LVS的开源负载均衡集群项目,在LVS提供负载均衡基础上,Piranha项目还提供了WEB界面配置功能、负载均衡路由器的高可用功能、真实服务器服务状态监控功能,大大简化了LVS配置和管理的难度。

  配置RHCM高可用集群

  我们将以RHCS的高可用使群组件RHCM为基础,一步步地进行高可用集群的配置,在这部分中我们将会学到高可用集群的基础知识,如何为RHCM订制RHEL安装,如何安装并配置基于RHCM的高可用集群。

  高可用集群的基础知识

  高可用集群通常由一个或多个结点(服务器)及共享存储设备构成,集群间各成员相互监控软、硬件的状态,一旦服务器硬件或服务发生故障则集群控制软件会依照基配置将服务切换至另一台服务器继续运行。#p#副标题#e#

  根据高可用集群的结构我们一般可将高可用集群分为三种类型:主从式、对称式和集群式。

  

 

  主从方式的HA集群由两个结点构成,其中一台为主服务器,运行服务,另一台服务器为从服务器为主服务器提供备份。主从方式中主服务器可运行一个或多个服务,从服务器随时监视主服务器软硬件状态,如果主服务器发生故障则主服务器上运行的服务会由主服务器迁移至从服务器继续运行。主从方式能够提供较高级别的可用性但由于从服务器专门用于备份,正常时不对外提供服务所以资源利用率较低。

  

 

  对称方式的HA集群也由两个结点构成,两台服务器可各自运行一个或多个服务,两台服务器在运行时相互监视软硬件状态,如果发生故障则服务会迁移至另一台服务器运行。对称方式中两台机器同时对外提供服务,在提供高可用性的同时也提供了较高的资源利用率

  

 

  集群方式的HA集群由多个结点构成,每节点可各自运行一个或多个服务,集群中的成员相互监视软硬件状态,如发现故障则服务可在集群成员间进行切换。#p#副标题#e#

  为集群系统安装并配置RHEL

  在安装RHCS前我们需要首先应安装并配置RHEL,目前RHCS 3.0 支持RHEL 3.0 AS 及WS 版本的操作系统。我们以两结点为例说明RHEL初始安装及配置方法。

  安装RHEL前首先需确认所使用的硬件与RHEL及RHCS兼容,硬件的兼容信息可从RedHat官方网站的硬件兼容性列表中获得。其次在安装前需确认硬件配置正常,硬件相关的配置信息请查看硬件厂商提供的文档。

  在准备安装阶段需要确定Linux的网络配置、硬盘分区设置、root用户口令等安装时需要设定的配置。在安装过程中请确定选择了NFS及SAMBA服务器相关的软件包以确保示例的集群配置能够正常工作。安装完成后重新启动系统开始进行RHEL的初始化配置。

  我们将以两节点的高可用集群为例来说明集群的配置方法,在配置示例中两个节点的主机名分别为node1和node2,IP地址分别为192.168.1.11和192.168.1.12,节点的默认网关为192.168.1.1。

  操作系统安装完成后首先需要编辑/boot/grub/grub.conf文件降低系统启动的等待时间,一般的情况下可将默认的timeout值改为10秒。该配置需要在每台成员服务器上执行。

  [root@nod1 root]# cat /boot/grub/grub.conf

  # grub.conf generated by anaconda

  #

  # Note that you do not have to rerun grub after making changes to this file

  # NOTICE: You have a /boot partition. This means that

  # all kernel and initrd paths are relative to /boot/, eg.

  # root (hd0,0)

  # kernel /vmlinuz-version ro root=/dev/sda2

  # initrd /initrd-version.img

  #boot=/dev/sda

  default=0

  timeout=10

  splashimage=(hd0,0)/grub/splash.xpm.gz

  title Red Hat Enterprise Linux AS (2.4.21-32.EL)

  root (hd0,0)

  kernel /vmlinuz-2.4.21-32.EL ro root=LABEL=/

  initrd /initrd-2.4.21-32.EL.img

  为了防止因DNS服务器故障导致集群工作不正常一般情况下建议在/etc/hosts文件中加入所有结点的IP地址。配置完成后在所有成员结点上执行ping命令测试网络连通性以确保网络设备正常工作,/etc/hosts文件配置正确。该配置需要在每台成员服务器上执行。#p#副标题#e#

  [root@node1 root]# cat /etc/hosts

  # Do not remove the following line, or various programs

  # that require network functionality will fail.

  127.0.0.1 localhost.localdomain localhost

  192.168.1.11 node1

  192.168.1.12 node2

  [root@node1 root]# ping -c 1 node1

  PING node1 (192.168.1.11) 56(84) bytes of data.

  64 bytes from node1 (192.168.1.11): icmp_seq=0 ttl=64 time=0.871 ms

  --- node1 ping statistics ---

  1 packets transmitted, 1 received, 0% packet loss, time 0ms

  rtt min/avg/max/mdev = 0.871/0.871/0.871/0.000 ms, pipe 2

  [root@node1 root]# ping -c 1 node2

  PING node2 (192.168.1.12) 56(84) bytes of data.

  64 bytes from node2 (192.168.1.12): icmp_seq=0 ttl=64 time=2.10 ms

  --- node2 ping statistics ---

  1 packets transmitted, 1 received, 0% packet loss, time 0ms

  rtt min/avg/max/mdev = 2.103/2.103/2.103/0.000 ms, pipe 2

  [root@node1 root]# ping -c 1 192.168.1.1

  PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.

  64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=1.51 ms

  --- 192.168.1.1 ping statistics ---

  1 packets transmitted, 1 received, 0% packet loss, time 0ms

  rtt min/avg/max/mdev = 1.510/1.510/1.510/0.000 ms, pipe 2

  [root@node2 root]# ping -c 1 node1

  PING node1 (192.168.1.11) 56(84) bytes of data.

  64 bytes from node1 (192.168.1.11): icmp_seq=0 ttl=64 time=0.536 ms

  --- node1 ping statistics ---

  1 packets transmitted, 1 received, 0% packet loss, time 0ms

  rtt min/avg/max/mdev = 0.536/0.536/0.536/0.000 ms, pipe 2

  [root@node2 root]# ping -c 1 node2

  PING node2 (192.168.1.12) 56(84) bytes of data.

  64 bytes from node2 (192.168.1.12): icmp_seq=0 ttl=64 time=0.131 ms

  --- node2 ping statistics ---

  1 packets transmitted, 1 received, 0% packet loss, time 0ms

  rtt min/avg/max/mdev = 0.131/0.131/0.131/0.000 ms, pipe 2

  [root@node2 root]# ping -c 1 192.168.1.1

  PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.

  64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=0.778 ms

  --- 192.168.1.1 ping statistics ---

  1 packets transmitted, 1 received, 0% packet loss, time 0ms

  rtt min/avg/max/mdev = 0.778/0.778/0.778/0.000 ms, pipe 2

  在每台成员服务器上测试将要配置在的服务确保服务在每个成员结点都能够正常启动。该测试需要在每台成员服务器上执行。

  [root@node1 root]# service nfs start

  Starting NFS services: [ OK ]

  Starting NFS quotas: [ OK ]

  Starting NFS daemon: [ OK ]

  Starting NFS mountd: [ OK ]

  [root@node1 root]# service smb start

  Starting SMB services: [ OK ]

  Starting NMB services: [ OK ]

  测试完成后关闭服务,并确保服务不会自动启动,因为在高可用集群中服务是由集群软件进行控制的。该测试需要在每台成员服务器上执行。#p#副标题#e#

  [root@node1 root]# service nfs stop

  Shutting down NFS mountd: [ OK ]

  Shutting down NFS daemon: [ OK ]

  Shutting down NFS quotas: [ OK ]

  Shutting down NFS services: [ OK ]

  [root@node1 root]# service smb stop

  Shutting down SMB services: [ OK ]

  Shutting down NMB services: [ OK ]

  [root@node1 root]# chkconfig nfs off

  [root@node1 root]# chkconfig smb off

  结点安装完成后需配置共享存储设备,共享存储设备多为SCSI设备或光纤设备,请按照相关的硬件厂商文档进行安装。硬件正常安装后需要对共享存储设备进行分区,共享存储设备用于存放服务所需使用的数据。

  在对共享存储进行分区时需要首先分两个10M大小的分区做为裸设备供高可用集群使用,另外建议每服务的数据使用一个分区来存放数据,具体分区如下所示。该配置只需要在一台成员服务器上执行。

  [root@node1 root]# fdisk /dev/sdb

  Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

  Building a new DOS disklabel. Changes will remain in memory only,

  until you decide to write them. After that, of course, the previous

  content won't be recoverable.

  Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

  Command (m for help): n

  Command action

  e extended

  p primary partition (1-4)

  p

  Partition number (1-4): 1

  First cylinder (1-522, default 1):

  Using default value 1

  Last cylinder or +size or +sizeM or +sizeK (1-522, default 522): +10M

  Command (m for help): n

  Command action

  e extended

  p primary partition (1-4)

  p

  Partition number (1-4): 2

  First cylinder (3-522, default 3):

  Using default value 3

  Last cylinder or +size or +sizeM or +sizeK (3-522, default 522): +10M

  Command (m for help): n

  Command action

  e extended

  p primary partition (1-4)

  p

  Partition number (1-4): 3

  First cylinder (5-522, default 5):

  Using default value 5

  Last cylinder or +size or +sizeM or +sizeK (5-522, default 522): +1000M

  Command (m for help): n

  Command action

  e extended

  p primary partition (1-4)

  p

  Selected partition 4

  First cylinder (128-522, default 128):

  Using default value 128

  Last cylinder or +size or +sizeM or +sizeK (128-522, default 522): +100M

  Command (m for help): w

  The partition table has been altered!

  Calling ioctl() to re-read partition table.

  Syncing disks.

  在上述示例中我们共分了四个分区,其中sdb1、sdb2为两个10M的分区需配置为裸设备,sdb3、sdb4分别为两个1G的分区,分别供NFS及SAMBA服务存放数据使用。分区完成后重启计算机并在每台服务器上执行fdisk –l以确定各结点能够正确识别磁盘及其分区设备。#p#副标题#e#

  [root@node1 root]# fdisk -l

  Disk /dev/sda: 4294 MB, 4294967296 bytes

  255 heads, 63 sectors/track, 522 cylinders

  Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks Id System

  /dev/sda1 * 1 13 104391 83 Linux

  /dev/sda2 14 490 3831502+ 83 Linux

  /dev/sda3 491 522 257040 82 Linux swap

  Disk /dev/sdb: 4294 MB, 4294967296 bytes

  255 heads, 63 sectors/track, 522 cylinders

  Units = cylinders of 16065 * 512 = 8225280 bytes

  Device Boot Start End Blocks Id System

  /dev/sdb1 1 2 16033+ 83 Linux

  /dev/sdb2 3 4 16065 83 Linux

  /dev/sdb3 5 127 987997+ 83 Linux

  /dev/sdb4 128 140 104422+ 83 Linux

  分区完成后将在共享数据分区上创建EXT3文件系统。

  [root@node1 RPMS]# mkfs -t ext3 /dev/sdb3

  mke2fs 1.32 (09-Nov-2002)

  Filesystem label=

  OS type: Linux

  Block size=4096 (log=2)

  Fragment size=4096 (log=2)

  123648 inodes, 246999 blocks

  12349 blocks (5.00%) reserved for the super user

  First data block=0

  8 block groups

  32768 blocks per group, 32768 fragments per group

  15456 inodes per group

  Superblock backups stored on blocks:

  32768, 98304, 163840, 229376

  Writing inode tables: done

  Creating journal (4096 blocks): done

  Writing superblocks and filesystem accounting information: done

  This filesystem will be automatically checked every 21 mounts or

  180 days, whichever comes first. Use tune2fs -c or -i to override.

  [root@node1 RPMS]# mkfs -t ext3 /dev/sdb4

  mke2fs 1.32 (09-Nov-2002)

  Filesystem label=

  OS type: Linux

  Block size=1024 (log=0)

  Fragment size=1024 (log=0)

  26208 inodes, 104422 blocks

  5221 blocks (5.00%) reserved for the super user

  First data block=1

  13 block groups

  8192 blocks per group, 8192 fragments per group

  2016 inodes per group

  Superblock backups stored on blocks:

  8193, 24577, 40961, 57345, 73729

  Writing inode tables: done

  Creating journal (4096 blocks): done

  Writing superblocks and filesystem accounting information: done

  This filesystem will be automatically checked every 29 mounts or

  180 days, whichever comes first. Use tune2fs -c or -i to override.

  配置完共享存储的分区后,需要配置裸设备供集群服务使用,裸设备在系统中的服务名称叫做rawdevices,配置文件存为/etc/sysconfig/rawdevices,我们需更改rawdevices的配置文件并,将文rawdevices服务重启,并将rawdevices配置为自动启动。Rawdevices配置文件需在每节点上保持一致。该配置需要在每台成员服务器上执行。#p#副标题#e#

  [root@node1 root]# cat /etc/sysconfig/rawdevices

  # raw device bindings

  # format:

  #

  # example: /dev/raw/raw1 /dev/sda1

  # /dev/raw/raw2 8 5

  /dev/raw/raw1 /dev/sdb1

  /dev/raw/raw2 /dev/sdb2

  [root@node1 root]# service rawdevices restart

  Assigning devices:

  /dev/raw/raw1 --> /dev/sdb1

  /dev/raw/raw1: bound to major 8, minor 17

  /dev/raw/raw2 --> /dev/sdb2

  /dev/raw/raw2: bound to major 8, minor 18

  done

  安装RHCS高可用集群及负载均衡集群软件包

  在完成操作系统基础配置后,需要安装RHCS软件包。在服务器的光驱中放入RHCS安装光盘,挂载CDROM并执行CDROM下的安装脚本。安装程序会弹出图形化的安装界面。如果在文本界面下操作则需使用RPM命令手工安装。图形界面安装如下所示:

  

 

  [root@node1 root]# mount /mnt/cdrom/

  [root@node1 root]# /mnt/cdrom/autorun &

  点击Forward继续

  

 

  #p#副标题#e#

 

  选中Red Hat Cluster Suite, 点击Details确定选中了四个主要的软件包点击Forward继续。

  确定安装了图中所示的四个软件包,点Forward继续。

  

 

  点击Finish完成安装。

  手工安装所需命令如下所示:

  [root@node1 RPMS]# rpm -ivh piranha-0.7.10-2.i386.rpm ipvsadm-1.21-9.ipvs108.i386.rpm clumanager-1.2.26.1-1.i386.rpm redhat-config-cluster-1.0.7-1.noarch.rpm

  warning: piranha-0.7.10-2.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e

  Preparing... ############################ [100%]

  1:clumanager ############################# [ 25%]

  2:ipvsadm ############################# [ 50%]

  3:piranha ############################# [ 75%]

  4:redhat-config-cluster ########################## [100%]#p#副标题#e#

  我们可以看到RHCS安装光盘中最主要的四个软件包为:

  clumanager 高可用集群组件的核心软件包

  redhat-config-cluster 图形化高可用集群配置工具

  ipvsadm LVS官方命令行配置工具

  piranha 负载均衡集群核心软件包及配置工具。

  配置RHCS高可用NFS文件服务器

  本节我们将以NFS高可用文件服务器为例说明如何配置高可用集群。在开始配置前请确定每台成员服务器上都安装了上一节提到的四个主要的软件包。

  首先在node1上启动集群配置工具

  [root@node1 RPMS]# cluster-config &

  

 

  点击菜单中的Cluster=>Shared state弹出裸设备配置,确定后点OK

  

 

  点击Members标签页并点击New按钮为集群加入所有成员服务器。

  

 

  在Member Name中填入成员服务器的主机名,关闭Software Watchdog,点击Ok保存配置。每个成员服务器都需要加入。

  

 

  配置完成员结点后我们开始配置高可用NFS文件服务器,点击菜单中的Add Exports=>NFS启动NFS配置向导

  

 

  点击Forward继续#p#副标题#e#

  

 

  在Export Directory中填入要共享的目录,该目录在后面的配置过程中会被配置为共享存储设备的挂载点,在Client Name中填入允许访问的客户端列表,在Client Options中填入NFS共享的选项。点击 Forward继续。

  在Service Name中填入服务的名称,注意这个名称不是系统服务的名称而是在集群中用于标识服务的名称,可以任意设定。在Service IP Address中填入服务使用的IP地址,这个地址用于客户端访问服务使用,发生故障时会随服务一起迁移至其它服务器上。在本示例子中我们使用HA-NFS做为服务的名字,使用IP地址192.168.1.11做为服务使用的IP地址,点击Forward继续。

  

 

  在New Device File中填入欲使用的共享存储设备,我们使用sdb3做为高可用NFS文件服务器使用的共享存储设备。在Device Mountpoint中填入该设备的挂载点,我们使用前面配置的目录/mnt/hanfs。注意在启动高可用集群服务前创建该挂载点。点击Forward继续。

  

 

  至此配置完成,点击Apply保存配置。#p#副标题#e#

  高可用集群的配置文件存放在/etc/cluster.xml完成配置后在集群配置工具中点击File=>Savew保存配置,保存完成后,该文件内容如下:

  [root@node1 RPMS]# cat /etc/cluster.xml

  至此高可用NFS文件服务器的配置完成,在集群配置工具菜单中点击File=>Quite退出集群配置工具,使用redhat-config-cluster命令启动集群状态工具。

  

 

  目前集群服务并未启动,该工具Members部分显示了每个成员服务器的状态,Services部分显示了服务的状态。我们可以通过该工具的菜单启动集群服务。在菜单中点击Cluster=>Start Local Cluster Daemons启动集群。通过Cluster=>Configure可以访问集群配置工具。

  启动集群服务后,高可用NFS文件服务器并未启动,选中该服务后点击Service下的Enable启动服务。

  

 

  高可用集群已在node1上正常运行,我们需要将集群配置文件拷贝至所有成员服务器上并启动集群服务。#p#副标题#e#

  [root@node1 RPMS]# scp /etc/cluster.xml node2:/etc/cluster.xml

  root@node2's password:

  cluster.xml 100% 607 6.5MB/s 00:00

  

 

  至此我们完成了高可用NFS文件服务器的配置,集群服务在系统中的的服务名称叫做clumanager,在测试完成后我们需要在每节点上让clumanager服务自动启动,高可用samba服务器配置与NFS配置极为相似,读者可自行练习配置。

  配置Piranha负载均衡集群

  本节我们将以HTTP服务为例说明如何使用Piranha配置工具配置基于LVS的NAT方式负载均衡集群,在本节中我们会介绍LVS的基础知识、Piranha的安装与配置。

  LVS基础

  

 

  LVS集群的结构如图所示,一组服务器通过高速的局域网或广域网相互连接,在它们的前端有一个负载均衡器(Load Balancer)。负载均衡器能无缝地将网络请求调度到真实服务器上,从而使得服务器集群的结构对客户是透明的,客户访问集群系统提供的网络服务就像访问一台高性能、高可用的服务器一样。客户程序不受服务器集群的影响不需作任何修改。本文由尚观知识库郄老师提供,更多请访问:http://www.uplook.cn


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
红帽集群套件RHCS四部曲(实战篇)
安装Heartbeat
高可用集群heartbeat全攻略
I.MX6启动
Linux下使用宿主机创建一个简单的Linux系统
linux挂载NAS
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服