iSCSI协议及其应用
iSCSI及应用
Author: Colleen Liu
1
存储结构简介 SCSI协议 iSCSI协议 CentOS下挂载Initiator
Linux下用iSCSI target软件搭建PC架构
CONTENTS
目 录
2 3 4 5
6
References
1
存储结构简介
SCSI协议
CONTENTS
目 录
Linux下用iSCSI target软件搭建PC架构
LUN (Logic Unit Number)
• 是为了使用和描述更多设备及对象而引进的一个方法,每个SCSI ID上最多有32个LUN, 一个LUN对应一个逻辑设备。
SCSI通信模式
SCSI体系结构模型
SCSI协议栈结构
SCSI的缺点
SCSI是点对点的、直接相连的计算机到存储器的设备接口, 不适用于主机到存储器网络通讯。 SCSI总线长度被限制在25米以内,对于Ultra SCSI长度限制 为12米,不适于构造各种网络拓扑结构。 SCSI总线上设备数限制为15,不适用于多服务器对多存储 器设备的网络结构
删除iscsi存储
(1)登出iscsi存储 iscsiadm -m node -T LUN_NAME -p ISCSI_IP -u (2)对出iscsi所有登录 iscsiadm -m node --logoutall=all (3)删除iscsi发现记录:iscsiadm -m node -o delete -T LUN_NAME -p ISCSI_IP
Step 4: 配置重启 Step 5: 查看输出状态
详见/view/5e3778a5f524ccbff1218437.html?re=view
1
存储结构简介
CONTENTS
目 录
2 3 4 5
SCSI协议
iSCSI协议
CentOS下挂载Initiator
1
存储结构简介
CONTENTS
目 录
2 3 4 5
SCSI协议
iSCSI协议
CentOS下挂载Initiator
Linux下用iSCSI target软件搭建PC架构
6
References
iSCSI接口
iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设 备使用的可以在IP协议的上层运行的SCSI指令集,这种指 令集合可以实现在IP网络上运行SCSI协议,使其能够在诸 如高速千兆以太网上进行路由选择。iSCSI技术是一种新 储存技术,该技术是将现有SCSI接口与以太网络(Ethernet) 技术结合,使服务器可与使用IP网络的储存装置互相交换 资料。
6
References
CentOS 下挂载iSCSI Initiator
Step 1: 从iso或CDROM中安装iSCSI包
1.1 将光盘或者 iso镜像挂载到系统中,如果提示/var/cdrom不存在,那么先用mkdir /var/cdrom建立文件夹
CentOS 下挂载iSCSI Initiator
Step 1: 从iso或CDROM中安装iSCSI包
1.2 用find -name '*iscsi*'查找和iscsi有关的包 1.3 将安装包copy到临时安装文件夹 /tmp 1.4 使用 rpm -ivh iscsi-ini(table补齐) 安装,之后用rpm -qa |grep iscsi 命令查看是否安 装好
使用 iscsiadm -m discovery -t st -p xxx.xxx.xxx.xxx 向存储发出请求, 使用iscsciadm -m node -l 登陆 使用iscsiadm -m session查看是否连接
CentOS 下挂载iSCSI Initiator
Step 4: 修改Initiator的名字
2 3 4 5
iSCSI协议
CentOS下挂载Initiator
Linux下用iSCSI target软件搭建PC架构
6
References
存储结构
DAS (Direct Attached Storage)
将存储设备通过SCSI (Small Computer Storage Interface) 等接口直接连接到计算机上。 DAS是连接大容量存储设备到服务器和LAN (Local Area Network)最常用的方法。在此连 接中, 一组磁盘直接附加到服务器。
用fdisk -l查看是否挂上去,这里显示已经挂载成功,可以使用fdisk 、dev/sdb1 分区, 还可以使用mkfs.ext3 /dev/sdb1 格式化,最后可以把/dev/sdb1 挂载到/usr/nas 下,当 然,首先用mkdir建立。
iSCSIadm 命令总结
增加iscsi存储
(1)发现iscsi存储:iscsiadm -m discovery -t st -p ISCSI_IP (2)查看iscsi发现记录:iscsiadm -m node (3)登录iscsi存储:iscsiadm -m node -T LUN_NAME -p ISCSI_IP -l (4)开机自动: iscsiadm -m node –T LUN_NAME -p ISCSI_IP --op update -n node.startup -v automatic
SCSI (Small Computer System Interface)
SCSI相关概念
SCSI ID
• 一个独立的SCSI总线按照规格不同可以支持8或16个SCSI设备,设备的编号需要通过 SCSI ID来进行控制,系统中每个SCSI设备都必须有自己唯一的SCSI ID,SCSI ID实际上 就是这些设备的地址,窄SCSI总线最多允许8个、宽SCSI总线最多允许16个不同的 SCSI设备和它进行连接。
目标是让它支持数据块类型的逻辑地址,以取代用柱面、磁头和扇区来表示的物理地 址。而且这种接口将以字节为单位给出数据,而不是以位为单位的串行方式。
SCSI是一种连接主机和外围设备的接口,支持包括磁盘驱 动器、磁带机、光驱、扫描仪在内的多种设备。
它由SCSI控制器进行数据操作,SCSI控制器相当于一块小型CPU,有自己的命令集和缓 存。 在SCSI总线中,SCSI控制器也算是一个设备。
iSCSI使用IP和以太网结构来扩展对SAN存储的访问,并把 SAN连接扩展到任何距离
该技术的基础是用于传输存储流的SCSI命令和用户网络的 TCP/IP协议。iSCSI是关于SCSI命令、数据和状态到TCP/IP 网络的映射的协议。
iSCSI协议模型
• SCSI层:根据应用发出的 请求建立SCSI CDB(命令描 述块),并传给iSCSI层;同 时接受来自iSCSI层的CDB, 并向应用返回数据。 • iSCSI层:对SCSI CDB进行 封装,以便能够在基于 TCP/IP协议的网络上进行 传输,完成SCSI到TCP/IP 的协议映射。这一层是 iSCSI协议的核心层。 • TCP层:提供端到端的透 明可靠传输。 • IP层:对IP报文进行路由 和转发。 • Link层:提供点到点的无 差错传输
存储结构
1
存储结构简介
CONTENTS
目 录
2 3 4 5
SCSI协议
iSCSI协议
CentOS下挂载Initiator
Linux下用iSCSI target软件搭建PC架构
6
References
SCSI (Small Computer System Interface)
SCSI起源于1979年
CentOS 下挂载iSCSI Initiator
Step 2: 修改Initiator的名字
2.1 用vi打开initiatorname.iscsi文件,将initiator更名为一个方便记忆的名字,保存退出。
CentOS 下挂载iSCSI Initiator
Step 3:使用iscsiadm命令进行控制
SCSI相关概念
Initiator和Target
• Initiator是一个在SCSI 总线上触发任务的设备,目标器是执行该任务的设备。
主机适配器HBA和SCSI 控制器
• 一般情况下,HBA作为启动设备,磁盘/磁带作为Target设备。
桥式控制器
• 当控制器用一块独立的电路板实现,而物理设备通过与设备相关的接口连接到它上 面时,该控制器就被称为桥式控制器。
可输出的设备有如下几种
• • • • • Lvm卷设备 由文件组成的块设备(经过tgting工具处理过的) 单一的分区 整个磁盘 RAID组成的卷设备
Step 3: 修改配置文件(/etc/tgt/targets.conf)
配置文件选项可以参考:/iscsi.conf.5.htm
iSCSI HBA
iSCSI设备的不同之处在于它们通过iSCSI HBA (主机总线适 配器)被访问
该HBA卡是SCSI HBA卡和网卡的结合。 当服务器需要把数据存入存储设备时,服务器转发数据到iSCSI HBA卡,在此它变成标 准的SCSI数据。该数据接着被封装到IP包并通过以太网发送出去。一旦它到达该iSCSI 存储设备,IP包信息被剥离,数据被迁移到该存储设备的内部SCSI控制器,后者接着 把它转发给磁盘。 iSCSI的一个优势是它完全透明,服务器软件只把它看作是SCSI控制器,而网络只把它 看作IP数据流。
PC+TOE架构
这种架构就是在PC架构上,加入协议卸载网卡。把原本用CPU包装、拆解iscsi数据到 tcp协议包的操作,转由网卡中的专用芯片来完成,从而减轻CPU的压力。