Chinaunix首页 | 论坛 | 博客
  • 博客访问: 442683
  • 博文数量: 40
  • 博客积分: 6011
  • 博客等级: 准将
  • 技术积分: 1490
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-06 10:50
文章分类

全部博文(40)

文章存档

2011年(1)

2008年(39)

我的朋友

分类: LINUX

2008-07-20 11:12:05

在RHEL5+SAN平台上实现Cluster功能
本文主要说明在RHEL5+SAN架构上如何实现Cluster功能。本文仅仅从操作步骤方面加以说明,并配以简单的操作说明,不能替代具体的操作文档。关于Cluster配置中的具体操作方法,详见Redhat官方操作文档。
本文为非正式文档,仅作为内部资料供工程师交流使用,不作为用户手册提交给最终用户。
一、        参考文献:
        Cluster_Administration_5.pdf
        Cluster_Logical_Volume_Manager_5.pdf
        Cluster_Suite_Overview_5.pdf
        Global_File_System_5.pdf
        rh-gfs-en-6_1.pdf
二、        系统平台
        硬件平台:
        服  务  器:Dell 2950
        存储  阵列:CX3-10(SAN)
        光纤交换机:Brocade SW200E
        HBA卡:Qlogic
        软件平台:
        操作系统:RHEL5 AP(其中包括Redhat Cluster Suite)
三、        实现步骤:
1.        连接硬件平台
a)        正确安装HBA卡到服务器中
b)        正确连接服务器、光纤交换机与SAN
2.        正确配置SAN以及光纤交换机,记录下设备的IP地址、用户名及密码供配置Cluster使用。
关于SAN的配置和光纤交换机的配置这里就不做详细介绍,请参考随机的用户手册或配置文档。
3.        安装操作系统
选择默认安装即可,这里需要注意的是Cluster已经在运行,需要再增加一台服务器到Cluster中,此时安装操作系统的时候,请保持此服务器处于独立状态,即不要连接到Cluster,否则有可能出现安装问题(LVM)。
在安装服务器中,需要配置如下信息:
        配置网络信息
1)        IP地址:一般情况下。每台服务器至少需要配置2块网卡:第一块网卡主要用于与外界系统进行通讯;第二块网卡主要用于Cluster内部主机间的通讯。
2)        服务器名称,其格式如下:主机名+域名,如Portal1.itv.njcatv.net。Redhat Cluster配置工具Conga要求服务器名称必须遵循以上格式,否则服务器将不能通过Conga被加入Cluster。
        防火墙,在配置时可以关闭防火墙,但是为了确保系统的安全,我们建议按如下方法配置防火墙,当然,以上配置也可以在正确安装系统后进行配置。
1)        增加端口列表:
端口                协议        说明
        177     udp         XDMCP                提供远程桌面访问服务
        8084   tcp          luci                     Conga user interface server
        11111  tcp          ricci                    Conga remote agent
        5404    udp         cman                   Cluster Management
        5405    udp         cman                   Cluster Management
        14567   tcp         gndb                   gndb
        16851   tcp         modclusterd          part of Conga remote agent
        21064   tcp         dlm                     Distributed Lock Manager
        41966   tcp         rgmanager            high-availability service management
        41967   tcp         rgmanager            high-availability service management
        41968   tcp         rgmanager            high-availability service management
        41969   tcp         rgmanager            high-availability service management
        50006   tcp         ccsd                    Cluster Configuration System daemon
        50007   udp         ccsd                    Cluster Configuration System daemon
        50008   tcp          ccsd                    Cluster Configuration System daemon
        50009   tcp          ccsd                    Cluster Configuration System daemon
2)        配置SELinux
在缺省配置时此配置为“强制”,在使用Conga配置Cluster时需要修改为“允许”。否则可能在使用Conga配置Cluster是出现错误。
3)        管理用户,以方面用户远程管理服务器时使用。(不是必须)
完成以上配置后,系统将自动重新启动已完成系统的安装工作。
4.        启用luci服务(Conga)和clvmd(逻辑卷管理)服务
打开“系统管理服务器设置服务”,选中clvmd和luci,以便在下次启动时系统能够自行加载以上两个服务。
5.        配置luci服务
a)        配置luci管理员密码
注意在进行luci管理员密码初始化时,请确保luci服务没有运行
# luci_admin init
Initializing the Luci server


Creating the 'admin' user

Enter password: clusteradmin(输入初始密码)
Confirm password: clusteradmin(再次确认初始密码)

