企业-RHCS实现共享存储和数据同步

  • RHCS集群下ISCSI共享存储的部署

环境:
server1: ricci,luci, iscsi,mysql-server
server2:ricci,iscsi,mysql-server
server3:scsi 提供共享存储
真机: fence

快照server3,配置ip/主机名,检查yum源
server3:添加一块硬盘
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

yum install -y scsi-*	安装
vim /etc/tgt/targets.conf

<target iqn.2008-09.com.example:server.target1>
    backing-store /dev/vda		共享设备的名字
</target>

/etc/init.d/tgtd start			开启iscsi服务
tgt-admin -s		查看共享磁盘
ps ax 				看到两个tgtd的进程(只有两个为正确)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
server1和server2:安装共享磁盘的客户端服务,发现/连接共享设备

yum install -y iscsi-*						安装iscsi客户端服务
iscsiadm -m discovery -t st -p 172.25.29.3	发现共享设备
iscsiadm -m node -l							激活共享设备
fdisk -l  									查看本地设备中是否有共享设备,一般名字都为sdb
cat /proc/partitions

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

mkfs.ext4 /dev/sdb				格式化文件系统

在这里插入图片描述

  • 使用ISCSI共享设备作为mysql数据库的存储文件

server1 & server2:

yum install -y mysql-server
fdisk -cu /dev/sdb				分区	
ll -d /var/lib/mysql/			查看权限是root,因为这是mysql软件运行存放数据的,所以改回mysql
mount /dev/sdb /var/lib/mysql/	将刚才格式化的设备挂载到mysql的数据目录下
chown mysql.mysql /var/lib/mysql/		
ll -d /var/lib/mysql/
umount /var/lib/mysql/			取消挂载

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
图型化界面管理mysql

浏览器:
Failover Domains (失败回切域)
–>Add–>(设置优先级)
在这里插入图片描述
Resources
Add–>Add Script (添加启动脚本/etc/init.d/mysqld)& IP Address (添加VIP 172.25.29.200) &Filesystem (添加文件系统 ext4 /var/lib/mysql /dev/sdb)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Service Groups (添加服务组,在该服务组中添加资源)
–>Add --> Add Resource --> Add Child Resource–> Submit
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cluster			查看集群状态

在这里插入图片描述
在这里插入图片描述
当server2中mysqld服务关闭,成功转移到server1中
在这里插入图片描述
在这里插入图片描述
当mysqld服务在server1上,restart apache 服务不会成功,因为服务组添加时选择了独占

停止mysqld服务在server1上,restart apache 服务成功,此时apache服务在server1上,mysqld服务在server2上

修改apache服务组Run Exclusive, 停止server2上的mysqld,apache和mysqld都会在server1上
在这里插入图片描述

clusvcadm -r mysqld -m server2	从server2上转出
clusvcadm -d mysqld				关闭

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
单点写入:
在server1上的mysql的数据目录/var/lib/mysql 下上传一个文件,在server2上查看是否能看得到。server2上是看不到的

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

  • RHCS集群使用GFS2实现文件实时共享

GFS (Global File System)全局文件系统
GFS文件系统允许多个服务同时读写一个磁盘分区,通过GFS可以实现数据的集中管理,免去了数据同步和拷贝的麻烦,但GFS并不能孤立的存在,安装GFS需要RHCS的底层组件支持。
ext4文件系统不能多点写入

cman是集群管理服务
rgmanger是资源组管理服务
ricc是集权管理节点的基本服务
mod是联系RHCS集群前后端的服务
clvmd是集群的lvm
CMAN管理整个集群的进程
fence控制物理电源

/etc/init.d/clvmd status	确保在共享服务开启前集群逻辑卷这个存储服务是开启的
vim /etc/lvm/lvm.conf		

locking_type = 3			查看共享设备模式是否为3,3表示使用内置集群锁

lvmconf --disable-cluster	disable表示恢复默认模式1,1表示使用本地文件锁
lvmconf --enable-cluster	enable表示开启集群管理,变成模式3

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

pvcreate /dev/sdb				创建物理卷
pvs
vgcreate clustervg /dev/sdb		创建物理卷组
vgs
lvcreate -L 4G -n demo cluster	创建逻辑卷
lvs

在这里插入图片描述

mkfs.ext4 /dev/clustervg/demo

在这里插入图片描述

mount /dev/clustervg/demo /var/lib/mysql

ll -d /var/lib/mysql

chown mysql.mysql /var/lib/mysql	需要重新修改权限

ll -d /var/lib/mysql

umount /var/lib/mysql

df -h

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

mkfs.gfs2 -p lock_dlm -j 2 -t emp_ha:mygfs /dev/clustervg/demo	以gfs2格式将它格式化

-t 集群名称  -p 使用集群锁  -j 指定节点个数

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

mount /dev/clustervg/demo /var/lib/mysql
ll -d /var/lib/mysql
chown mysql.mysql /var/lib/mysql	需要重新修改权限
blkid								查看本地的设备信息

在这里插入图片描述

gfs2_tool

gfs2_tool sb /dev/clustervg/demo all

在这里插入图片描述
在这里插入图片描述
测试,可以看到实现了文件的实时共享
在这里插入图片描述
在这里插入图片描述

浏览器:
将ext4文件系统替换为gfs2:在资源组中删除之前添加的ext4文件系统,资源中同样删除文件系统db。资源中添加gfs2,资源组mysqld中添加gfs2

Resources
–>Add -->Add Script (添加启动脚本/etc/init.d/mysqld)& IP Address (添加VIP 172.25.29.200) &Filesystem (添加文件系统 gfs2 /var/lib/mysql /dev/mapper/clustervg-demo )
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
mysqld资源组点击运行,然后在命令行中进行测试,可以看到server1和server2实现了文件同时共享

总结:
实现集群当中的所有节点使用同一块共享磁盘来存放数据,并且数据在集群中各个节点之间的数据同步

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值