搭建iscsi

我们就拿两台linux服务器来做吧,

服务器系统均为CentOs6.6 64位的,信息如下

IP 安装的软件
192.168.22.142 iscsi target端:scsi-target-utils.x86_64
192.168.160.191 iscsi客户端:iscsi-initiator-utils
在172.16.22.142安装iscsi-target

采用yum安装

  1. [root@salt ~]# yum -y install scsi-target-utils
  2. [root@salt ~]# rpm -ql scsi-target-utils
  3. /etc/rc.d/init.d/tgtd #启动脚本
  4. /etc/sysconfig/tgtd
  5. /etc/tgt/targets.conf #配置文件
  6. /usr/sbin/tgt-admin
  7. /usr/sbin/tgt-setup-lun
  8. /usr/sbin/tgtadm
  9. /usr/sbin/tgtd
  10. /usr/sbin/tgtimg
  11. /usr/share/doc/scsi-target-utils-1.0.24
  12. /usr/share/doc/scsi-target-utils-1.0.24/README
  13. /usr/share/doc/scsi-target-utils-1.0.24/README.iscsi
  14. /usr/share/doc/scsi-target-utils-1.0.24/README.iser
  15. /usr/share/doc/scsi-target-utils-1.0.24/README.lu_configuration
  16. /usr/share/doc/scsi-target-utils-1.0.24/README.mmc
  17. /usr/share/man/man5/targets.conf.5.gz
  18. /usr/share/man/man8/tgt-admin.8.gz
  19. /usr/share/man/man8/tgt-setup-lun.8.gz
  20. /usr/share/man/man8/tgtadm.8.gz

编辑配置文件,置iscsi。

  1. [root@salt ~]# vim /etc/tgt/targets.conf
  2. '''
  3. <target iqn.2016-11.com.ljf:server.target1>
  4. backing-store /dev/sdb #/dev/sdb 新硬盘,没有格式化和创建文件系统的
  5. </target>
  6. '''

参数解释:

iqn.2016-11.com.ljf:\server.target1

notice: :\server这里的\是为了不让有道markdown自动生成表情

target 后面跟着的名称(也就是iqn.2016-11.com.ljf:\server.target1)在同一子网内应该是唯一的。标准命名方式是:

iqn.yyyy-mm.[:identifier]

参数含义如下:

  • iqn iscsi Qualified name
  • YYYY-MM 表示“年份-月份”
  • reversed domain name 表示倒过来的域名
  • identified 表示识别代码。

backing-store /dev/sdb

关于backing-store,这里先解释下共享的两种store,

  • backing-store : 任何Initiator可以访问
  • direct-store:可以设定acl进行限制哪些Initiator访问

/dev/sdb 表示把/dev/sdb/作为iscsi盘共享出去。

启动服务

确定配置没有问题后,启动

  1. [root@salt ~]# service tgtd start
  2. Starting SCSI target daemon: [ OK ]
  3. [root@salt ~]# service tgtd status
  4. tgtd (pid 4839 4837) is running...
  5. [root@salt ~]# netstat -lnpt |grep tgtd
  6. tcp 0 0 0.0.0.0:3260 0.0.0.0:* LISTEN 4837/tgtd
在172.16.160.191安装iscsi-initiator-utils

