tsm在做vmware的文件级别的恢复也使用了iscsi,原理是Data Protection for VMware Windows Recovery Agent
把vmware磁盘备份快照mount上来作为iscsi target,linux/windows guest作为iscsi initiator来直接读取iscsi target上
的磁盘数据恢复.
具体参考官网文档:
http://www-01.ibm.com/support/docview.wss?uid=swg21473127
iscsi协议可以用来搭建IP-SAN环境,即Initiator 为主机系统,发出读、写数据请求,target为磁带库磁盘阵列之类的存储资源,
主机上的tsm等备份软件就可以快速备份数据到带库上.
这里测试是使用scsi软件让Linux系统仿真成为iSCSI target,通过网络实现linux磁盘的共享.
iscsi target:
1. yum install -y scsi-target-utils
[root@rhel64-64bit sbin]# rpm -qa|grep -i scsi
scsi-target-utils-1.0.24-18.el6.x86_64
2.iSCSI可共享包括镜像文件(.img),分区(partition),单块硬盘(无需分区),raid磁盘阵列、逻辑卷LVM等:
mkdir /iscsi
dd if=/dev/zero of=/iscsi/yo1.img bs=1M count=200
ll -h /iscsi 查看生成的img大小是否正确
3.配置/etc/tgt/targets.conf文件
--iqn.年-月.域名反过来写 :target名称
backing-store /iscsi/yo1.img --设备路径
initiator-address 192.168.1.0/24 --允许访问该target的initiator的网段
incominguser vbirduser vbirdpasswd --initiator访问target要提供的用户名和密码
安装scsi后,安装了下面的管理命令工具:
[root@rhel64-64bit sbin]# locate tgt|grep sbin
/usr/sbin/tgt-admin
/usr/sbin/tgt-setup-lun
/usr/sbin/tgtadm
/usr/sbin/tgtd
/usr/sbin/tgtimg
或者可以使用上面命令配置target名称,设备名称等,但重启tgtd服务后命令行配置的信息全被清除了
tgt-admin实际也是调用了tgtadm,可以tgtadm --help查看参数和语法
tgtadm --lld iscsi --mode target --op new --tid 2 --targetname iqn.2018-06.com.redhat:yo2disk --创建target
tgtadm --lld iscsi --mode logicalunit --op new --tid 2 --lun 2 --backing-store /iscsi/yo2.img --创建lun
tgtadm --lld iscsi --mode target --op bind --tid 2 --initiator-address 192.168.1.0/24 --允许访问网段
tgtadm --lld iscsi --mode account --op new --user yo2user --password 123456
tgtadm --lld iscsi --mode account --op bind --tid 2 --user yo2user
4.service tgtd start 启动服务
tgt-admin --show 查看配置好的target信息
LUN: 1
Type: disk
SCSI ID: IET 00010001
SCSI SN: beaf11
Size: 210 MB, Block size: 512
Online: Yes
Removable media: No
Prevent removal: No
Readonly: No
Backing store type: rdwr
Backing store path: /iscsi/yo1.img
Backing store flags:
Account information:
youser
ACL information:
192.168.1.0/24
iscsi initiator:
1.yum install -y iscsi-initiator-utils
root@rhel64-64bit send_targets]# rpm -qa|grep iscsi
iscsi-initiator-utils-6.2.0.873-26.el6.x86_64
2./etc/iscsi/initiatorname.iscsi里面是 iscsi的initiator的名称
/etc/iscsi/iscsid.conf 配置discovery target和联机时候的用户名和密码,也就是target设置的incominguser
node.session.auth.username = youser
node.session.auth.password = yopassword
discovery.sendtargets.auth.username = youser
discovery.sendtargets.auth.password = yopassword
3.发现目标
iscsiadm -m discovery -t sendtargets -p 192.168.1.103:3260
[root@rhel64-64bit send_targets]# iscsiadm -m discovery -t st -p 192.168.1.103:3260
Starting iscsid: [ OK ]
192.168.1.103:3260,1 iqn.2018-06.com.redhat:yo1disk
service iscsi start 启动服务
此时查看:/var/lib/iscsi/
[root@rhel64-64bit nodes]# pwd
/var/lib/iscsi/nodes
[root@rhel64-64bit nodes]# ls
iqn.2018-06.com.redhat:yo1disk
[root@rhel64-64bit send_targets]# pwd
/var/lib/iscsi/send_targets
[root@rhel64-64bit send_targets]# ls
192.168.1.103,3260
4.查看发现的目标:
[root@rhel64-64bit send_targets]# iscsiadm -m node
192.168.1.103:3260,1 iqn.2018-06.com.redhat:yo1disk
此时在target端可以查看到initiator的信息:
[root@rhel64-64bit sbin]# tgt-admin --show
Target 1: iqn.2018-06.com.redhat:yo1disk
System information:
Driver: iscsi
State: ready
I_T nexus information:
I_T nexus: 1
Initiator: iqn.1994-05.com.redhat:56bfb66af5 ----initiator的信息
Connection: 0
IP Address: 192.168.1.109
6.如果想删除发现的target:
iscsiadm -m node -T targetname --logout
iscsiadm -m node -T targetname -o [delete|new|update]
7.windows作为iscsi initiator比较简单:控制面板->管理工具->iscsi发起程序
发现->发现门户输入target的ip端口
目标->连接