RHCS套件实现HA高可用(二)

续我的上片博文:https://blog.csdn.net/y_yang666/article/details/87541559
高可用之mysql+共享磁盘(ext4文件系统)的部署:
一.给server3添加磁盘用来共享

在这里插入图片描述

二.共享磁盘的配置server1,server2及server3

server3:

[root@server3 ~]# yum install -y scsi-*   ##安装软件
[root@server3 ~]# vim /etc/tgt/targets.conf      ##编辑文件,将磁盘共享出来(修改38,39,40行)
 38 <target iqn.2019-02.com.example:server.target1>
 39     backing-store /dev/vda
 40 </target>
[root@server3 ~]# /etc/init.d/tgtd start    ##开启服务后共享成功
[root@server3 ~]# ps ax   ##注意tgtd只能有这两个进程
 1048 ?        Ssl    0:00 tgtd
 1051 ?        S      0:00 tgtd

server1:

[root@server1 cluster]# yum install -y iscsi-*   
[root@server1 cluster]# iscsiadm -m discovery -t st -p 172.25.4.3    ##发现共享出来的设备
[root@server1 cluster]# iscsiadm -m node -l    ##登陆

在这里插入图片描述

[root@server1 cluster]# fdisk -l   ##查看共享设备

在这里插入图片描述
server2:

[root@server2 ~]# yum install -y iscsi-* 
[root@server2 ]# iscsiadm -m discovery -t st -p 172.25.4.3    ##发现共享出来的设备
[root@server2 ]# iscsiadm -m node -l    ##登陆
[root@server2 ]# fdisk -l   ##查看共享设备

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

三.server1与server2配置mysql服务

server1:

[root@server1 cluster]# yum install -y mysql-server   ##安装mysql服务
[root@server1 cluster]# mkfs.ext4 /dev/sdb   ##格式化磁盘为ext4文件系统格式

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

[root@server1 cluster]# mount /dev/sdb /var/lib/mysql/   ##挂载磁盘到/var/lib/mysql目录下
[root@server1 cluster]# chown mysql.mysql /var/lib/mysql/   ##修改目录所有人和所有组
[root@server1 cluster]# ll -d /var/lib/mysql/
drwxr-xr-x 3 mysql mysql 4096 Feb 15 16:32 /var/lib/mysql/
[root@server1 cluster]# /etc/init.d/mysqld start   ##开启服务
[root@server1 cluster]# /etc/init.d/mysqld stop 
[root@server1 cluster]# umount /var/lib/mysql/    ##关掉服务,将其卸载掉,方便后面实验

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

[root@server2 ~]# yum install -y mysql-server
四.给集群添加新的资源及故障回切域

将之前的apache服务disabled掉
1.添加资源,选择Resources,点击add进行添加
1)添加vip:
在这里插入图片描述
2).添加Filesystem
在这里插入图片描述
3).添加Script脚本
在这里插入图片描述
2.添加故障回切域,点击Failover Domains进行故障切换域设置,接着点击add进行添加在这里插入图片描述

六.资源整合

选择Service Groups,点击add进行添加
在这里插入图片描述
接着点击Add Resource
选择前面添加过的vip,script脚本及Filesystems
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

测试:

资源整合完后,点击submit提交后,发现没有mysql服务在srever1上运行,vip也在server1上(因为mysql服务server1的优先级高)
在这里插入图片描述
clustat查看集群状态
在这里插入图片描述
df查看共享磁盘已经挂载到/var/lib/mysql下
在这里插入图片描述

高可用之mysql+共享磁盘(gfs2文件系统)

上面我们用的是ext4文件系统进行格式化,ext4是本地文件系统,不支持实时同步,同步的文件显示需要另一台进行卸载再挂载的操作,所以一般都会使用集群化文件系统gfs2

