1、环境介绍
SCSI(Small Computer System Interface)是块数据传输协议,在存储行业广泛应用,是存储设备最基本的标准协议。从根本上说,iSCSI协议是一种利用IP网络来传输潜伏时间短的SCSI数据块的方法,ISCSI使用以太网协议传送SCSI命令、响应和数据。ISCSI可以用我们已经熟悉和每天都在使用的以太网来构建IP存储局域网。通过这种方法,ISCSI克服了直接连接存储的局限性,使我们可以跨不同服务器共享存储资源,并可以在不停机状态下扩充存储容量。
所需软件与软件结构
CentOS 将 tgt 的软件名称定义为 scsi-target-utils ,因此你得要使用 yum 去安装他才行。至于用来作为 initiator 的软件则是使用 linux-iscsi 的项目,该项目所提供的软件名称则为 iscsi-initiator-utils 。所以,总的来说,你需要的软件有:
scsi-target-utils:用来将 Linux 系统仿真成为 iSCSI target 的功能;
iscsi-initiator-utils:挂载来自 target 的磁盘到 Linux 本机上。
那么 scsi-target-utils 主要提供哪些档案呢?基本上有底下几个比较重要需要注意的:
/etc/tgt/targets.conf:主要配置文件,设定要分享的磁盘格式与哪几颗;
/usr/sbin/tgt-admin:在线查询、删除 target 等功能的设定工具;
/usr/sbin/tgt-setup-lun:建立 target 以及设定分享的磁盘与可使用的
客户端等工具软件。
/usr/sbin/tgtadm:手动直接管理的管理员工具 (可使用配置文件取代);
/usr/sbin/tgtd:主要提供 iSCSI target 服务的主程序;
/usr/sbin/tgtimg:建置预计分享的映像文件装置的工具 (以映像文件仿真磁盘);
这次的实验结构
(sdx1、sdy1是物理的磁盘通过lun连接到target虚拟的共享块,在客户端挂载这个块。这里我们添加一块硬盘sdb,创建sdb1(400m)和sdb2(500m))
2、server端配置
添加一块磁盘后
复查一下
[root@100 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 60G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 59.5G 0 part
├─rhel-swap 253:0 0 2G 0 lvm [SWAP]
├─rhel-root 253:1 0 38.6G 0 lvm /
└─rhel-home 253:2 0 18.9G 0 lvm /home
sdb 8:16 0 10G 0 disk
├─sdb1 8:17 0 400M 0 part
└─sdb2 8:18 0 500M 0 part
sr0 11:0 1 3.6G 0 rom /dvd
安装target并加入开机自启动
yum install -y target*
systemctl start target
systemctl enable target
配置target的ctl将sdb1和sdb2共享出去
(一)、block关联磁盘
[root@100 ~]# targetcli
targetcli shell version 2.1.fb37
Copyright 2011-2013 by Datera, Inc and others.
For help on commands, type 'help'.
/> /backstores/block create block1 /dev/sdb
/dev/sdb /dev/sdb1 /dev/sdb2
...................................dev
/> /backstores/block create block1 /dev/sdb1
Created block storage object block1 using /dev/sdb1.
/> /backstores/block create block2 /dev/sdb2
Created block storage object block2 using /dev/sdb2.
/> ls
o- / ..................................................................... [...]
o- backstores .......................................................... [...]
| o- block .............................................. [Storage Objects: 2]
| | o- block1 .................. [/dev/sdb1 (400.0MiB) write-thru deactivated]#新建的block
| | o- block2 .................. [/dev/sdb2 (500.0MiB) write-thru deactivated]#新建的block
| o- fileio ............................................. [Storage Objects: 0]
| o- pscsi .............................................. [Storage Objects: 0]
| o- ramdisk .........