一、简介

iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的、可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。iSCSI技术是一种新储存技术,该技术是将现有SCSI接口与以太网络(Ethernet)技术结合,使服务器可与使用IP网络的储存装置互相交换资料。

iSCSI是一种基于TCP/IP 的协议,用来建立和管理IP存储设备、主机和客户机等之间的相互连接,并创建存储区域网络(SAN)。SAN 使得SCSI 协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block-level)在多个数据存储网络间进行。SCSI 结构基于C/S模式,其通常应用环境是:设备互相靠近,并且这些设备由SCSI 总线连接。

iSCSI 的主要功能是在TCP/IP 网络上的主机系统(启动器 initiator)和存储设备(目标器 target)之间进行大量数据的封装和可靠传输过程。

完整的iSCSI系统的拓扑结构如下:

二、实验环境

操作系统:CentOS release 6.3 (Final)

iSCSI Target:192.168.1.21 / scsi-target-utils-1.0.24-12.el6_5.i686

iSCSI Initiator:192.168.1.22 / iscsi-initiator-utils-6.2.0.873-10.el6.i686

防火墙已关闭/iptables: Firewall is not running.

SELINUX=disabled

三、准备工作

iSCSI可分享的设备类型有很多,包括镜像文件(*.img)、分区(partition)、物理硬盘、raid设备、逻辑卷等,下面我们将准备其中的几种来测试,其他类型大家可以自行测试。

3.1 模拟镜像

在iSCSI Target的/srv目录下创建一个200M大小的镜像文件。

# mkdir /srv/iscsi

# dd if=/dev/zero of=/srv/iscsi/disk1.img bs=1M count=200

# ll -lh /srv/iscsi/disk1.img

3.2 建立分区

创建一个500M大小的分区/dev/sdb1.

# fdisk /dev/sdb

3.3 创建逻辑卷

创建一个800M大小的LV.

# pvcreate /dev/sdc

# vgcreate vg0 /dev/sdc

# lvcreate -L 800M -n lv1 vg0

四、配置iSCSI Target

4.1 安装tgt

CentOS 自带了scsi-target-utils 软件,我们使用该软件进行target设置。

# yum -y install scsi-target-utils

4.2 配置tgt

tgt的主配置文件为/etc/tgt/targets.conf,下面我们来设置改文件。

在该文件最后新增以下设置:

<target iqn.2014-07.dev.iscsi-target:iscsidisk>

backing-store /srv/iscsi/disk1.img

backing-store /dev/sdb1

backing-store /dev/vg0/lv1

backing-store /dev/sdd

</target>

说明:

iqn = iSCSI Qualified Name

iSCSI target的名称规则如下:

iqn.2014-07.dev.iscsi-target:iscsidisk

iqn.年份-月份.域名反写.设备识别

每个在同一个target上的backing-store 称为逻辑单元号(Logical Unit Number,LUN),这个实验中有4个LUN。

其他高级设置如initiator-address、incominguser,大家自行查资料。

4.3 启动iSCSI target

# /etc/init.d/tgtd start

# chkconfig tgtd on

# netstat -tulnp|grep tgt

4.4 查看iSCSI target

# tgt-admin –show

LUN0 是控制器,可以看到各个LUN的大小和磁盘路径。

至此,iSCSI Target 设定完毕。

五、配置iSCSI Initiator

5.1 安装initiator

# yum -y install iscsi-initiator-utils

5.2 设置开机启动

# chkconfig iscsid on

# chkconfig iscsi on

5.3 配置文档

initiator的配置文档位于/etc/iscsi/,该目录下有两个文件,initiatorname.iscsi 和iscsid.conf,

其中iscsid.conf 是其配置文件,initiatorname.iscsi 是标记了initiator的名称,它的默认名称是InitiatorName=iqn.1994-05.com.redhat:b45be5af6021,我们可以根据实际情况进行更改,比较好区分,这里我们修改为InitiatorName=iqn.2014-07.dev.iscsi-initiator:initiator。

因为在target里面,我们并没有设置访问限制,所以iscsid.conf 文件并不需要修改。

5.4 侦测target

如果我们事先不知道目标主机的target名称,我们就需要进行侦测,下面来讲解。

# iscsiadm -m discovery -t sendtargets -p 192.168.1.21

说明:

-m discovery  //侦测target

-t sendtargets  //通过iscsi协议

-p IP:port  //指定target的IP和port,不写port的话,默认为3260

5.5 查看nodes

iscsiadm 侦测到的结果会写入/var/lib/iscsi/nodes/ 中,因此只需启动/etc/init.d/iscsi 就能够在下次开机时,自动连接到正确的target了。

# ll -R /var/lib/iscsi/nodes/

侦测信息都写入了/var/lib/iscsi/nodes/iqn.2014-07.dev.iscsi-target:iscsidisk/192.168.1.21,3260,1/default 文件中了。

5.6 连接target

查看目前系统上面所有的target

# iscsiadm -m node

登录target

# iscsiadm -m node -T iqn.2014-07.dev.iscsi-target:iscsidisk –login

5.7 查看磁盘情况

# fdisk –l

