iSCSI Initiator与 Target 的安装、配置与连接过程备忘

Centos RHEL iSCSI Initiator  支持非常不错,但由于 iSCSI Linux  通常都是搭配应用在中、大型系统环境下,所以我们买的  iSCSI  硬体厂商都会提供驱动程式给  Linux  使用,尤以  RedHat SuSE  这些  Linux  知名厂商支持度最高,直到最近  2007  年左右,现在  Linux  都渐渐已经内建  iSCSI Initiator  相关软体,来介绍如何在  Linux  实做  iSCSI Initiator

Initiator 主要功能是提供电脑主机连线到  Target  作磁碟存取。这个  Initiator  可使用硬件方式  Initiator  或者软件方式  Initiator ,我们下面的 Initiator ,基本都是使用软件方式  Target  与  Initiator 软件 硬件 的  iSCSI Target  与  iSCSI Initiator  就好比  RAID  “SoftRAID” “Hardware RAID”
第一步安装 iSCSI Initiator for Linux

在 Centos 5  软体内就有  iSCSI Initiator .
#yum -y install iscsi-initiator-utils  

或者下载open  iscsi进行  make && make install

第二步:使用 iscsiadm  指令管理连线
#service iscsi start
#iscsiadm -m discovery –type sendtargets –portal 192.168.0.1
iSCSI Target 主机查找  Target Record  信息,其中  192.168.0.1  为  Target  主机  IP  或  DNS  名称。找到后会提示你发现
#service iscsi restart

现在就可以在你的电脑中见到新的设备了./dev/sdb… 之类 , 我们可以对他来象本地一样操作

接下来在 Linux 分区、格式化与挂载就可以用了 .

分区
#fdisk /dev/sdbX
#mkfs -j ext3  格式)
#mkreiserfs ReiserFS  格式)
#mount /dev/sdbX /

下次开机自动取得 iSCSI Target  磁碟

只要 iSCSI Initiator  主机曾经  sendtargets  过并且  login  相关  record, 只要在  Initiator  主机使用指令 “chkconfig iscsi on” 设定下次开机自动启动  iSCSI Initiator Daemon ,就可以办到 下次开机自动取得  iSCSI Target  磁碟 功能。
#chkconfig iscsi on

有关iSCSI 的其它
iSCSI 在安全方面相关设定 ,iSCSI  在安全管理方面有着不错优势 , 可以使用 主机 使用者 来完成允许或拒绝存取的设定。

0.iSCSI Target 安装

# tar zxvf iscsi-target.xxxxx.tar.gz                                         
# cd iscsi-target.xxxxx                                                      
# make   编译过程可能会有部分error ,请参考本论坛博客文章 iscsitarget  Linux2.6.32 内核上编译 若干编译错误与解决方法(备忘)   )                                                                     
# make install                                                               
# mkdir /iscsidisk                                                           
# dd if=/dev/zero of=/iscsidisk/sharedisk1.img bs=1k count=1 seek=2000K      
    (以上这句是用 dd 建立了一个 2G 大小的映像文档,也就是我们的一个 iscsi 映像磁盘 )
# vim /etc/ietd.conf                                                         
    找到"Target iqn" ,注意这行 Target 后的一串字符,是 iscsi 的标记              
    找到"Lun 0" 一行,改为                                                    
    Lun 0 Path=/iscsidisk/sharedisk1.img,Type=fileio                         
# chkconfig iscsi-target on                                                  
# /etc/init.d/iscsi-target start

1.iSCSI Target 实战以  IP  为基础的允许或拒绝  Initiator  主机

iSCSI Enterprise Target 软体本身有内建类似  TCP Wrapper /etc/hosts.allow /etc/hosts.deny )的  /etc/initiators.allow /etc/initiators.deny ,接下来示范设定这两个档案来限制  Initiator  主机存取。

设定 /etc/initiators.allow /etc/initiators.deny 这二个文件就可以控制主机了 . 安装完会默认生成

底下列出例子为 只允许  172.16.7.120  这台  Initiator” 拒绝全部 设定

/etc/initiators.allow 内容,最后一行允许  172.16.7.120 (其他三行被#注解)

# Some exmaples
#iqn.2001-04.com.example:storage.disk1.sys1.xyz 192.168.22.2, 192.168.3.8
#iqn.2001-04.com.example:storage.disk1.sys4.xyz [3ffe:302:11:1:211:43ff:fe31:5ae2], [3ffe:505:2:1::]/64
iqn.2001-04.com.example:storage.disk2.sys1.xyz 172.16.7.120

/etc/initiators.deny 内容,最后一行拒绝全部(其他四行被#注解)

# Some exmaples
#iqn.2001-04.com.example:storage.disk1.sys1.xyz ALL
#iqn.2001-04.com.example:storage.disk1.sys2.xyz 192.168.12.2, 192.168.3.0/24, 192.167.1.16/28
#iqn.2001-04.com.example:storage.disk1.sys4.xyz [3ffe:302:11:1:211:43ff:fe31:5ae2], [3ffe:505:2:1::]/64
iqn.2001-04.com.example:storage.disk2.sys1.xyz ALL

注意到 iqn  需与  /etc/ietd.conf  内的  iqn  相同。

2.iSCSI Target 使用者帐号密码为基础的允许或拒绝  Initiator  主机

iSCSI Target 使用帐号密码方式认证分成两阶段:

第一阶段是 Discovery  时认证所使用的帐号密码( SendTargets  用的)。

第二阶段是登入各别 Target / iqn / Lun  时所使用的帐号密码( Login  用的)。
一个 iSCSI Enterprise Target  能够在  /etc/ietd.conf  设定多个  Target  区段,分享多个  iqn / Lun  并且可以为每个  Target / iqn / Lun  设定存取的帐号密码。

由下图的上半个视窗可以看到在 Target  主机于  /etc/ietd.conf  设定两个  Target / iqn / Lun ,而下半个视窗可看到  Initiator  主机使用  iscsiadm  指令发现两个  Target

/etc/ietd.conf Initiator 主机设定

Discovery 时使用的帐号密码
SendTargets  用的)  IncomingUser joe secret
(独立于 Target  区段外)  discovery.sendtargets.auth.username = joe
discovery.sendtargets.auth.password = secret
连接 Target / iqn / Lun  时使用的帐号密码
Login  用的)  IncomingUser joe2 secret2
(置于 Target  区段内)  node.session.auth.username = joe2
node.session.auth.password = secret2
Note joe secret joe2  与  secret2  都是测试用的帐号密码。
只要有改到 /etc/ietd.conf /etc/iscsid.conf  别忘了各别需要使用  InitScripts /etc/init.d/iscsi-target /etc/init.d/iscsi )重新启动相关  Daemon ietd iscsid )。

SAN 架构与其相关技术应用非常广,比如我们可以配合集群( Cluster )与丛集群案系统( Cluster File System )的高级应用,像是  RedHat GFS  或是  Oracle OCFS2  档案系统,提供分享( Shared Block Level I/O  给多台主机。

注意:若未使用及设定 Cluster File System  但却使用两个  Initiator  同时存取同一个  Target Device  会导致资料毁损,请小心!

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

do2jiang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值