Please wait...
The admin password has been successfully set.
Generating SSL certificates...
Luci server has been successfully initialized
Restart the Luci server for changes to take effect
eg. service luci restart
b)        启动luci服务
有两种方式启动luci服务:1.通过“系统管理服务器设置服务”图形界面启动luci服务;2.在终端窗口下使用命令行方式启动luci服务,命令格式如下:service luci start,如下所示:
# service luci restart
Shutting down luci:                                                                                        [ OK ]
Starting luci: generating https SSL certificates... done
[ OK ]

Please, point your web browser to to access luci
同理,其他服务也可以通过以上方式启动、停止或检查其状态,命令格式如下:
# service command start|stop|status|restart
对于系统服务,可以通过如下命令来检查其工作状态
# chkconfig --list
6.        配置XDMCP服务
1)        对于XDM服务配置
a)        修改服务运行级别为“5”
打开/etc/inittab文件,配置服务初始化运行级别为“5”,如下:
id:5:initdefault:
2)        配置XDMCP服务自启动
For GDM:
打开/etc/gdm/custom.conf文件,查找[xdmcp]选项,并设置“Enable”值为“1”,如下:
[xdmcp]
Enable=1
For KDM:
打开/usr/share/config/kdm/Xaccess文件,并删除下述内容前面的“#”
修改前:
#* #any host can get a login window ==>
修改后:
* #any host can get a login window
打开/usr/share/config/kdm/kdmrc文件,查找[xdmcp]选项,并设置“Enable”值为“true”,如下:
[xdmcp]
Enable=true
3)        配置防火墙,增加端口(177/UDP)端口到防火墙
4)        至此,已经完成XDMCP服务的配置,之后重器服务器,启动XDMCP服务。
5)        下载并安装客户端(Xmanager 2.xx)并启动Xmanager服务,输入所需要管理的服务器的IP地址、用户名及密码,即可对服务器进行远程管理。
7.        编辑/etc/hosts文件(每台服务器都需要进行此配置)
打开/etc/hosts文件,将cluster中所有的服务器信息插入文件(包括本机信息),这是信息包括:1)IP地址(用于Cluster内部通信);2)主机名。
注意:建议以上服务器信息存储在/etc/host文件的最前面,放在文件的结尾处,在配置Cluster的时候可能会存在错误,如conga将本机的IP地址解析为:127.0.0.1。
8.        在SAN上注册服务器到。将SAN随机应用软件中的代理(Agent)服务安装到所有的服务器上,之后启动此服务,此服务会自动将服务器注册到SAN上。之后你可以登录SAN,分配主机到指定的LUN(如果存在多个LUN的话)
9.        至此,配置Cluster的前期准备工作已经完成,将所有的服务器重启,准备进行Cluster配置。
10.        待所有的服务器都已经启动后,打开浏览器,在地址栏中键入luci服务的链接地址,如下:
[url=][/url],输入管理员名称及密码,进入配置页面,如图:

图1 Luci配置页面
11.        增加一个Cluster。点击cluster,进入cluster配置页面,点击左侧配置栏中的“Create a new Cluster”,按照页面所提示,输入所有需要加入Cluster的服务器的名称及root的密码,并选中“Enable Shared Storage Support”,之后点击“Summit”提交请求。在等待一会儿之后,你可以看到一个Cluster并创建。
注意:Cluster的名称不能超过15个字节,否则启动服务的时候会报错!从而导致系统不能正常运行。
还有,你仅仅需要运行一次,Cluster软件就会被自动下载并安装到每一个Cluster节点,同时在/etc/cluster目录下创建一个cluster.conf的文件。
另外,在创建Cluster系统中系统将自动重启,这种现象是正常的,待所有节点重启完成后,你将可以看到如下页面:

图2 luci配置页面
12.        创建QDisk及GFS2
QDisk:主要用途是防止系统因部分节点故障,从而致使整个Cluster不能正常工作。
GFS2:一种支持多节点共享同一个磁盘分区的文件系统。这是本次工作要实现的一个主要功能。下面是本次创建QDisk及GFS2的详细过程,供大家参考,同时也希望大家对其中的不足进行指点。
1)        使用Fdisk工具对系统进行分区,在本文中,我创建了一个扩展分区:/dev/sdb5,并在此分区上创建了两个逻辑卷,下面是具体的操作过程。
2)        创建物理卷组
# pvcreate /dev/sdb5
3)        查看物理卷组信息
# pvs
4)        创建逻辑卷组
# vgcreate Cluster /dev/sdb5
5)        查看逻辑卷组信息
# vgs
6)        创建逻辑卷
        创建QDisk逻辑卷
