设为首页 收藏本站
查看: 2081|回复: 0

[经验分享] 基于iscsi实现文件存储共享

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-5-3 21:25:54 | 显示全部楼层 |阅读模式
简单介绍两个概念:
      iSCSI:Internet Small Computer System Interface.是一种基于 TCP/IP的协议,用来建立和管理 IP 存储设备、主机和客户机等之间的相互连接,并创建存储区域网络(SAN)。SAN 使得 SCSI 协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block-level)在多个数据存储网络间进行。
     iSCSI的工作过程:当iSCSI主机应用程序发出数据读写请求后,操作系统会生成一个相应的SCSI命令,该SCSI命令在iSCSI initiator层被封装成ISCSI消息包并通过TCP/IP传送到设备侧,设备侧的iSCSI target层会解开iSCSI消息包,得到SCSI命令的内容,然后传送给SCSI设备执行;设备执行SCSI命令后的响应,在经过设备侧iSCSI target层时被封装成ISCSI响应PDU,通过TCP/IP网络传送给主机的ISCSI initiator层,iSCSI initiator会从ISCSI响应PDU里解析出SCSI响应并传送给操作系统,操作系统再响应给应用程序。
     ISCSI通信双方:请求方:initiator即为客户端。接收方:target,即为服务器端
     target  :成为target需要满足的条件:要有支持SCSI,ISCSI的模块,要有创建target、lum的用户空间工具。要有SCSI、ISCSI驱动,运行为服务,且此服务开机自行启动,接收客户请求要有监听的套接字。服务器端的配置需要保存至某个配置文件中,使其永久生效。
     initiator:要有SCSI、ISCSI驱动,要能发现服务器端共享出来的磁盘存储,要能登录到服务器端
     有了以上思路我们就可以开始做配置:
服务器端:
       创建共享磁盘存储
       # fdisk /dev/sda
       查看是否已安装了SCSI、ISCSI的模块
       # grep -i 'scsi' /boot//config-2.6.32-431.el6.x86_64
       安装用户空间的工具软件
       # yum -y install scsi-target-utils-1.0.24-10.el6.x86_64.rpm
       开启服务
       /etc/rc.d/init.d/tgtd
       # service tgtd start
       开机自动启动
       # chkconfig tgtd on
       监听套接字端口:
       # ss -tnl 3260
       用户空间使用工具
       /usr/sbin/tgtadm
       使用配置文件
       /etc/tgt/targets.conf
       开机重启后
       /usr/sbin/tgt-admin会读取配置文件信息。
       创建target
       # tgtadm -L iscsi -o new -m target -t 1 -T iqn.2014-05.com.aperson.web:1
       查看创建的targeto
       # tgtadm -L iscsi -o show -m target
       wKiom1NjEDqiEZLiAAJ23EXrDEQ835.jpg
       关联逻辑单元lun
       # tgtadm -L iscsi -o new -m logicalunit -t 1 -l 1 -b /dev/sda5
       再次查看
       # tgtadm -L iscsi -o show -m target
wKioL1NjEZ-yxzJAAAQJGaRqRws035.jpg
     开启逻辑单元对用户的访问,即基于ip的授权
     # tgtadm -L iscsi -o bind -m target -t 1 -I 192.168.2.0/24
客户端:
     安装软件
     iscsi-initiator-utils-6.2.0.873-10.el6.x86_64.rpm
     # rpm -ql iscsi-initiator-utils
     两个启动服务脚本
     /etc/rc.d/init.d/iscsi
     /etc/rc.d/init.d/iscsid
     iscsid的配置文件
     /etc/iscsi/iscsid.conf
     客户端使用工具
     /sbin/iscsiadm
     iscsi别名生成工具
     /sbin/iscsi-iname
     别名存放目录:
     /etc/iscsi
     启动服务
     service iscsi start
     service iscsid start
     创建自己的名称跟别名
     echo "InitiatorName=`iscsi-iname -p iqn.2014-05.com.aperson`" > /etc/iscsi/initiatorname.iscsi
     echo "InitiatorAlias=initiator1" >> /etc/iscsi/initiatorname.iscsi
     发现共享:   
# iscsiadm -m discovery -t st -p 192.168.2.117:3260
192.168.2.117:3260,1 iqn.2014-05.com.aperson.web:1
     登录共享服务器端  


# iscsiadm -m node -T iqn.2014-05.com.aperson.web:1 -p 192.168.2.117:3260 -l
Logging in to [iface: default, target: iqn.2014-05.com.aperson.web:1, portal: 192.168.2.117,3260] (multiple)
Login to [iface: default, target: iqn.2014-05.com.aperson.web:1, portal: 192.168.2.117,3260] successful.
  查看硬盘情况:
wKioL1NjJQfwtqxmAAPvjJR4ojM431.jpg
     分区格式化对此磁盘 并挂载到本地,验证数据的输入删除等操作    wKioL1NjJUCDKkoWAAIp8LU0oic492.jpg
    注意:共享存储不能同时给两个客户端使用,否则文件系统会崩溃。
    退出登录:   
iscsiadm -m node -T iqn.2014-05.com.aperson.web:1 -p 192.168.2.117 -u




    wKioL1NjMhShP9GlAAaPUzI0UWk835.jpg
    我们下次登录的时候会自动发现共享存储是因为我们登录过一次以后就会在/var/lib/iscsi/目录下自动生成一些文件,记录我们曾经登录过的共享服务器的一些信息:
    wKiom1NjMu-BajjWAAGivQ5hPfc712.jpg
   如果不想记录,我们可以删除这些文件,也可以使用iscsiadm的一条命令进行删除:
# iscsiadm -m node -T iqn.2014-05.com.aperson.web:1 -p 192.168.2.117:3260 -o delete
   删除lun,删除target指令:  


# tgtadm -L iscsi -o delete -m logicalunit -t 1 -l 1
# tgtadm -L iscsi -o delete -m target -t 1




    wKiom1NjNr_xp09_AAO06mMUgQI446.jpg


   命令的配置无法长久保存,所以我们需要基于配置文件的设置来实现持久配置
# vim /etc/tgt/targets.conf
<target iqn.2014-05.com.aperson.web2.2>
    direct-store /dev/sda5
    initiator-address 192.168.2.0/24
</target>




wKioL1NjODCCrREiAAPbywtFPk4263.jpg   
   iscsi基于用户的认证配置:
   在服务器端:
# vim /etc/tgt/targets.conf
<target iqn.2014-05.com.aperson.web2.2>
    direct-store /dev/sda5
    initiator-address 192.168.2.0/24
   incominguser admin admin
</target>
   在客户端:


# vim /etc/iscsi/iscsid.conf
node.session.auth.authmethod = CHAP
node.session.auth.username = admin
node.session.auth.password = admin
   如果是先前登录过的需要在客户端停止iscsi、iscsid服务,并删除/var/lib/iscsi/目录下的文件:重新发现,重新登录。

    wKiom1NjPjbBdhf_AARIQdbFC-E148.jpg
    OK,以上就是iscsi的基础知识!



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-18574-1-1.html 上篇帖子: RAID0+1 RAID5 性能比较 下篇帖子: 使用Windows Server 2012 建立ISCSI虚拟磁盘软存储
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表