主机名 ip 角色 SMB2 172.31.200.66 samba服务器1 SMB2 172.31.200.67 samba 服务器2 SAN 172.31.88.61 SAN存储分区 由于SAN是测试环境中划分出来的SAN,所以在此次测试中不需要安装配置 以下是对SMB1、SMB2两台samba文件服务器进行配置 SMB1上配置 在客户机安装initiator yum install iscsi-initiator-utils 建立集群中的主机互信 SMB1上 ssh-keygen –t rsa –P “” ssh-copy-id -i .ssh/id_rsa.pub root@SMB2 安装cman yum install cman 建立集群: ccs_tool create SMBcluster ccs_tool addfence meatware fence_manual ccs_tool addnode -n 1 -f meatware SMB1 ccs_tool addnode -n 2 -f meatware SMB2 将/etc/cluster/cluster.conf 复制到SMB2 /etc/cluster/cluster.conf 修改/etc/init.d/cman 第89行 将CMAN_QUORUM_TIMEOUT=45 改为 CMAN_QUORUM_TIMEOUT=0 否则无法正常启动 如果安装了NetworkManager 需要将NetworkManager 停止和开机禁用 service NetworkManager stop chkconfig NetworkManager off 安装rgmanager yum install rgmanager sercice rgmanager start yum install openais 安装gfs2,使系统支持gfs2文件系统 yum install gfs2 yum install lvm2-cluster 配置lvm支持集群 lvmconf –enable-cluster 查看启用的集群lvm cat /etc/lvm/lvm.conf 第462行 locking_type = 3 启动service clvmd start 按顺序启动以下服务并设置为开机启动 service cman start chkconfig cman on service clvmd start chkconfig clvmd start service gfs2 start chkconfig gfs2 start service rgmanager start chgkconfig rgmanager start 格式化gfs2 mkfs.gfs2 –p lock_dlm –t clustername:fsname –j number blockdevice 【停止集群的顺序】 首先在集群节点服务器上卸载挂载的gfs2共享存储 umount /mnt/SMBdata 第一步: SMB1:service rgmanager stop SMB2: service rgmanager stop 第二步: SMB1:service clvmd stop SMB2:service clvmd stop 第三步: SMB1:service cman stop SMB2:service cman stop 必须按以上步骤停止集群,否则会造成无法正常关机和重启 以上步骤除了ccs_too 建立集群部分不需要再SMB2上进行操作,其他所有操作需要在SMB2做相同操作 挂载SAN存储 客户端安装yum install iscsi-initiator-utils 查找:可用存储 iscsiadm -m discovery -t sendtargets -p 172.31.88.61 修改iscsi配置文件,采用CHAP认证 vim /etc/iscsi/iscsid.conf 找到 #CHAP Settings 去掉以下三行的注释 node.session.auth.authmethod = CHAP node.session.auth.username = username node.session.auth.password = password 重启iscsi服务 登陆连接共享存储 iscsiadm -m node -T iqn.2000-01.com.synology:rackstation.target-1.d1cd51f58a -p 172.31.88.61 --login lvm集群卷管理 lvcreate –L 40G –n lv_smbhome vg_SMB lvcremove /dev/vg_SMB/lv_home 共享目录权限问题
在此实验中由于两台服务负载提供相同服务,就涉及到共享文件权限问题 所以需要两台计算机上passwd、group、shadow三个文件完全一样,否则在使用chown、setfacl权限时,会发生混乱,由于这两个命令是通过改变uid和gid来变更文件权限,所以即使两台服务器上的用户和组都存在,但是uid和gid可能不一样,就会造成在一台服务器上修改共享存储文件权限,可在另一台上看到的不一样 在一个节点上可以通过以下方式启动某个节点的应用服务 clusvcadm –e -m 关闭某个应用服务 clusvcadm –s -m 重启某个服务 clusvcadm –R -m 切换某个服务到另一个节点 clusvcadm –r -m 例如:clusvcadm –r -m [iyunv@SMB1 ~]# clusvcadm –r smb -m SMB2 //将smb服务切换到smb2上
【监控RHCS集群状态】 cman_tool nodes –a clustat –I -3 查看集群状态 没3秒刷新一次 gfs2_tool gettune /mnt/SMBdata 查看挂载目录的属性 new_files_jdata = 0 //设置是否立即同步到磁盘,一般设置为1 gfs2_tool settune /mnt/SMBdata new_files_jdata 1
【集群扩展】 如果要添加新的节点至集群 先查看日志文件 gfs2_tool journals /mnt/SMBdata journal1 - 128MB journal0 - 128MB 可以看到,默认的只有两个 下面需要新增一个节点SMB3 gfs2_jadd –j 1 /dev/vg_SMB/lv_SMB 利用3进行挂载,当然这里的3也必须在gfs2文件集群中 扩展集群逻辑卷(保证物理卷上有足够内存) lvextend –L 60G /dev/vg_SMB/lv_SMB 用Lvs查看可以看到已经扩展到60G了 umount 强制卸载 fuser –cu /mnt/SMBdata |