iSCSI学习

1.基本概念
NAS     网络附加存储
SAN     存储区域网络
RAID     磁盘阵列
2.NAS与SAN区别?
一个提供按照网络协议的网络文件系统,一个提供磁盘;
NAS提供文件系统不可以格式化
SAN提供的磁盘可以任意格式化
备注:有时间要自己安装下freeNAS测试下,体验下
3.iSCSI
1)    iSCSI target    服务端
iSCSI initiator 客户端
2) centos 使用tgt来实现 iSCSI target,其中tgt的软件名称为scsi-target-utils;initiator的软件名称为iscsi-initiator-utils
所以:
scsi-target-utils:用来将linux系统模拟成iSCSI target功能
iscsi-initiator-utils:挂在来自target的磁盘到linux本机上
3) scis-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:创建预分享的镜像文件设备的工具(用镜像文件模拟磁盘)
4.iSCSI 服务端安装
1)yum install scsi-target-utils
2)分享硬盘:
i)镜像文件
//建立大型文件:
#mkdir /srv/iscsi
#dd if=/dev/zero of=/srv/iscsi/disk1.img bs=1G count=10
#chcon -Rv -t tgtd_var_lib_t /srv/iscsi                    //selinux相关
#ls -lh /srv/iscsi/disk1.img
ii)用物理的磁盘分区
//查看下当前系统下的磁盘信息
#fdisk -l
#fdisk /dev/sdb            //分区设置略
#partprob /dev/sdb
iii)用LVM设备
#pvcreate /dev/sdc1
#vgcreate vg0 /dev/sdc1
#lvcreate -L 10G -n iscsi10G vg0
#lvs
3)iSCSI target 规划与配置
i)iSCSI target命名规则
iqn.yyyy-mm.<reversed domain name>:identifier
iqn.年年-月.单位域名的颠倒书写:分享的target名称
eg:
iqn.2012-07-31.com.abc:myVDisk
ii)LUN 逻辑单元编号,说白了就是卷、磁盘吧
iii) tgt的配置文件/etc/tgt/targets.conf
a)设置格式
#vim /etc/tgt/targets.conf
#参考如下格式
#<target iqn.分享出来的设备target名称>
#     backing-store /your/虚拟设备/文件名称1
#     backing-store /your/虚拟设备/文件名称2
#</target>
<target iqn.2011-08.vbird.centos:vbirddisk>
backing-store /srv/iscsi/disk1.img    #<==LUN 1 (LUN 的编号一般按照顺序)
backing-store /dev/sdb1               #<==LUN 2
backing-store /dev/vg0/iscsi10G       #<==LUN 3
initiator-address 192.168.0.0/24
incominguser dsm dsmpwd
write-cache off
</target>
b)说明:
backing-store        虚拟的设备
direct-store        实际的设备
initiator-address    授权访问的IP
incominguser        授权访问的用户密码设置
write-cache [off|on]    是否使用快取
iv)查看服务和相关端口
#chkconfig tgtd on
#/etc/init.d/tgtd start
#netstat -tlunp | grep tgt
#iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 3260 -j ACCEPT
#service iptables save
vi查看target相关信息以及LUN信息
#tgt-admin --show
5.iSCSI initiator的设置 (客户端)
1)安装客户端
#yum install iscsi-initiator-utils
2)initiator 的配置文件和相关命令
/etc/iscsi/iscsid.conf    //配置文件
/sbin/iscsid            //启动iSCSI initiator的主要程序
/bin/iscsiadm        //用来管理iSCSI initiator的主要设置程序
/etc/init.d/iscisd      //使本机模拟成为iSCSI initiator的主要服务
/etc/init.d/iscsi    //在本机成为iSCSI initiator后,启动此脚本,使可以登入iSCSI target
3)配置客户端
i)修改/etc/iscsi/iscsid.conf
#vim /etc/iscsi/iscsid.conf
//两处要设置账户和密码,分别为探discovery用,连接时用到
node.session.auth.username = dsm
node.session.auth.password = dsmpwd
discovery.sendtargets.auth.username = dsm
discovery.sendtargets.auth.password = dsmpwd
ii)开启服务
#chkconfig iscsid on
#chkconfig iscsi on
#/etc/init.d/iscsi start
iii)侦测target
#iscsiadm -m discovery -t sendtargets -p 192.168.0.254:3260
#ll -R /var/lib/iscsi/nodes/
iv)连接iSCSI target
//查看目前系统上面所有的target信息
#iscsiadm -m node
//登陆target
#iscsiadm -m node -T iqn.2012-07-31.com.abc:myVDISK1 --login
//查看
#fdisk -l
v)更新/刪除/新增 target 信息的方法
#iscsiadm -m node -T iqn.2012-07-31.com.abc:myVDISK1 --logout
//iscsiadm -m node -o [delete|new|update] -T iqn.2012-07-31.com.abc:myVDISK1
#iscsiadm -m node -o delete -T iqn.2012-07-31.com.abc:myVDISK
#iscsiadm -m node
#/etc/init.d/iscsi restart
//补充
选项与參數:
--logout :就是退出 target,但是并没有删除 /var/lib/iscsi/nodes/ 內的信息
-o delete:刪除后面接的那个 target 连接信息 (/var/lib/iscsi/nodes/*)
-o update:更新相关信息
-o new   :增加一新的的 target 信息

猜你喜欢

转载自regjtc.iteye.com/blog/1828555