命令如下

  1. [root@localhost ~]# yum -y install iscsi-initiator-utils
  2. [root@localhost ~]# rpm -ql iscsi-initiator-utils
  3. /etc/NetworkManager
  4. /etc/NetworkManager/dispatcher.d
  5. /etc/NetworkManager/dispatcher.d/04-iscsi
  6. /etc/iscsi
  7. /etc/iscsi/iscsid.conf
  8. /etc/logrotate.d/iscsiuiolog
  9. /etc/rc.d/init.d/iscsi
  10. /etc/rc.d/init.d/iscsid
  11. /sbin/brcm_iscsiuio
  12. /sbin/iscsi-iname
  13. /sbin/iscsiadm
  14. /sbin/iscsid
  15. /sbin/iscsistart
  16. /sbin/iscsiuio
  17. /usr/lib64/libiscsi.so.0
  18. /usr/lib64/python2.6/site-packages/libiscsimodule.so
  19. /usr/share/doc/iscsi-initiator-utils-6.2.0.873
  20. /usr/share/doc/iscsi-initiator-utils-6.2.0.873/README
  21. /usr/share/man/man8/iscsi-iname.8.gz
  22. /usr/share/man/man8/iscsiadm.8.gz
  23. /usr/share/man/man8/iscsid.8.gz
  24. /usr/share/man/man8/iscsistart.8.gz
  25. /usr/share/man/man8/iscsiuio.8.gz
  26. /var/lib/iscsi
  27. /var/lib/iscsi/ifaces
  28. /var/lib/iscsi/isns
  29. /var/lib/iscsi/nodes
  30. /var/lib/iscsi/send_targets
  31. /var/lib/iscsi/slp
  32. /var/lib/iscsi/static
  33. /var/lock/iscsi

安装好iscsi-initiator-utils以后,我们可以使用它了,但是需要先了解下面三样:

  • iscsiadm

    此命令用来管理(更新,删除,插入,查询)iscsi配置数据库文件的命令行工具,用户能够用它对ISCSI nodes,sessions,connections 和discovery records进行以系列草走
  • /var/lib/iscsi/send_targets/

    在此目录下,会生成一个或者多个以ISCSI存储服务器的IP地址和端口号命名的文件夹,文件名“ISCSI Target ip,端口号”,例如我这里的显示的:172.16.22.142,3260
  • /var/lib/iscsi/nodes/

    在这个目录下会生成一个或者多个以ISCSI存储服务器上的Target命名的文件夹,在该文件夹下有一个文件名为“iscsi portal IP,端口号”,例如:iqn.2016-11.com.ljf:\server.target1。该文件是ISCSI Initiator登陆ISCSI target使用的参数,而这些参数的设置从/etc/iscsi/iscsi.conf中的参数继承而来,可以通过一个iscsiadm命令对这个参数进行更改的。

了解上面的以后,下面执行命令试试看

  1. [root@localhost ~]# iscsiadm -m discovery --type sendtargets --portal 172.16.22.142
  2. 172.16.22.142:3260,1 iqn.2016-11.com.ljf:server.target1
  3. 或者下面这条
  4. [root@localhost ~]# iscsiadm -m discovery --type sendtargets -p 172.16.22.142
  5. 172.16.22.142:3260,1 iqn.2016-11.com.ljf:server.target1

iqn.2016-11.com.ljf:\server.target1 是ISCSI target的名称。由于在配置ISCSI target的时候,没有做任何限制,所以允许所有的客户端连接ISCSI target共享磁盘。

在第一次成功执行上面的命令后,ISCSI Initiator就会将查询记录写到/var/lib/iscsi/send_targets对应的目录下。

接下来登陆iscsi共享出来的磁盘

  1. [root@localhost ~]# iscsiadm -m node -T iqn.2016-11.com.ljf:server.target1 -p 172.16.22.142 -l

参数解释

  • -l login,登陆
  • -T name of target
  • -p ip of HOST

登陆后,我们通过“fdisk -l”检查下本地是否正常识别出来了,或者查看dmesg也可以看出来。

  1. [root@localhost ~]# fdisk -l
  2. Disk /dev/sda: 32.2 GB, 32212254720 bytes
  3. 255 heads, 63 sectors/track, 3916 cylinders
  4. Units = cylinders of 16065 * 512 = 8225280 bytes
  5. Sector size (logical/physical): 512 bytes / 512 bytes
  6. I/O size (minimum/optimal): 512 bytes / 512 bytes
  7. Disk identifier: 0x0003a69b
  8. Device Boot Start End Blocks Id System
  9. /dev/sda1 * 1 26 204800 83 Linux
  10. Partition 1 does not end on cylinder boundary.
  11. /dev/sda2 26 157 1048576 82 Linux swap / Solaris
  12. Partition 2 does not end on cylinder boundary.
  13. /dev/sda3 157 3917 30202880 8e Linux LVM
  14. Disk /dev/mapper/VolGroup-LogVol00: 30.9 GB, 30924603392 bytes
  15. 255 heads, 63 sectors/track, 3759 cylinders
  16. Units = cylinders of 16065 * 512 = 8225280 bytes
  17. Sector size (logical/physical): 512 bytes / 512 bytes
  18. I/O size (minimum/optimal): 512 bytes / 512 bytes
  19. Disk identifier: 0x00000000
  20. # 看/dev/sdb已经在本地显示了,说明挂载成功了,
  21. Disk /dev/sdb: 21.5 GB, 21474836480 bytes
  22. 64 heads, 32 sectors/track, 20480 cylinders
  23. Units = cylinders of 2048 * 512 = 1048576 bytes
  24. Sector size (logical/physical): 512 bytes / 512 bytes
  25. I/O size (minimum/optimal): 512 bytes / 512 bytes
  26. Disk identifier: 0x00000000

