• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

RedHatAS3.0下高可用性集群配置

发布: 2007-6-21 12:06 | 作者:   | 来源:   | 查看: 17次 | 进入软件测试论坛讨论

领测软件测试网

   
  一、实施系统软硬件环境
  硬件:p4 2.4G,80G,512M DDR
  宿主机系统:win2000pro sp4
  虚拟机软件:Vmware GSX Server 3.1
  安装Vmware GSX Server 3.1和Redhat AS3.0的基本系统
  1.安装Vmware GSX Server3.1

  相信大家都安装过workstation,过程都差不多,这里就不多废话了,有一点要提醒大家注意的是,VMware GSX Server2.5无法打开Vmware workstation4.52虚拟出来的系统,GSX Server2.5比4.52出来的要早,所以。。。。。。。
  2.安装Redhat AS3.0
  切记安装上xwindows桌面系统,设置此系统hostname为linux1,ip为10.0.0.155
  3.COPY并配置另一套AS3.0系统将安装的第一套系统的文件复制到另一个文件夹,用编辑器打开rhel3.vmx文件修改displayName?=?"Linux1"到"Linux2"
  然后修改此系统的虚拟硬件配置,将网卡删除如下图所示,进行此步的原因是因为从第一套系统COPY过来的文件如果同时运行,两个系统的MAC地址会发生冲突由于将网卡删除,所以必须删除后启动第二套系统,启动过程中kudzu进程会提示系统有多余的配置文件(就是已经被删除网卡的配置文件),选择将多余的配置文件删除,然后再关闭linux2系统,重新给linux2添一块网卡。再启动linux2
  启动linux2,启动过程中,由于重新添加了网卡,所以系统检测到了它,再重新配置网卡,设置linux2 IP地址为10.0.0.156,其它同linux1。(注:这样有人可能会觉得麻烦,不过网卡MAC地址冲突,这也是没办法的事,谁让咱们偷懒不想再重装一套系统呢)这时候检查以下各文件,修改主机名,网络配置文件
  #vi?/etc/sysconfig.network
  将HOSTNAME=linux1改为HOSTNAME=linux2
  #vi?/etc/hosts
  将10.0.0.155 linux1修改为10.0.0.156 linux2
  (注:有些朋友可能会问,怎么不直接把hosts文件里把linux1,心跳地址都写进去,其实我现在这么做是为了让文档更清晰些,到下一步的时候再添加这些,虽然稍微麻烦点,但是可以避免一些朋友看不明白) 这样两套完整的AS3.0的系统就配置成功,进入第二阶段
  
  二、使用Vmware虚拟出HA必需硬件设备,并进行配置
  1.给两个系统各虚拟一个新的网卡
  关掉两个系统,给两系统各一个增加以网桥方式工作的网卡,方法与第一图类似
  2.创建共享磁盘
  给HA系统创建共享磁盘sdb,大小为500M(自定义),如下图所示
  先打开linux1系统的设置,创建磁盘,磁盘文件名为,share.vmdk  选中Allocate all disk space now这一选项建议将新加磁盘的装入点设为scsi 1:0,如下图所示,这就是系统的裸设备然后打开linux2的设置,同样给linux2添加共享磁盘,不过这次选择已经存在的磁盘,使用的共享磁盘就是刚才为linux1创建的那个磁盘,如下图所示
  同样在Configuration?editor?里面修改共享磁盘的”Vitual?disk?node”为scsi?1:0
  这样,就给两个系统各创建了一个新网卡,又创建了一个共享磁盘。由于系统启动的时候会锁定磁盘,所以当启动linux1后共享磁盘被锁定了,linux2就起不来了,因此必须做一下设置,用编辑器打开两个Vmware文件夹的rhel3.vmx文件,最后增加一行:
  Disk.locking?=?false
  这样硬件就配置好了
  3.配置新添加的网卡
  启动linux1系统,系统在启动时候会检测到新添加的网卡,选择配置,将第二块网卡的IP设置为192.168.123.1,其它默认
  修改linux1系统的/etc/hosts文件,改后内容如下
  10.0.0.155   linux1
  192.168.123.1  linux1
  10.0.0.156   linux2
  192.168.123.2  linux2
  同时启动linux2系统,设置方法同linux1
  4.配置共享磁盘
  在linux1在shell里运行
  #fdisk /dev/sdb     //注使用parted也可以
  将添加的共享磁盘,分为两个区:sdb1和sdb2,各250M大小
  在两台服务器上分别编辑/etc/sysconfig/rawdevices文件,将分区绑定到裸设备。
  #vi?/etc/sysconfig/rawdevices
  加入
  /dev/raw/raw1 /dev/sdb1
  /dev/raw/raw2 /dev/sdb2?
  重启服务
  #service?rawdevices?restart
  启动完成后执行
  #raw ?qa,会显示以下内容
  /dev/raw/raw1: bound to major 8, minor 17
  /dev/raw/raw2: bound to major 8, minor 18
  格式化共享磁盘,每个块大小为4K
  mkfs.ext3 -j -b 4096 /dev/sdb1
  mkfs.ext3 -j -b 4096 /dev/sdb2
  注明:使用-b选项将磁盘区块设置为4K,过小的区块会导致磁盘检查的时候耗费过多的时间
  然后在linux2里修改/etc/sysconfig/rawdevices同上,然后重新启动rawdevices服务,raw ?qa检查系统
  至此,硬件准备工作完成
  
  三、安装并配置基本的HA系统
  在这里我们只将AS3.0自带的CLUSTER服务配置好,涉及到具体的http,ftp,mysql,oracle的HA服务会在下一部分介绍
  安装确认系统内安装了AS3.0的HA软件包
  我们在这里要用到的软件包主要有两个,clumanager和redhat-config-cluster
  请用rpm ?q 命令检查系统是否安装这两个软件包,如果没有安装可以通过以下方法安装
  
  使用ISO或光盘,AS3.0共有八张光盘,我们平时常用的只有前四张,另外有四张扩展光盘,其中扩展光盘的第三张是集群软件,还包括了IPVS
  
  等软件,从光盘上安装,如下图或者通过网络上下载到这两个软件包进行单独安装
  rpm --Uvh clumanager-<version>.<arch>.rpm
  rpm --Uvh redhat-config-cluster-<version>.noarch.rpm
  注:网络上比较多的是src软件包,下载下来以后得使用rpmbuild命令进行重新编译,然后在安装
  开始基本的HA配置
  在linux1系统上,启动xwindows,我这里是gnome,开始运行配置工具
  选择左下角图标 => 系统设置 =>服务器设置 => Cluster(或者在命令行里运行#redhat-config-cluster)
  出现以下画面(图里左上角乱码是因为我用的是远程XWINDOWS,设置有问题)
  
  下一步操作,点菜单栏里的群集->配置
  
  在Cluster Name处可以更改你设置集群的名字,在这里我设置为test_cluster然后我们开始添加集群内的成员,点菜单栏->新建 如下图所示(注:此时保证列表处选中Members,才可以出现下面内容)将两台机器Ip都填写进去,如下图在这里选中菜单栏里的cluster->shared state,可以查看裸设备设置.
  点击确定继续
  然后打开菜单栏clusterdaemon properties出现以下窗口
  
  这个窗口就是集群的配置窗口,详细的说明请查看redhat的官方文档
  有一个说明的就是中间的那个滑动条,就是配置服务器探测等待15秒,我们不能设的太小,这里我们就默认使用15秒
  在clumembd这个窗口里选中Enable Broadcast Heartbeating然后点确定,这时候会弹出一个窗口提示,因为我们配置的就是双节点的HA,所以不
  
  用管它,直接点确定然后在cluster configuration选择保存后退出此窗口在菜单栏 群集启动本地群集守护进程,稍等一会儿,就会出现以下状态
  
  这里就显示在linux1上的cluster配置成功
  然后我们就要配置linux2了,配置linux2其实很简单,将linux1系统下/etc/cluster.xml文件COPY到linux2的/etc/目录下就可以了(注:cluster.xml是在安装完两个软件包的时候不会产生,它是在第一次运行redhat-config-cluster命令的时候产生的,和AS2.1里的cluster.conf储存内容相同,只不过换了格式而已。这就是集群主要的配置文件,一定要确保集群上每个节点的此文件都是相同的,另外在redhat的官方文档上强烈警告用户:不要去手动的修改这个xml文件,)将此文件copy上linux2以后,在linux2命令行里执行
  #service clumanager start
  系统显示执行成功,再稍等一会儿,你就会发现在linux1上出现了变化,如下图
  
  启动关闭集群服务的命令是service clumanager start | stop (注:如果你在配置完成以后不想用图形界面监控节点运行,在shell里运行#clustat ?i 10  / / 状态监控,每10秒中刷新一次
  出现如下结果
  Cluster Status - test_cluster                     13:57:22
  Cluster Quorum Incarnation #1
  Shared State: Shared Raw Device Driver v1.2
  Member       Status
  ------------------ ----------
  10.0.0.155     Active   <-- You are here
  10.0.0.156     Active
  Service    Status  Owner (Last)   Last Transition Chk Restarts
  -------------- -------- ---------------- --------------- --- --------
  
  这样,一个没有包含任何服务的“裸”的集群系统就配置成功了,因为它没有包含任何应用,也没有什么意义,下一步我们就在上面配置一个大家最常用的http服务来测试一下
  
  四、举例说明:配置HTTP Server的HA服务
  1.给http服务增加共享磁盘
  磁盘上将存储两个系统上apache共用的程序文件,也就是说,把apache的DocumnetRoot放到这个共享磁盘上,创建方法同创建裸设备时一样,请注意,这个共享磁盘的作用不同于上面的裸设备
  2.创建共享磁盘加载点,配置两台机器上的http服务
  启动两台机器,我这里新添加硬盘为sdc,我以ext3格式将其格式化,在每个机器的根目录下创建文件夹www,为apache的web目录,同时将创建的sdc1分区加载到/www目录下
  #mkdir /www
  #mount /dev/sdc1 /www   //这一步只在linux1上进行就行
  然后安装apache,这就不用多说了吧,指

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网