Linux企业实战(五十八)——分布式文件系统MFS(三)

MFS集群的高可用

  • 实验目的:实现mfsmaster的高可用,原本只有server2一台master这样的话master是单点。现在增加server4,实现mfsmaster的高可用。
  • 实验环境:
主机角色
server2MFS Master
server3MFS Chunkserver
server9MFS Chunkserver
server10MFS Client
server4MFS Master
  • 步骤一:在server4上安装moosefs-master,在server2和server4上安装高可用套件,然后安装pacemaker等相关软件(在server2和server4上都进行安装)
    在这里插入图片描述
    在这里插入图片描述
vim /etc/yum.repos.d/dvd.repo

在这里插入图片描述

yum install -y pacemaker pcs psmisc policycoreutils-python

在这里插入图片描述
在这里插入图片描述
启动pcs的后台程序

systemctl enable --now pcsd.service

在这里插入图片描述
在这里插入图片描述

  • 步骤二:对高可用集群的相关设置
    设置高可用集群密码
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在server2上做认证
    在这里插入图片描述
    设置集群,加入相关节点
    在这里插入图片描述
    启动集群
    在这里插入图片描述
    注意:在启动集群时,会启动心跳服务corosync和集群的资源管理器pacemaker
    在这里插入图片描述
    在这里插入图片描述

  • 步骤三:为集群配置fence
    在这里插入图片描述
    注意:这里在做校验时,发现了错误,这是由于我们没有设置STONITH,
    STONITH: A common node fencing mechanism. Used to ensure data integrity by powering off “bad” nodes

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    查看使用方法
    在这里插入图片描述
    在这里插入图片描述
    注意:接下来要做的事情就是,让我们的fence代理,可以像libvirtd工具一样来进行对虚拟机的管理,因为在后面的实验过程中,我们需要将虚拟机管理的命令发送给虚拟机管理器(而不是像原来那样用鼠标来操控图形界面)

  • 步骤四:在真机classroom上安装fence代理,创建key
    在这里插入图片描述
    初始化:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    注意:在做初始化时,如果在libvirt和listeners后没有出现available backends和available listeners那么需要检查有没有安装fence-virtd-libvirt和fence-virtd-multicast,如果没有安装那么fence_virtd在启动时会报错

创建key,并且在server2和server4上创建/etc/cluster目录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

systemctl start fence_virtd.service  #启动服务

在这里插入图片描述
注意;key一定要在服务启动之前创建,否则无效,需要重启服务才有效

  • 步骤五:在master上查看fence设备,然后进行主机名和域名的映射
    在这里插入图片描述
    进行主机名和域名的映射
    在这里插入图片描述
    在这里插入图片描述

注意:这里做映射的原因是:我们在宿主机上创建虚拟机时所设置的名称为domainname,而虚拟机内部的名称为其自身的主机名,有可能我们的domainname和虚拟机的hostname不一致,所以需要做映射,因为fence代理操作虚拟机,就像是libvirt操作虚拟机一样是在=宿主机上=来进行操作的,而我们的domainname和hostname不一定相同,所以需要做映射,这样fence在操作虚拟机就可以通过映射在宿主机上操作对应的虚拟机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 步骤六:测试,通过fence来重启虚拟机
    在这里插入图片描述
    在这里插入图片描述
    再次测试:将server4的网络停掉,然后观察
    在这里插入图片描述
    在这里插入图片描述

注意:如果没有fence设备,将可能造成脑裂,因为当server4的网络断掉之后,那么server4和server2都将认为是对方出现了问题,会竞相争抢接管资源,这样就造成了脑裂;但是当有fence时就不会出现这个问题,当server4出现问题时,不会再发送信息给fence,但是server2依旧会发送信息给fence,所以fence会检测到server4出现了问题,它直接将server4重启,然后再接管资源

还有一种情况就是内核崩溃,fence也会重启集群中出现问题的主机

  • 步骤七:为集群添加VIP
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

为集群添加共享存储

  • 实验环境同上,让server3为集群提供存储
  • 步骤一:在server3上添加一块10G的磁盘,安装软件进行配置
    在这里插入图片描述
fdisk -l

在这里插入图片描述

yum install -y targetcli
systemctl start target

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 步骤二:在master节点上进行配置
yum install -y iscsi-*

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在server2上进行如下操作:

yum install -y iscsi-*

在这里插入图片描述
在这里插入图片描述
通过共享存储同步两个节点的数据

  • 步骤三:关闭所有的mfs相关的服务。然后挂在刚格式化的共享磁盘到mfs存储信息的目录下
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 步骤四:测试服务能否正常开启
    测试服务能否正常开启
    先在server4上测试
    在这里插入图片描述
systemctl stop moosefs-master
umount /dev/sdb1

然后再在server2上进行测试
在这里插入图片描述
在这里插入图片描述
添加vip的解析,同样测试服务能否正常开启
在这里插入图片描述
在这里插入图片描述

  • 步骤五:将挂载交于高可用集群来做
    在这里插入图片描述
    然后将vip的解析写入所有安装了mfs相关服务的主机上
    在这里插入图片描述

将挂载交于集群来做
在这里插入图片描述

pcs resource describe ocf:heartbeat:Filesystem  #查看该模块的使用方法

在这里插入图片描述
在这里插入图片描述

  • 步骤六:为集群添加group,将所有的资源固定在一个节点上
    首先为集群创建一个mfsservice
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    注意:我们可以看见所有的资源没有在一个节点上
    接下来将所有的集群资源固定在一个节点上,在创建时所写的顺序也就是集群启动资源时的顺序
    在这里插入图片描述
    在这里插入图片描述
    测试打开所有的chunkserver
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 步骤七:当mfsmaster被意外终止时,集群不能够自动启动服务,需要手动来修改配置文件,然后才可以启动服务
    在这里插入图片描述
    在这里插入图片描述
    手动将master进程杀掉,造成异常

ps ax

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在两个master节点主机(server2和server4上都做)
在这里插入图片描述

systemctl daemon-reload

在这里插入图片描述

  • 步骤八:测试,将当前vip所在的主机的网络停掉后,集群资源能不能自动迁移到另外一台集群主机上
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    但是存在一个问题,当server4的网络出现问题时,fence会将server4进行重启,当server4完全启动后,又会将集群的资源抢夺到自己主机上
    在这里插入图片描述
    那么我们设置让集群中的故障主机重启后,不再抢夺集群资源来进行管理
    在这里插入图片描述
    再进行测试,损坏server4的内核
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值