集群存储 – 存储类型

存储分类-网络拓扑

DAS 直接附加存储

Direct-Attached Storage:直接附加存储
优点:
    技术简单
    传输速率最高
缺点:
    存储设备与磁盘相互绑定

NAS 网络附加存储

Network Attached Storage:网络附加存储,通过网络提供一个储存的接口
优点:
    技术相对简单
    不要求存储设备直连本机,只需在同局域网下即可
缺点:
    存储速率较慢
如:samba

SAN 存储区域网络

SAN Storage Area Network:存储区域网络
优点
    存储安全性较高
    存储速率较高
缺点
    造价昂贵
    技术难度相对较高
#将用户访问网络和存储网络分割

存储分类-存储技术

块存储

优点
    可以通过 Raid / LVM 等提供保护
    可独立使用
缺点
    不利于共享
    硬盘、ISCDI

文件存储 / 网络存储

优点
    构建资金较低
    可在不同主机之间实现共享存储
缺点
    读写速率低,传输速率慢

分布式存储 /对象存储 / 存储桶

优点
    读写效率高
    可在不同主机之间共享存储
    存储量级更高
缺点
    造价昂贵
    技术实现难度较高
    MFS、RHCS

网络拓扑-存储技术

块存储 + DAS
块存储 + NAS
块存储 + SAN
文件存储 + NAS(NFS: NetworkFilesystem)
分布式存储 + SAN

ISCSI 块存储概述+部署

概述

iSCSI与SCSI区别

iSCSI( Internet Small Computer System Interface ),又称为 IP-SAN。由 IETF 提
出,并于 2003 年 2 月 11 日成为正式的标准。与传统的 SCSI 技术比较起来,iSCSI 技术
有以下三个革命性的变化:
    把原来只用于本机的 SCSI 协议透过 TCP/IP 网络发送,使连接距离可作无限的地域延伸
    连接的 服务器 数量无限( 原来的 SCSI-3 的上限是 15 )(可以连接但不代表无线写入)
    由于是服务器架构,因此也可以实现在线扩容以至动态部署

iSCSI 的工作方式原理图

服务(设备)端 —— target 
客户(应用)端 —— initiator
逻辑单元:完成资源分割

ISCSI的构建方式

环境准备

两台虚拟机
ISCSI服务器端: 192.168.190.111
                添加一块新的硬盘
ISCSI客户端:   192.168.190.112

LVM磁盘整合

#ISCSI服务器端操作
pvcreate /dev/sdb           #创建物理卷
vgcreate vg0 /dev/sdb       #创建卷组
lvcreate -L 10G -n lv0 vg0  #创建逻辑卷
mkfs -t ext4 /dev/vg0/lv0   #格式化(mkfs.ext4)
fidsk -l
    Disk /dev/mapper/vg0-lv0: 10.7 GB, 10737418240 bytes

Target 端创建 IQN 标签

多个物理磁盘组合成单独的存储卷(或磁盘),而后以分区的方案创建分区或逻辑卷,绑定为LUN,多个LUN绑定iqn标签(用户的访问端点),将LUN挂载到客户端,就编程了sda、sdcsdd每一个LUN都变成一个独立的块。
#ISCSI服务器端操作
yum -y install scsi-target-utils 
service tgtd start
chkconfig tgtd on
#tgtadm是ISCSI服务器端的管理工具

#创建iqn标签
tgtadm -L iscsi -o new -m target -t 1 -T iqn.2021-01.com.hongfu:wyy
# -L指定驱动类型 -o指定操作 -m指定端(target服务器端) -t:iqn序号 
 #-T iqn标签   年-月-域名的反写:自定义字符串
tgtadm -L iscsi -o show -m target #查询当前的状态(iqn标签)
    target 1 1: iqn.2021-01.com.hongfu:wyy  #编号
    LUN 0 #默认绑定的策略
    #编号可以不连续,但不能重复

绑定 IQN 标签到存储设备

