HA  ##高可用架构

通过配置HA(高可用性)服务创建集群以满足用户对高可用性的要求。红帽高可用性附加组件中的HA服务管理关键组件rgmanager可为现成的应用程序部署冷故障切换。cman_tool是管理CMAN集群管理器的程序。它可提供加入或者离开集群、杀死节点或者更改集群中节点预期仲裁投票的功能。

 

配置环境:3Linux6.5的虚拟机,2台用作节点主机node1台用作接管主机M

 

1.安装并配置Ricci
在节点主机上:
yum install -y  ricci 
echo westos | passwd  --stdin  ricci  ##更改ricci用户的密码为westos
chkconfig  ricci on  ##设置ricci开机自启
/etc/init.d/ricci  start  ##启动ricci


2.安装并配置Luci
在接管主机上:
yum install  -y  luci-0.26.0-48.el6.x86_64
chkconfig  luci on  ##设置luci开机启动
/etc/init.d/luci  start  ##启动luci
yum install -y httpd  
/etc/init.d/httpd  start  ##启动apache
访问https://server6.example.com:8084


3.创建新的集群

利用接管主机所对应的超级用户登录,登陆过程如图:

 

 

HA_架构

HA_高可用性_02 

 

创建新的集群,如图:

HA_架构_03

 

创建成功后集群节点显示,如图:

 HA_架构_04

 

4.创建并配置Fence设备  ##Fence守护进程
在物理机(172.25.254.35)上:
yum install -y fence-*
fence_virtd -c  ##配置
systemctl  restart fence_virtd  ##启动Fence
cd /etc/cluster
dd if=/dev/urandom of=fence_xvm.key bs=128 count=1  ##从/dev/urandom下随机地截取一份大小128K的数据到fence_xvm.key
scp /etc/cluster/fence_xvm.key 172.25.35.4:/etc/cluster
scp /etc/cluster/fence_xvm.key 172.25.35.5:/etc/cluster
访问https://server6.example.com:8084/cluster/gf_ha/
添加Fence设备,如图:


HA_高可用性_05

HA_架构_06

 

在节点主机上分别添加Fence设备,如图:

 

HA_架构_07

HA_高可用性_08

HA_高可用性_09

HA_高可用性_10

在一台节点主机上:

fence_node server5.example.com  ##server5
将会重启




5.添加故障切换域

在具体集群页面中,点击集群显示顶部的「Failover Domains」 为集群配置故障切换域,此时会显示为这个集群配置的障切换域,如图:

 HA_高可用性_11

 

给集群添加一些资源(IPApache),如图:

 

HA_架构_12

HA_架构_13


 

在节点主机上分别安装Apache:
yum install -y httpd
cd /var/www/html/  ##进入Apache的默认发布目录
echo server4.example.com > index.html
echo server5.example.com > index.html
给集群添加服务组,如图:


HA_高可用性_14 

给服务添加资源,如图:

 HA_高可用性_15

HA_架构_16


在一台节点主机上:
clusvcadm -r apache server5.example  ##启动server5上的Apache服务
clustat  ##查看集群状态
如图:

HA_高可用性_17 

 

6.远程磁盘共享

在M端:
添加一个8G的磁盘用来共享
yum install -y scsi-target-utils.x86_64 0:1.0.24-10.el6
vim  /etc/tgt/targets.conf
<target iqn.2016-06.com.example:server.disk>
    backing-store /dev/vdb
    initiator-address 172.25.35.4
    initiator-address 172.25.35.5
</target>
/etc/init.d/tgtd start  ##启动tgt
tgt-admin -s  ##查看共享磁盘的路径及用户是否正确
在两台节点主机上:
yum install -y iscsi-initiator-utils-6.2.0.873-10.el6.x86_64
iscsiadm -t st -m discovery -p 172.25.35.6  ##查找iSCSI服务器所提供的iSCSI目标
iscsiadm -m node -l  ##登录服务器上的iscsi目标
在server4上:
fdisk -cu /dev/sda
p
1
 
t
8e
pw
w
在server5上:
fdisk -l  ##查看磁盘共享信息


 

 

7.分布式文件系统共享
在server4上:
pvcreate  /dev/sda1  ##创建物理卷
vgcreate  clustervg  /dev/sda1  ##创建物理卷组
lvcreate -L 2G -n lv1 clustervg  ##创建逻辑卷
mkfs.ext4  /dev/clustervg/lv1  ##将逻辑卷格式化成ext4文件系统
访问https://server6.example.com:8084,如图:


 HA_架构_18

 

8.集群化文件系统共享
在节点主机上:
clusvcadm -d apache  ##停掉Apache服务
访问https://server6.example.com:8084删掉分布式文件系统的资源配置,如图:


HA_高可用性_19 

lvremove  /dev/clustervg/lv1  ##删除逻辑卷
lvcreate -L 2G -n gao clustervg  ##创建名为gao,大小为2G的新逻辑卷
clusvcadm -e apache  ##启动Apache服务
mkfs.gfs2  -p lock_dlm  -t gf_ha:mygfs2 -j 3 /dev/clustervg/gao  ##(lock_dlm)标准锁定模式,用于集群的文件系统,指定由 mkfs.gfs2 命令生成的日志数目为3,在使用lock_dlm协议时用来指定锁定表格字段的唯一识别程序,由两个部分组成,用冒号隔开(没有空格)为:ClusterName:FSName
mount /dev/mapper/clustervg-gao /var/www/html/
vim /etc/fstab
UUID="b66a6842-55fe-3c6f-5816-60e17630f1fa”  /var/www/html  gfs2   _netdev(网络文件系统)  0  0
gfs2_jadd -j 2 /dev/clustervg/gao  ##在挂载的文件系统中添加两份日志
lvextend -l +511  /dev/clustervg/gao  ##扩展逻辑卷
两台节点主机上都能查看到扩展后逻辑卷