或者通过iscsiadmin命令查看,命令如下:

  1. [root@localhost ~]# iscsiadm -m session
  2. tcp: [2] 172.16.22.142:3260,1 iqn.2016-11.com.ljf:server.target1 (non-flash) #[2]代表seesion id
  3. [root@localhost ~]# iscsiadm -m session -r 2 # -r 指明session id即可。
  4. # BEGIN RECORD 6.2.0-873.13.el6
  5. node.name = iqn.2016-11.com.ljf:server.target1
  6. node.tpgt = 1
  7. node.startup = automatic
  8. node.leading_login = No
  9. 此处省略一万字

至此,我们可以像使用本地磁盘一样的操作/dev/sdb这块磁盘了.

Notice

关机之前或者不使用的时候切记一定要取消target的挂载,避免浪费资源,命令如下:

  1. [root@localhost ~]# iscsiadm -m node -T iqn.2016-11.com.ljf:server.target1 -p 172.16.22.142 -u
  2. Logging out of session [sid: 1, target: iqn.2016-11.com.ljf:server.target1, portal: 172.16.22.142,3260]
  3. Logout of [sid: 1, target: iqn.2016-11.com.ljf:server.target1, portal: 172.16.22.142,3260] successful.
  4. [root@localhost ~]# fdisk -l
  5. Disk /dev/sda: 32.2 GB, 32212254720 bytes
  6. 255 heads, 63 sectors/track, 3916 cylinders
  7. Units = cylinders of 16065 * 512 = 8225280 bytes
  8. Sector size (logical/physical): 512 bytes / 512 bytes
  9. I/O size (minimum/optimal): 512 bytes / 512 bytes
  10. Disk identifier: 0x0003a69b
  11. Device Boot Start End Blocks Id System
  12. /dev/sda1 * 1 26 204800 83 Linux
  13. Partition 1 does not end on cylinder boundary.
  14. /dev/sda2 26 157 1048576 82 Linux swap / Solaris
  15. Partition 2 does not end on cylinder boundary.
  16. /dev/sda3 157 3917 30202880 8e Linux LVM
  17. Disk /dev/mapper/VolGroup-LogVol00: 30.9 GB, 30924603392 bytes
  18. 255 heads, 63 sectors/track, 3759 cylinders
  19. Units = cylinders of 16065 * 512 = 8225280 bytes
  20. Sector size (logical/physical): 512 bytes / 512 bytes
  21. I/O size (minimum/optimal): 512 bytes / 512 bytes
  22. Disk identifier: 0x00000000
  23. 很明显,/dev/sdb已经取消挂载了。

