iSCSI(internet SCSI)是一个供硬件设备使用的、可以在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 启动器是一个客户端设备,它连接到服务器(在本例中是 iSCSI 目标)提供的某一服务,并发起对该服务的请求。iSCSI 启动器软件需要安装在每个节点上。  iSCSI 启动器可以用软件实现,也可以用硬件实现。软件 iSCSI 启动器可用于大部分主要操作系统平台。对于本文,我们将使用 iscsi-initiator-utils RPM 中提供的免费 Linux Open-iSCSI 软件驱动程序。iSCSI 软件启动器通常与标准网络接口卡 (NIC)(大多数情况下是千兆位以太网卡)配合使用。硬件启动器是一个 iSCSI HBA,它本质上只是一个专用以太网卡。

iSCSI 目标是 iSCSI 网络的"服务器"组件。它通常是一个存储设备,包含您所需的信息并响应来自(一个或多个)启动器的请求。对于本文,节点rac1 将是 iSCSI 目标。

配置iscsi target:

方案1:命令行配置,立即有效,重启无效

1.在target上添加磁盘:sdb,sdc,sdd,sde

准备存储设备/dev/md5

yum –y install mdadm

mdadm –Cv /dev/md5 –a yes –n 3 –x 1 –l 5 /dev/sd[b-e]

mdadm –D –s >/etc/mdadm.conf

sed –I ‘1 s/$/auto=yes/’ /etc/mdadm.conf

cat /etc/mdadm.conf

2、安装程序包、启动服务

[root@rac1 ~]# yum install -y scsi-target-utils

[root@rac1 ~]# service tgtd start

3、创建target

[root@rac1 ~]# tgtadm --lld iscsi --mode target --op new --tid 1 --targetname iqn.2017-04.com.comsys:iscsi.fcdisk

4、创建lun

[root@rac1 ~]# tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 --backing-store  /dev/md5

[root@rac1 ~]# tgtadm --lld iscsi --mode logicalunit --op delete --tid 1 --lun 1 #删除lun的方法

5、授权

为 Target 分配了 LUN 后,需要配置访问控制才可以使用。可以设置所有用户都能访问,也可以设置基于IP/IP段或用户名验证的访问权限。

添加两个 IP 的访问权限:

[root@rac1 ~]#  # tgtadm  --lld iscsi --mode target --op bind --tid 1 --initiator-address 192.168.1.10

[root@rac1 ~]# # tgtadm --lld iscsi --mode target --op bind --tid 1 --initiator-address 192.168.2.10

再添加一个 IP 段的访问权限:

[root@rac1 ~] # tgtadm --lld iscsi --mode target --op bind --tid 1 --initiator-address 192.168.3.0/24

添加所有 IP 的访问权限:

[root@rac1 ~] # tgtadm --lld iscsi --mode target --op bind --tid 1 --initiator-address  ALL

注意:访问控制是 Target 的一个特性,只能给 Target 添加访问控制,而对单独的 LUN 则无法添加访问控制。

6、查看已经定义的信息

[root@rac1 ~]# tgtadm --lld iscsi --mode target --op show

方案2:在配置文件中定义,重启有效

1、安装tgt

[root@rac1 ~]# yum install scsi-target-utils -y

2、配置tgt

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

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

<target iqn.2011-10.com.example.cluster1:iscsi>

backing-store  /dev/md5                 #指定要发布的设备已划分的分区

initiator-address  ALL          #对于客户端的访问控制,允许所有用户访问

</target>

说明:

iqn(iSCSI Qualified Name)名称规则如下:

格式是:“iqn”+“年月”+“.”+“域名的颠倒”+“:”+“设备的具体名称”,之所以颠倒域名是为了避免可能的冲突。

举例: iqn.2008-07.com.h3c.rd:test

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

其他高级设置如, 大家自己进行配置。

incominguser   user1  pass12          #允许user1访问密码pass12

write-cache     off                     #关闭写缓存

#direct-store /dev/sdc                    #整块磁盘

3、启动iSCSI target

[root@rac1 ~]# /etc/init.d/tgtd start                   #启动target服务

[root@rac1 ~]# chkconfig tgtd on                    #开机自动启动

4、查看iSCSI target

[root@rac1 ~]# tgtadm --lld iscsi --mode target --op show

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

至此,iSCSI Target 设定完毕。

iSCSI客户端配置

1)安装客户端软件

yum –y install iscsi-initiator-utils lsscsi

/etc/init.d/iscsi start

/etc/init.d/iscsi restart

2)发现并连接iscsi设备

iscsiadm –m discovery –t sendtargets –p 192.168.1.51

#发现target服务,信息会写入/var/lib/iscsi 目录

发送给192.168.1.51一个target

其中:

-m 可用的mode有discovery,node,fw

-t sendtargets,可简写为st,仅用于discovery模式,发送一个target给initiator;

-p 指定target服务的ip和端口

- T用于指定target名字

-l login

-u logout

