RHCE之iSCSI

RHCE之ISCSI

ISCSI介绍
iscsi协议的运行方式类似客户端-服务器配置。客户端系统将启动器软件配置为将scsi命令发送到远程服务器存储目标。访问的iscsi目标在客户端系统上显示为本地且未格式化的scsi块设备,等同于通过scsi布线、FC直连或FC交换光纤连接的设备。
RHCE之iSCSI_第1张图片

iscsi使用ACL来执行LUN屏蔽,从而管理相应目标和LUN对启动器的可访问性。还可以使用CHAP身份验证来限制对目标的访问权限。在使用设备全球编号(WWN)进行软区域划分管理限制方面,iscsi ACL与FC类似。尽管FC交换级别强制端口限制(硬区域划分)没有任何可比较的iscsi机制,但以太网VLAN可以提供类似的隔离安全性。
与本地块设备不同的是,iscsi网络访问块设备可通过众多远程启动器发现。典型的本地文件系统(如ext4、XFS和btrfs)不支持同时多系统挂载,这会导致严重的文件系统损坏。集群系统利用全局文件系统(GFS2)解决多系统访问权限,其旨在提供分布式文件锁定和并发多节点文件系统挂载。
iSCSI的工作方式分为服务端(target)与客户端(initiator):
服务端:即存放硬盘或RAID设备的存储端,目的是为客户端提供可用的存储。
客户端:使用服务端的服务器主机。
实验需要两台虚拟主机来完成,分别是:

实验环境

主机名称 操作系统 IP地址
system1 RHEL7 172.24.10.11
system2 RHEL7 172.24.10.12

逻辑单元LUN(即Logical Unit Number)是使用iSCSI协议中的重要概念,因为当客户机想要使用服务端存储设备时都必需输入对应的名称(Target ID),而一个服务端可能会同时提供多个可用的存储设备,于是便用LUN来详细的描述设备或对象,同时每个LUN Device可能代表一个硬盘或RAID设备,LUN的名称由用户指定。

第一步:安装

服务端target (此环境中为system1)

yum -y install targetd targetcli  (默认安装完毕)

[root@system1]# systemctl start targetd   (启动iSCSI target服务程)

[root@system1]# systemctl enable target
[root@system1]# systemctl enable targetd
ln -s '/usr/lib/systemd/system/targetd.service' '/etc/systemd/system/multi-
user.target.wants/targetd.service'    (将iSCSI target服务程序添加到开机启动项)

第二步:创建储存对象

配置iSCSI服务端共享资源,targetcli是用于管理iSCSI服务端存储资源的专用配置命令,它能够提供类似于前面学习过的fdisk命令的交互式配置功能,将iSCSI共享资源的配置内容抽象成了“目录”的形式,我们只需要将各类配置信息写入到对应“目录”中即可,难点主要集中在认识每个“参数目录”的作用,当把配置参数正确妥当的填写到“目录”中后,iSCSI服务端也就能够提供存储设备资源服务了。

(1)创建pv,vg,lv

pvcreate /dev/sda
vgcreate iscsi_vg /dev/sda3
lvcreate -n iscsi_store -l 100%VG iscsi_vg

(2)配置防火墙

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="172.24.10.12/24" port port="3260" protocol="tcp" accept"
firewall-cmd --reload

(3)创建储存
targetcli命令用于管理iSCSI target存储设备

[root@system1 ~]# targetcli
/> /backstores/block create iscsi_store /dev/iscsi_vg/iscsi_store  #create 新块设备名称 使用的设备  
/> cd /iscsi                                                       #进入iscsi目录下配置
/iscsi> create iqn.2014-08.com.example:system1                 #iqn(规范写法 iqn.日期.域名反写:描述)
/iscsi> cd iqn.2014-08.com.example:system1/tpg1/ 
/iscsi/.../tpg1> acls/ create iqn.2014-08.com.example:system2   #配置访问规则(谁可以访问)
/iscsi/.../tpg1> luns/ create /backstores/block/iscsi_store     #将之前创建的块设备与配置iSCSI文件关联
/iscsi/.../tpg1> portals/ create 172.24.10.11                   #target端IP及端口(端口可以不写)
/> saveconfig                                                   #保存配置
/>exit                                                  
注意:创建 portals 时,可能会出错,因为系统默认已经创建了 0.0.0.03260 这个 portal,所以要先删除,命令是 portals/ delete 0.0.0.0 3260,删除后再执行一次上面的命令就可以创建了


(4)重启服务
systemctl restart target

至此 target端配置完毕!!!!!

第三步:客户端配置

(1)安装客户端:iscsi-initiator-utils

yum search iscsi
yum install -y iscsi-initiator-utils

(2)修改InitiatorName

vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2014-08.com.example:system2   #等号后面为修改后内容

(3)发现设备
man iscsiadm (shift +G) 在文档末尾找到example标题
RHCE之iSCSI_第2张图片

发现设备:
iscsiadm --mode discoverydb --type sendtargets --portal 172.24.10.11 --discover

登陆设备:
iscsiadm --mode node --targetname iqn.2014-08.com.example:system1 --portal 172.24.10.11:3260 --login

检查:
iscsiadm -m session

(4)使用 iSCSI 设备,分区并挂载

[root@system2 ~]# fdisk -l /dev/sdb (sdb 为新发现的 iscsi 设备名)
[root@system2 ~]# fdisk /dev/sdb (创建 2100M 的 Linux 分区/dev/sdb1)
[root@system2 ~]# partprobe /dev/sdb (通知文件系统)
[root@system2 ~]# mkfs.ext4 /dev/sdb1 (格式化分区为 ext4)
[root@system2 ~]# mkdir /mnt/data (准备挂载目录)
[root@system2 ~]# vim /etc/fstab (让新分区自动挂载)
/dev/sdb1 /mnt/data ext4 _netdev 0 0 (注意挂载选项是 _netdev)
[root@system2 ~]# mount -a
[root@system2 ~]# df -hT

至此,iSCSI实验完毕,仅供参考学习使用!

目录

  • RHCE之ISCSI
      • 实验环境
    • 第一步:安装
    • 第二步:创建储存对象
    • 第三步:客户端配置
      • 目录

“`

注意:此次实验针对本人RHCE,省略部分已提前配置步骤,望参考时注意**。

你可能感兴趣的:(我的的RHCE之旅,linux)