#tgtadm -L(指定驱动类型) iscsi -o new -m(管理的对象) logicalunit -t (tat标
#签)1 -l(逻辑存储单元的标签) 1 -b(设备名称) /dev/vg0/lv0
tgtadm -L iscsi -o new -m logicalunit -t 1 -l 6 -b /dev/vg0/lv0
tgtadm -L iscsi -o show -m target

tgtadm -L iscsi -o bind -m target -t 1 -I 192.168.190.0/24
#-I指定访问的网段
tgtadm -L iscsi -o show -m target

客户端配置

yum -y install iscsi-initiator-utils
iscsiadm -m discovery -t st -p  192.168.190.111
# -m discovery 寻找 -t st开机扫描模式 -p 扫描的机器ip地址
iscsiadm -m node -T iqn.2021-01.com.hongfu:wyy --login #--login指定登录信息
fidsk -l #查看磁盘是否
iscsiadm -m node -T iqn.2021-01.com.hongfu:wyy --logout#--logout#解除挂载

fidsk /dev/sdb
n-p-1-w
fidsk -l
mkfs.ext4 /dev/sdb1
fidsk -l
mkdir /iscsimount
mount -t ext4 /dev/sdb1 /iscsimount
cd /iscsimount
ls
    #lost+found

cat /var/log/messages >> a.txt  #测试连续读写
du -sh a.txt
cat a.txt

#vi /etc/fstab
#    /dev/sdb      /iscsimount   ext4   defaults,_netdev        0 0 (添加)  

#为什么可以多用户同时挂载,不能同时读写(同时写会造成数据损坏)
在打开文件的同时也会打开一个。swap的文件锁。文件锁,只在当前系统生效。 
#多客户端同时写入
GFS:具备同时挂载同时读写
RHCS套件
	GFS Global/Gluster  FS (GFS集群管理系统,具备分布式锁)
	RGMANAGER 节点控制器,用于控制节点移除
	CMAN 将每个几点组成一个集群
	ISCSI
将ISCSI挂载到不同客户端,创建分布式锁,就可以同时读写

#正常情况下解除iscsi步骤
1)客户端
umount /iscsimount
iscsiadm -m node -T iqn.2021-01.com.hongfu:wyy --logout#--logout#解除挂载
#若想重新使用,直接挂载
iscsiadm -m node -T iqn.2021-01.com.hongfu:wyy --login
fdisk -l


service tgtd restart 
tgtadm -L iscsi -o show -m target 
#没有持久化

ISCSI持久化

实验环境

两台虚拟机
ISCSI 服务器端:192.168.190.111
                添加一块新的磁盘
ISCSI 客户机端:192.168.190.112

ISCSI 服务器端

yum -y install scsi-target-utils
vim /etc/tgt/targets.conf#在target区域添加
  <target iqn.2020-05.com.hongfu:sdb>
        <backing-store /dev/sdb>
              vendor_id wangyang
              lun 6
        </backing-store>
        incominguser iscsiuser iscsiuser #密码认证可注释
        initiator-address 192.168.190.0/24
  </target>
service tgtd start
chkconfig tgtd on
tgtadm --lld iscsi --mode target --op show

ISCSI 客户端

yum -y install iscsi-initiator-utils
vim /etc/iscsi/initiatorname.iscsi

vim /etc/iscsi/iscsid.conf
#node.session.auth.authmethod = CHAP 取消注释
#node.session.auth.username = username 取消注释并修改认证用户
#node.session.auth.password = password 取消注释并修改认证密码
username
password

service iscsi start
chkconfig iscsi on
iscsiadm -m discovery -t st -p 192.168.190.111:3260
iscsiadm -m node -T iqn.2020-05.com.hongfu:sdb -p 192.168.190.111 -l

fidsk /dev/sdb
n-p-1-w
fidsk -l
mkfs.ext4 /dev/sdb1
fidsk -l
mkdir /iscsimount
mount -t ext4 /dev/sdb1 /iscsimount
cd /iscsimount
ls

cat /var/log/messages >> a.txt  #测试连续读写
du -sh a.txt
cat a.txt