RHCS 实现高可用——共享存储,gfs2文件系统

配置共享存储

在server2上更改内存
RHCS 实现高可用——共享存储,gfs2文件系统_第1张图片
添加一个8G的虚拟磁盘
RHCS 实现高可用——共享存储,gfs2文件系统_第2张图片

[root@server2 ~]# yum install -y scsi-*
[root@server2 ~]# vim /etc/tgt/targets.conf 
[root@server2 ~]# /etc/init.d/tgtd start

这里写图片描述
在server1主机:

[root@server1 ~]# yum install iscsi-*
[root@server1 ~]# iscsiadm -m discovery -t st -p 172.25.68.2   #访问共享磁盘
[root@server1 ~]# iscsiadm -m node -l
[root@server1 ~]# /etc/init.d/clvmd status  #保证clvmd服务开启,要开启才可能同步

RHCS 实现高可用——共享存储,gfs2文件系统_第3张图片
在server4主机:

[root@server4 ~]# yum install iscsi-*
[root@server4 ~]# iscsiadm -m discovery -t st -p 172.25.68.2   #访问共享磁盘
[root@server4 ~]# iscsiadm -m node -l
[root@server4 ~]# cat /proc/partitions 

RHCS 实现高可用——共享存储,gfs2文件系统_第4张图片

[root@server4 ~]# fdisk -l    #查看磁盘共享成功

RHCS 实现高可用——共享存储,gfs2文件系统_第5张图片
在server1主机:

[root@server1 ~]# pvcreate /dev/sda
  Physical volume "/dev/sda" successfully created
[root@server1 ~]# vgcreate clustervg /dev/sda
  Clustered volume group "clustervg" successfully created
[root@server1 ~]# lvcreate -L 4G -n demo clustervg
  Logical volume "demo" created
[root@server1 ~]# mkfs.ext4 /dev/clustervg/demo 

在server4上同步共享lvm逻辑卷
RHCS 实现高可用——共享存储,gfs2文件系统_第6张图片

[root@server4 ~]# yum install -y mysql-server

在server1主机上:

[root@server1 ~]# clusvcadm -d nginx

RHCS 实现高可用——共享存储,gfs2文件系统_第7张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第8张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第9张图片

[root@server1 ~]# yum install -y mysql
[root@server1 ~]# yum install -y mysql-server
[root@server1 ~]# cd /var/lib/mysql
[root@server1 mysql]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server1 mysql]# df

RHCS 实现高可用——共享存储,gfs2文件系统_第10张图片

[root@server1 mysql]# ll -d /var/lib/mysql/
[root@server1 mysql]# chown mysql.mysql /var/lib/mysql/
[root@server1 mysql]# ll -d /var/lib/mysql/
[root@server1 mysql]# /etc/init.d/mysqld start
[root@server1 mysql]# /etc/init.d/mysqld stop
[root@server1 ~]# umount /var/lib/mysql/

这里写图片描述
RHCS 实现高可用——共享存储,gfs2文件系统_第11张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第12张图片

RHCS 实现高可用——共享存储,gfs2文件系统_第13张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第14张图片
添加资源的顺序
Address —-> Filesystem —-> Script
(因为服务开启的顺序就是先分配VIP,然后开启存储,然后再是服务)
RHCS 实现高可用——共享存储,gfs2文件系统_第15张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第16张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第17张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第18张图片
测试:
RHCS 实现高可用——共享存储,gfs2文件系统_第19张图片
如果刚刚在共享的磁盘中写入一个index.html文件,那么这时就直接访问的是存储中的网页文件,因为挂载在了httpd的默认发布页面,文件系统也只会看到这个文件并去读取.


gfs2文件系统

   为了实现多个节点对于一个文件系统同时读写操作,GFS使用锁管理器来管理
I/O操作,当一个写进程操作一个文件时,这个文件就被锁定,此时不允许其它进 
程进行读写操作,直到这个写进程正常完成才释放锁,只有当锁被释放后,其它读
写进程才能对这个文件进行操作,另外,当一个节点在GFS文件系统上修改数据 
后,这种修改操作会通过RHCS底层通信机制立即在其它节点上可见。

   双组模式 , 立刻同步,相当于同时写入,所以比主备的使用率高,两边都在用

[server1]

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

RHCS 实现高可用——共享存储,gfs2文件系统_第20张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第21张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第22张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第23张图片

[root@server1 ~]# df
[root@server1 ~]# lvs
[root@server1 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server1 ~]# df
[root@server1 ~]# vgs
[root@server1 ~]# lvextend -L +4G /dev/clustervg/demo  #报错,没有那么大内存
[root@server1 ~]# lvextend -l +1023 /dev/clustervg/demo

RHCS 实现高可用——共享存储,gfs2文件系统_第24张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第25张图片

[root@server1 ~]# resize2fs /dev/clustervg/demo
[root@server1 ~]# df -h
[root@server1 ~]# cd /var/lib/mysql/
[root@server1 mysql]# cp /etc/passwd  .
[root@server1 mysql]# ls

RHCS 实现高可用——共享存储,gfs2文件系统_第26张图片
[server4]

[root@server4 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server4 ~]# df
[root@server4 ~]# cd /var/lib/mysql/
[root@server4 mysql]# ls   #passwd同步更新过来
[root@server4 ~]# umount /var/lib/mysql/

RHCS 实现高可用——共享存储,gfs2文件系统_第27张图片
这里写图片描述
[server1]

[root@server1 ~]# lvremove /dev/clustervg/demo 
[root@server1 ~]# lvcreate -L 4G -n demo clustervg
[root@server1 ~]# mkfs.gfs2 -j 3 -p lock_dlm -t westos:mygfs2 /dev/clustervg/demo
[root@server1 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server1 ~]#  cd /var/lib/mysql/
[root@server1 mysql]# ls
[root@server1 mysql]# chown mysql.mysql .
[root@server1 mysql]# ll
total 0
[root@server1 mysql]# ll -d .
drwxr-xr-x 2 mysql mysql 3864 Aug  3 16:38 .
[root@server1 mysql]# /etc/init.d/mysqld start

[server4]同步server1上的文件

[root@server4 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server4 ~]# ll -d /var/lib/mysql/

这里写图片描述

[root@server4 ~]# gfs2_tool sb /dev/clustervg/demo all  #查看gfs2的信息
[root@server4 ~]# gfs2_tool journals /dev/clustervg/demo  #查看gfs2的日志信息
[root@server4 ~]# ip addr

RHCS 实现高可用——共享存储,gfs2文件系统_第28张图片
RHCS 实现高可用——共享存储,gfs2文件系统_第29张图片
[server1]和[server4]做下列同样的操作

[root@server1 mysql]# /etc/init.d/mysqld stop
[root@server1 ~]# 
[root@server1 ~]# vim /etc/fstab
/dev/mapper/clustervg-demo      /var/lib/mysql  gfs2    _netdev         0 0
[root@server1 ~]# mount -a
[root@server1 ~]# df

RHCS 实现高可用——共享存储,gfs2文件系统_第30张图片
这里写图片描述

[root@server1 ~]#  clusvcadm -r mysql -m server4

测试:在server4上查看
RHCS 实现高可用——共享存储,gfs2文件系统_第31张图片

你可能感兴趣的:(RHCS 实现高可用——共享存储,gfs2文件系统)