Linux:RHCS 实现高可用(共享存储,gfs2文件系统)

一·iscsi

1.iscsi是什么

iSCSI( Internet Small Computer System Interface 互联网小型计算机系统接口)是由IBM下属的两大研发机构一一加利福尼亚AImaden和以色列Haifa研究中心共同开发的,是一个供硬件设备使用的、可在IP协议上层运行的SCSI指令集,是一种开放的基于IP协议的工业技术标准。该协议可以用TCP/IP对SCSI指令进行封装,使得这些指令能够通过基于IP网络进行传输,从而实现SCSI和TCP/IP协议的连接。对于局域网环境中的用户来说,采用该标准只需要不多的投资就可以方便、快捷地对信息和数据进行交互式传输及管理。

2.优点

iSCSI的发展成了必然,其市场价值是很多服务器厂商看中的,也给无法承担 FC SAN高成本光纤基础结构的中间市场客户所看中,主要因为iSCSI通过集SCSI、以太网和TCP/IP等技术于一身,存在很多优点:
1.建立在常见和稳定的标准上,很多IT工作人员对这些技术熟悉,更容易接受;
2.由于TCP/IP协议附件减少了聘请专业人员的需要,所以安装和维护成本较低,使用iSCSI创建TCO更低的存储局域网络;
3.由于减少了不同的网络和布线,使用常规以太网交换机而不必专用光纤通道交换机,很大程度提高了互操作性;
4.传播无极限!可以在全球IP网络上进行以太网传输,实际传播距离没有限制;
5.速度可以扩充到10Gbit,将可以和同步光网络速率相媲美。
因此,iSCSI 具有低廉、开放、大容量、传输速度高、兼容、安全等诸多优点,其优越的性能使其自发布之始便受到市场的关注与青睐,看来,iSCSI 必将成为网络存储领域内的核心技术之一。那么,到底谁最适合使用iSCSI SAN呢?目前看来iSCSI SAN最适合需要在网络上存储和传输数据流和/或大量数据的机构,如:ISP-互联网服务提供商;SSP-存储服务提供商;需要远程数据复制和灾难恢复的机构;IT资源、基础设施和预算均十分有限的企业和机构等。市场上,除了各类作业平台的Initiator软件之外,已有愈来愈多厂商推出各种各类的 iSCSI相关产品。如iSCSI适配卡、iSCSI交换机、iSCSI存储服务器、iSCSI存储设备、iSCSI桥接器及iSCSI网关器。

二·iscsi

1.配置共享存储

首先需要建立一个8G的磁盘和更改大小为512
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第1张图片
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第2张图片

在server2中:

[root@server2 ~]# yum install scsi-*
[root@server2 ~]# vim /etc/tgt/targets.conf  ##编辑内容
[root@server2 ~]# fdisk -l   ##查看磁盘
[root@server2 ~]# /etc/init.d/tgtd start   

在 /etc/tgt/targets.conf 文件:
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第3张图片
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第4张图片

在server1中:

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

在server4中:

[root@server4 ~]# yum install iscsi-*  -y
[root@server4 ~]# iscsiadm -m discovery -t st -p 172.25.71.2
[root@server4 ~]# iscsiadm -m node -l
[root@server4 ~]# cat /proc/partitions
[root@server1 ~]# fdisk -l    ##查看磁盘是否共享成功

Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第5张图片
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第6张图片

在server1中:

[root@server1 ~]# pvcreate /dev/sda
[root@server1 ~]# vgcreate clustervg /dev/sda
[root@server1 ~]# lvcreate -L 4G -n demo clustervg
[root@server1 ~]# mkfs.ext4 /dev/clustervg/demo

在server4中同步lvm逻辑卷:
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第7张图片

需要在集群管理界面删除nginx
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第8张图片
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第9张图片

在server1中:

[root@server1 ~]# yum install mysql  -y
[root@server1 ~]# yum install -y mysql-server
[root@server1 ~]# cd /var/lib/mysql/
[root@server1 mysql]# ls
[root@server1 mysql]# ll -d .
[root@server1 mysql]# cd
[root@server1 ~]# mount /dev/clustervg/demo /var/lib/mysql/  ##挂载
[root@server1 ~]# df
[root@server1 ~]# ll -d /var/lib/mysql/
[root@server1 ~]# chown mysql.mysql /var/lib/mysql/   ##更换用户和组
[root@server1 ~]# ll -d /var/lib/mysql/
[root@server1 ~]# /etc/init.d/mysqld start
[root@server1 ~]# /etc/init.d/mysqld stop

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