# lvcreate -L10M -n QDisk Cluster
注:Qdisk分区不能小于10M。
        创建Portal逻辑卷
# lvcreate -L127.98G -n Portal Cluster
7)        查看逻辑卷信息
# lvs
8)        格式化成逻辑卷/dev/Cluster/QDisk
# mkqdisk -c /dev/Cluster/QDisk -l QDisk_Portal
        QDisk_Portal:为此逻辑卷的卷标,请记住此卷标,在配置Quorum参数时需要用到此卷标
9)        格式化成逻辑卷/dev/Cluster/Portal为GFS格式
# mkfs.gfs2 -p lock_dlm -t Cluster_Portal:gfs2 -j 16 /dev/Cluster/Portal
        Cluster_Portal:为此逻辑卷的卷标,此卷标必须与Cluster服务的名称相同
        Gfs2:为此卷的文件系统格式
10)        Mount
# mount.gfs2 -t gfs2 /dev/Cluster/Portal /mnt/Cluster_Portal/
11)        修改mount点的属性
# chmod 777 /mnt/Cluster_Portal
12)        修改/etc/fstab文件,将此逻辑卷在每次启动的时候自动mount,如下:
# vi /etc/fstab
/dev/VolGroup00/LogVol00 /                    ext3    defaults        1 1
LABEL=/boot             /boot                 ext3    defaults        1 2
devpts                  /dev/pts              devpts  gid=5,mode=620  0 0
tmpfs                   /dev/shm              tmpfs   defaults        0 0
proc                    /proc                 proc    defaults        0 0
sysfs                   /sys                  sysfs   defaults        0 0
/dev/VolGroup00/LogVol01 swap                 swap    defaults        0 0
/dev/Cluster/Portal     /mnt/Cluster_Portal   gfs2    defaults        0 0
注:由于是逻辑卷,因此需要启动LVM2服务,以便能够正常激活此卷。
修改完成/etc/fstab文件后,试着曾经重新启动过服务器,在服务器启动过程中发现出现两个错误:1)Setting up Logical Volume Management;2)Mounting local filesystems。不过系统起来后却发现逻辑卷已经自动mount,使用也正常,不知是为什么?还请大家指点!
13.        修改Cluster全局配置、配置Fence资源及Service
按照Redhat官方手册说明,可以使用Conga继续完成Cluster的配置,但我配置了几次均告失败,当我对配置进行更新时,仅仅在1台服务器下面发现了更新的配置文件:cluster.conf.update,不只是什么原因。还请了解的人来补充说明。
不过虽然上述配置失败,你可以通过Redhat提供的另外一个配置工具:Cluster Management(你可以通过“系统管理服务器设置Cluster management”来进入配置界面)来完成以上的配置过程。配置界面如下:

图3 Cluster Management配置界面
依次完成以上的配置后,注意要保存配置文件,并且将用此配置文件对Cluster中所有的节点进行更新。至此Cluste已经配置完成,你可以通过luci配置页面看到以上资源(服务)及其状态。最终的Cluster配置文件如下:
# cat /etc/cluster/cluster.conf


        
        
               
                        
                                
                        

                        
               

               
                        
                                
                        

                        
               

               
                        
                                
                        

                        
               

        

        
               
        

        
               
        

        
               
               
                        
               

               
                        
               

        


至此本次Cluster配置完成。重新启动后,通过luci管理页面可以看到所有节点及相关服务都已经正常启动并运行。
这里需要说明一点的是有些功能我并没有配置,在今后的配置中可能会存在一些问题,请大家补充
阅读(2337) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-04-15 23:55:45

前面不是设置了qdisk,到了后到了cluster.conf里面却又没有体现出有这玩艺儿,误导啊,误导啊。

chinaunix网友2009-03-25 19:10:49

增加一个Cluster。点击cluster,进入cluster配置页面,点击左侧配置栏中的“Create a new Cluster”,按照页面所提示,输入所有需要加入Cluster的服务器的名称及root的密码,并选中“Enable Shared Storage Support”,之后点击“Summit”提交请求。在等待一会儿之后,你可以看到一个Cluster并创建。 请问,下载软件是从RHN去下载的?集群的node都必须有RHN?