可以看到,initiator 上面多了四块硬盘,大小和target上的LUN一致。这时你就可以像使用本地磁盘一样使用这些iSCSI设备了,下面我们来测试。

5.8 将/dev/sdb 和/dev/sdc 创建成LV挂载使用

创建LV

# pvcreate /dev/sdb /dev/sdc

# vgcreate iscsi /dev/sdb /dev/sdc

# lvcreate -L 1G -n iscsilv iscsi

格式化并挂载

# mkfs.ext4 /dev/iscsi/iscsilv

# mkdir /mnt/iscsi

# vi /etc/fstab

创建测试文件

挂载成功,创建测试文件成功。

5.9 重启测试

测试成功。

5.10 查看target信息

# tgt-admin --show

可以看到,此时使用该target的initiator 为iqn.2014-07.dev.iscsi-initiator:initiator,也就是我们上面更改的initiatorname,IP地址为192.168.1.22。

至此,iSCSI 置完毕。

转载于:https://www.cnblogs.com/guipeng/p/7541675.html

Linux ISCSI配置相关推荐

  1. 修改linux系统iqn,linux iSCSI target配置全过程

    linux iSCSI target配置全过程 linux iSCSI target配置全过程 一:Install iSCSI target for Linux 1,操作系统: [root@rac2 ...

  2. 修改linux系统iqn,linux iscsi initiator 安装配置

    实现环境:vmware workstation,netapp simulator,windows 2003,redhat linux enterprise; 1.从光盘安装iscsi initiato ...

  3. linux客户端连接iscsi,配置ISCSI客户端(LINUX)redhat5-iSCSI-INITIATOR

    ISCSI 4的客户端装上去后会有./etc/iscsi.conf 配置文件,直接按照模板参数修改就可以了 在ISCSI6的客户端配置方式有些变化,这让我搞了一下午,也参考的51CTO某技术大师的博客 ...

  4. linux nas 安装教程,FreeNAS11完全图解安装与iSCSI配置

    FreeNAS是一套免费的NAS服务器,它能将一部普通PC变成网络存储服务器.该软件基于FreeBSD,Samba 及PHP,支持CIFS (samba), FTP, NFS protocols, S ...

  5. Linux iscsi磁盘共享挂载

    2019独角兽企业重金招聘Python工程师标准>>> Linux iscsi磁盘映射 一.什么是iscsi iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在 ...

  6. linux——ISCSI 网络磁盘共享

    ISCSI ISCSI技术实现了物理硬盘设备与TCP/TP网络传输协议的相互结合,使得用户可以通过互联网方便的获取到远程机房提供的共享存储资源 ISCSI target:就是储存设备端,存放磁盘或 R ...

  7. openfiler的iSCSI配置(二)

    为什么80%的码农都做不了架构师?>>>    一.openfiler iSCSI配置 1.启动iSCSI target server服务.在Services列表下. 2.设置访问列 ...

  8. Linux 内核配置选项

    Linux 内核配置选项 第一部分 01.Code maturity level options ---> 代码成熟等级选项 01.01. [ ] Prompt for development ...

  9. Linux 内核配置选项(转)

    Linux 内核配置选项 from http://www.mitbbs.com/mitbbs_article_t.php?board=Linux&gid=10715608&ftype= ...

最新文章

  1. ant PageHeaderWrapper 返回上一页
  2. 文件查找利器---find详解
  3. java 运算符_java 运算符
  4. oracle xtts 介绍,oracle_rman_xtts_v3
  5. 数据中心夏季如何防雷
  6. 媒体声音|阿里云数据库:一站式全链路数据管理与服务,引领云原生2.0时代
  7. 搜索旋转排序数组—leetcode31
  8. SSO [ OAuth2.0 ]
  9. oracle 启用闪回数据库,如何启用Oracle10g闪回数据库特性
  10. 转载 Android入门学习_代码常用布局
  11. ehd边缘直方图描述子 matlab,一种新的图像空间特征提取方法
  12. linux 目录与分区与文件,LINUX中的分区与文件系统
  13. HTML实现页面注册
  14. 计算机如何更新苹果系统,苹果电脑怎么更新系统升级
  15. Fibonacci数列的递推C语言详解:Fn=Fn-1+Fn-2
  16. Android面试题【高级工程师版】
  17. 常见java异常英语词汇(一)
  18. nested exception is io.lettuce.core.RedisCommandExecutionException: ERR invalid expire time in setex
  19. EXCEL按照文字颜色统计数量
  20. 经济基础知识(中级)【2】

热门文章

  1. [Quiz]竞赛题目 Word Trace
  2. 3种方式理解旋转变换
  3. python模拟高并发_Python基于gevent实现高并发代码实例
  4. c语言解析sql语句_sql语句面试50题(Mysql版附解析)
  5. ps用法linux,在linux上使用ps(转载)
  6. mysql 执行cmd,mysql命令行中执行sql的几种方式总结
  7. android values-v21 style 报错,Android 4.4 以上实现透明导航栏和状态栏 Translucent system bar...
  8. mysql copy pending_mysql 案例 ~ 主从复制延迟之并行复制
  9. 求最小众倍数java,【python网易】最小倍众数
  10. linux按文件名排序ls,linux – 如何使用shell脚本按名称对文件进行排序