在server4中:

[root@server4 ~]# yum install -y mysql-server
[root@server4 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server4 ~]# ll -d /var/lib/mysql/
[root@server4 ~]# /etc/init.d/mysqld start
[root@server4 ~]# /etc/init.d/mysqld stop
[root@server4 ~]# umount /var/lib/mysql/
[root@server4 ~]# df

Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第11张图片

进入管理界面:
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第12张图片
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第13张图片
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第14张图片
注意:如果建立不了组,需要在主机上执行一条命令,手动开启节点
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第15张图片

测试:

[root@server4 ~]# clustat   ##查看集群状态(在哪个主机上工作就查看数据库)
[root@server4 ~]# mysql 

Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第16张图片

2.gfs2文件系统

在哪工作就在哪停止
[root@server4 ~]# clustat 
[root@server4 ~]# clusvcadm -d mysql  ##停止

进入管理界面:
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第17张图片

[root@server1 ~]# df -h
[root@server1 ~]# lvextend -L  +4G  /dev/clustervg/demo    ##太大,添加不了
  Rounding size to boundary between physical extents: 1.00 GiB
  New size given (256 extents) not larger than existing size (1024 extents)
  Run `lvextend --help' for more information.
[root@server1 ~]# lvextend -l +1023 /dev/clustervg/demo 
[root@server1 ~]# lvs                                          
[root@server1 ~]# vgs
[root@server4 ~]# lvs                                        
[root@server4 ~]# vgs
[root@server1 ~]# resize2fs /dev/clustervg/demo 
[root@server1 ~]# df -h
[root@server1 ~]# cd /var/lib/mysql/
[root@server1 mysql]# ls
[root@server1 mysql]# cp /etc/passwd  .
[root@server1 mysql]# ls
[root@server4 ~]# df -h
[root@server4 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server4 ~]# cd /var/lib/mysql/
[root@server4 mysql]# ls
[root@server1 ~]# umount /var/lib/mysql/
[root@server1 ~]# df
[root@server1 ~]# lvs                                            
[root@server1 ~]# lvremove /dev/clustervg/demo
[root@server1 ~]# lvcreate -L 4G -n demo clustervg
[root@server1 ~]# lvs              
[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 ~]# df
[root@server1 ~]# cd /var/lib/mysql/
[root@server1 mysql]# ll  -d
[root@server1 mysql]# chown mysql.mysql .
[root@server1 mysql]# ll  -d
[root@server4 ~]# mount /dev/clustervg/demo /var/lib/mysql/
[root@server4 ~]# df
[root@server4 ~]# cd /var/lib/mysql/
[root@server4 mysql]# ll -d
[root@server4 mysql]# ls
[root@server4 mysql]# gfs2_tool sb /dev/clustervg/demo all
[root@server4 mysql]# gfs2_tool journals /dev/clustervg/demo 
[root@server4 mysql]# df -h
[root@server1 mysql]# /etc/init.d/mysqld stop
[root@server1 mysql]# vim /etc/fstab   ##永久挂载
[root@server1 mysql]# cd
[root@server1 ~]# umount /var/lib/mysql/
[root@server1 ~]# df
[root@server1 ~]# mount -a
[root@server1 ~]# df
[root@server4 mysql]# vim /etc/fstab  ##永久挂载
[root@server4 mysql]# cd
[root@server4 ~]# umount /var/lib/mysql/
[root@server4 ~]# df
[root@server4 ~]# mount -a
[root@server4 ~]# df
[root@server4 ~]# clustat 
[root@server1 ~]# clusvcadm -e mysql
[root@server1 ~]# clusvcadm -r mysql -m server4
[root@server4 ~]# ip addr
inet 172.25.71.4/24 brd 172.25.41.255 scope global eth0
inet 172.25.71.100/24 scope global secondary eth0
[root@server4 ~]# mysql 

在server1和server2中永久挂载内容:
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第18张图片

测试:
Linux:RHCS 实现高可用(共享存储,gfs2文件系统)_第19张图片

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