本文档说明如何在RHEL 6.4(Red Hat Enterprise
Linux 6.4)下安装RHCS(Red Hat Cluster Suite)。
安装RHCS完全可以通过脚本进行,所需的文件列表如下:
脚本 |
功能 |
prepare-repo.sh |
准备yum源 |
install-rhcs.sh |
安装RHCS |
setup-rhcs.sh |
设置RHCS环境 |
run_all.sh |
运行以上所有脚本 |
RHEL-Media.repo |
定义yum源来自光盘 |
以此脚本都可单独运行,如果希望一步完成RHCS的安装和环境设置,只需运行run_all.sh脚本。注意,在运行prepare-repo.sh或run_all.sh必须确保RHEL系统的安装盘已经挂载到系统了。
下面讲解这些脚本所做的工作。
RHCS的安装包在RHEL系统的安装盘中。从光盘源中安装RHCS不仅速度快,而且不需要联网。
prepare-repo.sh将RHEL-Media.repo拷贝到/etc/yum.repos.d,然后重新建立yum的缓存。请确保光盘挂载到/media/cdrom,如果光盘挂载到其他地方,例如RHEL_6.2 x86_64 Disc 1,可以简单通过软链接的方式解决,这样就不需要修改RHEL-Media.re
ln -s /media/RHEL_6.2\
x86_64\ Disc\ 1/ /media/cdrom
RHEL-Media.repo的内容如下:
[c6-media-HighAvailability]
name=CentOS-$releasever
- Media HighAvailability
baseurl=file:///media/cdrom/HighAvailability
gpgcheck=0
enabled=1
[c6-media-LoadBalancer]
name=CentOS-$releasever
- Media LoadBalancer
baseurl=file:///media/cdrom/LoadBalancer
gpgcheck=0
enabled=1
[c6-media-ResilientStorage]
name=CentOS-$releasever
- Media ResilientStorage
baseurl=file:///media/cdrom/ResilientStorage
gpgcheck=0
enabled=1
[c6-media-ScalableFileSystem]
name=CentOS-$releasever
- Media ScalableFileSystem
baseurl=file:///media/cdrom/ScalableFileSystem
gpgcheck=0
enabled=1
[c6-media-Server]
name=CentOS-$releasever
- Media Server
baseurl=file:///media/cdrom/Server
gpgcheck=0
enabled=1
安装如下组件:
组件名 |
含义 |
所在组 |
cman |
Cluster Manager,集群管理器 |
高可用性 High Availability |
rgmanager |
Resource Group Manager,高可用性服务管理组件 |
高可用性 High Availability |
ccs |
Cluster Configuration System,集群配置系统。使用命令配置集群 |
高可用性 High Availability |
lvm2-cluster |
Logical Volume Manager,逻辑卷管理器 |
弹性存储 Resilient Storage |
gfs2-utils |
Global File System 2,全局文件系统 |
弹性存储 Resilient Storage |
luci |
Conga用户界面服务器。使用界面配置集群 |
高可用性管理 High Availability Management |
安装命令如下:
yum install -y cman
rgmanager ccs lvm2-cluster gfs2-utils
yum install -y luci
也可以这样安装:
# 中文环境:
yum groupinstall -y
"高可用性" "弹性存储"
yum groupinstall -y
"高可用性管理"
# 英文环境:
yum groupinstall -y
"High Availability" "Resilient Storage"
yum groupinstall -y
"High Availability Management"
ACPI是Advanced Configuration and Power Management Interface(高级配置和电源接口)的缩写。需要禁用ACPI的原因:
“如果将集群节点配置为使用整合的fence设备执行fence操作,则需要为该节点禁用ACPI软关机。禁用ACPI软关机可让整合的fence设备立即完全关闭节点,而不是尝试彻底关闭(例如:shutdown-hnow)。否则,如果启用了ACPI软关闭,整合的fence设备将至少消耗4秒时间关闭一个节点(请参考下面的备注)。另外,如果启用ACPI软关闭,且在关闭过程中出现节点panic或者停滞,则整合的fence设备将无法关闭该节点。在那些情况下,fencing操作将被延迟或者失败。结果是当使用整合的fence设备对节点执行fence操作并启用ACPI软关闭时,集群恢复会很慢并需要管理员介入方可恢复。”
执行命令:
chkconfig "acpid"
off
SELinux是Security-Enhanced Linux的缩写。
执行命令:
# 将/etc/selinux/config文件中的SELINUX=enforcing改为SELINUX=disabled
sed -e
"s/SELINUX=enforcing/SELINUX=disabled/" \
"/etc/selinux/config" >
"/etc/selinux/config_new"
mv -f
"/etc/selinux/config_new" "/etc/selinux/config"
setenforce 0
如果根本不想用防火墙,那么执行以下命令即可:
chkconfig iptables
off
service iptables
stop
如果要启用防火墙,那么需要为RHCS开启以下端口:
IP |
端口号 |
协议组件 |
5404,5405 |
UDP |
corosync/cman(集群管理器) |
11111 |
TCP |
ricci(推广更新的集群信息) |
21064 |
TCP |
dlm(发布的锁定管理器) |
16851 |
TCP |
modclusterd |
8084 |
TCP |
luci(Conga用户接口服务器) |
要开启以上的端口,执行以下命令,或者通过system-config-firewall进行设置:
#先启动防火墙
service iptables
start
# 在corosync中请使用以下过滤。使用端口5045接收多播流量。
iptables -I INPUT -p
udp -m state --state NEW -m m ultiport --dports 5404,5405 -j ACCEPT
# 在ricci中:
iptables -I INPUT -p
tcp -m state --state NEW -m m ultiport --dports 11111 -j ACCEPT
# 在modclusterd中:
iptables -I INPUT -p
tcp -m state --state NEW -m m ultiport --dports 16851 -j ACCEPT
# 在luci中:
iptables -I INPUT -p
tcp -m state --state NEW -m m ultiport --dports 8084 -j ACCEPT
# 在DLM中:
iptables -I INPUT -p
tcp -m state --state NEW -m m ultiport --dports 21064 -j ACCEPT
# 执行这些命令后,请运行以下命令。
service
iptables save ; service iptables restart
需要禁用NetworkManager的原因:
“不支持在集群节点中使用NetworkManager。如果您已经在集群节点中安装了NetworkManager,您应该删除或者禁用该程序。”
禁用命令如下:
chkconfig NetworkManager
off
service
NetworkManager stop
chkconfig cman on
chkconfig rgmanager
on
chkconfig ricci on
chkconfig luci on