gfs2简介:

  • GFS2是一个基于GFS的先进的集群文件系统,能够同步每台主机的集群文件系统的metadata,能够进行文件锁的管理,并且必须要redhat cluster suite(RHCS)支持,GFS2可以grow,进行容量的调整,不过这是在LVM基础上
  • GFS是Redhat公司开发的一款集群文件系统,目前的最新版本是GFS2,GFS文件系统允许多个服务同时读写一个磁盘分区,通过GFS可以实现数据的集中管理,免去了数据同步和拷贝的麻烦,但GFS并不能孤立的存在,安装GFS需要RHCS的底层组件支持
GFS2文件系统的部署:

1.停掉之前高可用实验添加的apache和mysql服务

[root@server1 ~]# clusvcadm -d mysql
[root@server1 ~]# clusvcadm -d apache

在这里插入图片描述
2.保证clvmd服务是开启的
在这里插入图片描述
3.server1上创建lvm逻辑卷

[root@server1 ~]# pvcreate /dev/sdb
[root@server1 ~]# vgcreate clustervg /dev/sdb
[root@server1 ~]# lvcreate -L 4G -n demo clustervg

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.格式化逻辑卷

[root@server1 ~]# mkfs.gfs2 -p lock_dlm -j 2 -t westos_ha:mygfs2 /dev/clustervg/demo  ##lock_dlm 是文件系统使用的锁定协议,因为这是一个集群的文件系统;westos_ha是集群名;mygfs2是名称可随意

在这里插入图片描述
查看信息:gfs2_tool sb /dev/clustervg/demo all
在这里插入图片描述
5.挂载及相关配置

[root@server1 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server1 ~]# ll -d /var/lib/mysql/
drwxr-xr-x 2 root root 3864 Feb 16 10:54 /var/lib/mysql/
[root@server1 ~]# chown mysql.mysql /var/lib/mysql/    ##更改所有人及所有组
[root@server1 ~]# ll -d /var/lib/mysql/
drwxr-xr-x 2 mysql mysql 3864 Feb 16 10:54 /var/lib/mysql/

在这里插入图片描述
6.server2上挂载共享磁盘,当server1开启mysql服务时,server2下的/var/lib/mysql目录下自动生成相应文件
server1上开启mysql服务
在这里插入图片描述
在这里插入图片描述
server2上挂载磁盘,查看/var/lib/mysql目录下文件(自动生成,说明同步成功):
在这里插入图片描述

web集群管理网页删除之前添加的ext4文件系统

1.先删除整合资源中的Filesystems(ext4文件系统):点击Service Group,双击mysql,接着点击Filesystems部分中的remove进行删除,删除完后点击submit提交即可
在这里插入图片描述
2.在删除Resource资源中的dbdata(之前的ext4文件系统):点击Resource,选中dbdata,点击delete进行删除
注意:要删除dbdata,必须要先删除整合资源中的Filesystem(ext4文件系统)
在这里插入图片描述

手动添加存储:

本来可以直接在图形界面将gfs2资源添加到集群中,但此添加方式是单点的,不方便,并且只能将磁盘挂载到优先级较高的服务器上,,所以建议手动添加(即设置开机自动挂载)

1.在server1上设置开机自动挂载

[root@server1 mysql]# vim /etc/fstab 
写入:UUID="44ff85d9-05a2-617b-8cc0-54f2532d0701"     /var/lib/mysql  gfs2 _netdev 0 0
[root@server1 lib]# umount /var/lib/mysql/
[root@server1 lib]# mount -a    ##执行挂载策略
[root@server1 lib]# df   ##查看

在这里插入图片描述
在这里插入图片描述
2.在server2上也设置开机自动挂载

[root@server2 mysql]# vim /etc/fstab 
写入:UUID="44ff85d9-05a2-617b-8cc0-54f2532d0701"     /var/lib/mysql  gfs2 _netdev 0 0
[root@server1 lib]# umount /var/lib/mysql/
[root@server1 lib]# mount -a    ##执行挂载策略
[root@server1 lib]# df   ##查看

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

测试(验证同步):

1.在server2上的/var/lib/mysql目录下建立文件
在这里插入图片描述
2.直接在server1上该目录下查看,是否存在passwd文件,存在说明同步成功
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值