登录到指定名字的target上

lsscsi 查看scsi设备

tree /var/lib/iscsi/nodes

/etc/init.d/iscsi  start                    #在启动iscsi服务 该服务是根据iscsid服务信息/var/lib/iscsi/ 来识别设备的

lsblk                        #lsblk查看块信息的命令

iscsiadm –m node –T iqn.2008-07.com.h3c.rd:test –u

#卸载scsi设备

lsblk 查看设备,已没有共享的设备了

iscsiadm –m node –T iqn.2008-07.com.h3c.rd:test –l

登录scsi设备

lsblk查看

3)使用iscsi存储设备

fdisk –l /dev/md5

mkfs.ext4 /dev/md5

mkdir /scsi

mount /dev/md5 /scsi

df –Th

搭建iSCSI共享IPSAN的更多相关文章

  1. Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式CentOS7-1810下实现

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  2. Linux下搭建iSCSI共享存储的方法 TGT 方式 CentOS6.9系统下

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  3. Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式 Debian9.5下实现

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  4. Linux下搭建iSCSI共享存储的方法 TGT 方式 Debian9.5系统下

    iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...

  5. Linux下搭建iSCSI共享存储

    转至:https://www.linuxidc.com/Linux/2016-09/135655.htm Linux下搭建iSCSI共享存储 拓扑: 实验步骤: ------------------- ...

  6. Linux下搭建iSCSI共享存储详细步骤(服务器模拟IPSAN存储)

    一.简介 iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够 ...

  7. 搭建iSCSI文件服务器故障转移群集

    故障转移群集(Failover Cluster)可以提供一个高可用性应用程序或服务的网络环境,本章将接受如何搭建iSCSI SAN文件服务器故障转移群集. 故障转移群集概述 我们可以将多台服务器组成一 ...

  8. RedHat Enterprise7 搭建ISCSI

    IP 主机名 作用 10.45.129.113/24      外网 172.16.1.10/24        内网 rac1 RAC节点1 10.45.129.114/24      外网 172 ...

  9. 实验:iscsi共享存储

    实验名称: iscsi共享存储 实验环境: 我们需要准备一个磁盘,对于这个磁盘我们需要使用,将这个磁盘空间共享给iscsi客户端: 实验需求: 我们这里使用两台服务器来实现iscsi共享存储: 1.指 ...

随机推荐

  1. Python 爬虫练手项目—酒店信息爬取

    from bs4 import BeautifulSoup import requests import time import re url = 'http://search.qyer.com/ho ...

  2. 【转】snmpwalk常用用法

    在日常监控中,经常会用到snmp服务,而snmpwalk命令则是测试系统各种信息最有效的方法,现总结一些常用的方法如下: 1.snmpwalk -v 2c -c public 10.103.33.1 ...

  3. Python初学者第十六天 文件处理操作练习

    16day 练习:模拟登陆 1.用户输入账号密码进行登陆: 2.用户信息保存在文件内: 3.用户密码输入错误三次后,锁定用户,下次登陆,检测到这个用户再也登陆不了 #获取用户名及密码f_user = ...

  4. Java学习---下载文件并且对文件编码

    import java.io.IOException; import java.net.URLEncoder; import sun.misc.BASE64Encoder; public class ...

  5. Jmeter和LoadRunner的区别

    1.Jmeter的架构跟LoadRunner原理一样,都是通过中间代理,监控&收集并发客户端发现的指令,把他们生成脚本,再发送到应用服务器,再监控服务器反馈的结果的一个过程. 2.分布式中间代 ...

  6. Fiori Fundamentals和SAP UI5 Web Components

    这周有位同事邀请我给团队讲一讲SAP技术的演进历史,所以我准备了下面几个主题来介绍. 其中SAP的技术回顾和演进,我的思路就是从前后台两方面分别介绍. 我画了一张非常简单的图: 去年5月我写过一篇文章 ...

  7. [零基础学JAVA]Java SE面向对象部分.面向对象基础(03)

     1.静态变量的使用 2.单例模式的使用. 3.构造方法的私有化. 4.string的使用,两种构造的不同. 小的记忆错误: · 数组的长度:数组名称.length     这个没()哈~~ · 字符 ...

  8. 14. Android框架和工具之 ImageLoader(图片加载)

    1. 这个图片加载框架网友很多都已经使用过,而且分析也很到位,这里我就不写了,直接引用别人,尊重别人的劳动成果. 2. 参考如下: (1)Android 开源框架Universal-Image-Loa ...

  9. 使用tidylib解决不规则网页问题

    windows 下安装tidylib 先去https://pypi.python.org/pypi/pytidylib 下载pytidylib 跑官方提供的测试用例报错 ition 0: unexpe ...

  10. Guava包学习-Cache

    这段时间用到了ehcache和memcache,memcache只用来配置在tomcat中做负载均衡过程中的session共享,然后ehcache用来存放需要的程序中缓存. Guava中的Cache和 ...