RHCE 6认证之RHCS集群(RHCS+GFS2+ISCSI)

   RHCS(RedHat CLUSTER SUITE:红帽群集套件)是一款能够提供高性能、高可靠性、负载均衡、高可用性的集群工具集,一个集群通常有两个或两个以上的计算机(称为“节点”或”成员“)共同执行一个任务。

网络存储技术:

DAS(Direct Attached Storage)直连式存储,最常用的,是指将存储设备通过SCSI接口或光纤通道直接连接到一台计算机上。

NAS(Network Attached Storage)网络连接式存储,例如:Linux的NFS和Windows的CIFS共享来实现,通过网络来挂载。

SAN(Storage Area Network )存储区域网络,指存储设备相互连接且与一台服务器或一个服务器群相连的网络,没有系统,主要是高速信息存储。

   GFS(Google File System)GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。是RHCS为集群系统提供的一个存储解决方案,它允许集群的多个节点在块级别上共享存储,多个节点同时挂载一个文件系统分区,而使文件系统数据不受破坏,单一的ext2或ext3无法做到。

   为了实现多个节点对一个文件系统同时进行读写操作,GFS使用锁管理器(DLM)来管理I/O操作:当一个写进程操作一个文件时,此文件被锁定,其它进程无法进行读写操作,操作完成后,RHCS底层机制会把此操作在其它节点上可见。

环境概述:
node1.rhcs 192.168.0.202
node2.rhcs 192.168.0.203
管理端与共享存储Luci+iscsi 192.168.0.204
VIP:192.168.0.206

一、配置iscsi共享存储+Luci集群web管理
1、创建LVM卷,方便以后扩展
# fdisk –l                         //查看磁盘分区状况;
# pvcreate /dev/sdb
# pvdisplay

# vgcreate myvg /dev/sdb
# vgdisplay

# lvcreate -n mylv -L 10G myvg     //-L:指定创建逻辑卷的大小
# lvdisplay 


2、创建iscsi-target共享卷:
yum –y install scsi-target-utils
vim /etc/tgt/targets.conf
backing-store /dev/myvg/mylv #此处以逻辑卷作iscsi存储
initiator-address 192.168.0.202 #允许两个节点都访问此ISCSI存储的LUN
initiator-address 192.168.0.203

service tgtd start
chkconfig tgtd on
tgt-admin -show  
or  
# tgtadm --lld iscsi --op show --mode target        //查看存储的实际访问状况


3、安装Luci-Web管理工具
yum install -y luci
service luci start
chkconfig luci on
https://192.168.0.204:8084                         //访问luci管理页面!

二、在两台集群节点安装集群软件并连接iscsi共享存储
1、安装集群软件
yum install -y ricci cman rgmanager lvm2-cluster gfs2-utils
service acpid stop
service NetworkManager stop                      //rhcs集群不支持networkmanager管理,需要停掉
chkconfig acpid off 
chkconfig NetworkManager off
service ricci start
chkconfig ricci on
passwd ricci #设置ricci用户密码,在luci添加节点里面填写的密码

2、连接iscsi存储
yum install -y iscsi-initiator-utils
Service iscsi start 
chkconfig iscsi on
iscsiadm -m discovery -t st –p 192.168.0.204             //发现iscsi共享卷,默认端口3260
iscsiadm -m node -l iqn.2010-10.com.test:target          //登陆iscsi存储
fdisk –l                                                 //查看iscsi磁盘 
iscsiadm -m node –l                                      //login session
iscsiadm -m node –u                                      //logout session
iscsiadm -m session                                      //view session

3、节点创建LVM卷 (节点1创建即可,节点2会自动同步)
集群软件必须都安装启动(clvmd、cman ),要不然会报错如下:

pvcreate /dev/sda1
vgcreate havg /dev/sda1 -c y     //-c y :让vg支持cluster
vgdisplay                        //查看是否支持cluster,会显示cluster yes
lvmconf --enable-cluster         //启动集群
service clvmd restart            //重新加载集群
lvcreate -n halv -L 10G havg

4、创建GFS2集群文件系统
mkfs.gfs2 -p lock_dlm -t webcluster:target -j 3 /dev/havg/halv 
-p:定义为DLM锁方式,如果不加此参数,挂载的分区就像ext4格式,信息不能同步。
-t:集群名和自定义标志名,也可以是共享卷名
-j:GFS分区中最多支持多少个节点同时挂载,通常设定值为节点数+1


在node01、node02上分别挂载存储:
# mkdir /data
# mount -t gfs2 /dev/havg/halv /data
# mount -a
# mount


5、开机自动挂载及测试
# echo "/dev/havg/halv /data gfs2 _netdev,defaults 0 0" >> /etc/fstab
也可以用blkid命令查看其UUID,然后用UUID来挂载此ISCSI磁盘
# blkid /dev/havg/halv

# echo "UUID=xxxxxxxxxxxx /data gfs2 _netdev,defaults 0 0" >> /etc/fstab
测试是否同步:在节点1/data目录下创建index.html会自动同步到节点2/data下,然后修改apache根目录为/data,很简单,略!


三、登陆Luri创建集群

https://192.168.0.204:8084         //登陆Luci配置页面,输入本机root和密码进入

进入Manage Clusters

点击Create集群

点击Create Cluster

开始创建集群,加入集群的两个节点会重新启动,重启完毕后,集群就创建成功!

点击Fence Devices创建fence设备,因为不是用的服务器,没有fence设备,随意建了一个SRF,实际生产环境中,必须使用fence硬件设备。

Add添加fence设备

回到nodes菜单下,添加fence设备,两个节点配置一样,点击某个节点,出现节点详情后点击add fence method添加一个method,点击add fence instance,添加刚才设定的SRF。

配置完成!


四、创建集群服务组

Web高可用需要两个资源:虚拟ip(192.168.0.206)和/etc/init.d/httpd

点击Resources

点击Add添加资源,两个节点配置基本一样。

添加故障域,并设备节点优先级(注意如果要做双机互备,就要添加两个故障域),一个节点可以在多个故障域中:

新建服务组,添加刚才新建的两个资源进服务组,我的service group死活都不然添加,坑爹,以下是大致步骤:

点击“service”选项,单击“add”按钮,如下图所示:

点击上图的”add a resource”按钮,添加资源

启动服务组

测试

通过上图可以看出节点192.168.1.232是活跃的,正在接管资源响应用户的访问请求。或在192.168.1.232主机上执行下面的命令


五、管理命令

# clustat                      //查看每个节点集群活动状

# ccs_test connect             //检测是否连接成功

# ccs_tool                       //检测运行状态是否正常

target如果有外连接会停止失败,只有杀死tgtd进程。

提示:

1、每个节点上必须启动clvmd服务,不然无法挂载/dev/havg/halv到/data

2、确保每个节点的cman、rgmanager、ricci、modclusterd、clvmd服务能正常启动,若不能启动则要手动将服务启动起来;并设置开机自动启动。

Service cman status (start,stop)

Service rgmanager status (start,stop)

Service clvmd status (start,stop)

3、动态查看群集服务日志

tail –f /var/log/messages

请使用浏览器的分享功能分享到微信等