网络存储(三)之ISCSI搭建的入门的更多相关文章

  1. linux中网络存储与考试系统搭建(实现多用户可以共享文件)

    上期内容回顾 1.数据备份的方式有哪些 全量和增量 2.数据备份的命令有哪些 都有哪些优点缺点 cp : 本地复制,全量复制 scp : 远程复制,全量复制 rsync : 远程复制,增量复制 3.r ...

  2. iscsi 挂载网络存储及存储访问

    http://blog.sina.com.cn/s/blog_408764940101ghzi.html 一.Ess3016x设置 登陆admin 密码 888888888888 1.安装硬盘,查看硬 ...

  3. 网络存储(二)之ISCSI原理

    组成 一个简单ISCSI系统大致由以下部分构成 ISCSI Initiator 或者 ISCSI HBA ISCSI Target 以太网交换机 一台或者多台服务器 结构图如下: iscsi服务器用来 ...

  4. 第17章 使用iSCSI服务部署网络存储

    章节概述: 本章节将分析SCSI与iSCSI技术结构的不同,了解iSCSI技术的优势.SAN存储网络技术结构以及iSCSI HBA卡的作用. 完整演示部署iSCSI target服务程序的方法流程:创 ...

  5. 《linux就该这么学》第十六节课:第16,17章,Squid服务和iscsi网络存储

    第十六章 squid总结: 正向代理:yum  安装后清空防火墙即可正常使用,客户端设置浏览器 透明正向代理:vim  /etc/squid/squid.conf 59行:http_port  312 ...

  6. 配置iSCSI部署网络存储

    iSCSI( Internet Small Computer System Interface 互联网小型计算机系统接口)是由IBM 下属的两大研发机构一一加利福尼亚AImaden和以色列Haifa研 ...

  7. ISCSI网络存储

    ISCSI(iSCSI,Internet Small Computer System Interface) iSCSI技术实现了物理硬盘设备与TCP/IP网络协议的相互结合,使得用户可以通过互联网方便 ...

  8. Linux基础学习-使用iSCSI服务部署网络存储

    使用iSCSI服务部署网络存储 iSCSI技术实现了物理硬盘设备与TCP/IP网络协议的相互结合,使得用户可以通过互联网方便地访问远程机房提供的共享存储资源.下面介绍如何在Linux上部署iSCSI服 ...

  9. 《Linux就该这么学》培训笔记_ch17_使用iSCSI服务部署网络存储

    <Linux就该这么学>培训笔记_ch17_使用iSCSI服务部署网络存储 文章最后会post上书本的笔记照片. 文章主要内容: iSCSI技术介绍 创建RAID磁盘阵列 配置iSCSI服 ...

随机推荐

  1. 记一次ASP.NET网站的入侵和如何避免被入侵

    ASP.NET网站入侵第二波(LeaRun.信息化快速开发框架 已被笔者拿下) 详细介绍请看第二波 首先我要申明的是不是什么语言写出来的程序就不安全,而是得看写代码的人如何去写这个程序 前些日子我去客 ...

  2. UltraEdit 编译输出中文乱码的解决办法

    配置UE的时候,都告诉大家javac   %n%e 接可以了,但是再运行的时候,会出现乱码,再加上-J-Duser.language=GBK就可以了,也就是下面的样子. javac -J-Duser. ...

  3. [转]mysql免安装版配置

    现在mysql有一个installer,相当于安装包管理器.包含mysql的各个组件,比如workbench,各个语言的connector.十分方便,不用就可惜了.实在没有必要下载zip版,自己配置. ...

  4. 第八章:Java集合

    1.Java集合 A:对象的容器. B:实现数据结构(栈.队列) 2.  Set:无序不重复 List: 有序可重复,长度可变. Map: 存放键值对. 3.  Iterator foreach

  5. SpringMVC学习--异常处理器

    简介 springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeExc ...

  6. 通过js写一个消息弹框

    prompt(data,time) { let alertForm = document.createElement('div'); alertForm.id="promptBox" ...

  7. jar-下载站点

    nutch: http://archive.apache.org/dist/nutch/ jarfire: http://cn.jarfire.org/ solr: http://archive.ap ...

  8. Ext-进度条

    1.progress使用 Ext.MessageBox.progress('请等待',msg:'读取数据中……'); 真实案例 tqbtnNews:function(){ var me = this; ...

  9. C#-面向对象的三大特性——封装(封装成员变量、封装成员方法)

    封装: 封装就是将数据或函数等集合在一个个的单元中(我们称之为类).被封装的对象通常被称为抽象数据类型. 封装的意义在于保护或者防止代码(数据)被我们无意中破坏. 封装既可以封装成员变量,又可以封装成 ...

  10. PyCharm2016.23专业版注册码

    43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QTczWVlKIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiI ...