iSCSI(Internet Small Computer System Interface)是一种基于 TCP/IP 网络传输的存储协议,全称是 Internet SCSI。
简单说,它是让网络看起来像一根“远程硬盘线”的技术。
SCSI(Small Computer System Interface)原本是一种本地存储接口标准,用在服务器或工作站上,把硬盘、磁带机等设备直接接到主机上。
比如:
它的特点是:
后来大家希望:
“我能不能不插线,而是通过网络访问远程存储,就像插在自己机器上一样?”
于是 iSCSI 出现了。
它把原本 SCSI 的指令封装进 IP 网络包(TCP 协议) 里发送,让服务器通过普通以太网访问远程磁盘。
换句话说:
iSCSI 系统有两个角色:
角色 | 说明 | 类比 |
---|---|---|
Initiator(发起端) | 就是客户端,一般是服务器主机(比如 Linux、Windows Server) | 想要使用硬盘的电脑 |
Target(目标端) | 存储服务器,提供 iSCSI 磁盘服务 | 存储阵列或共享硬盘设备 |
当主机连接上 iSCSI Target 后,在操作系统里会看到一个 新硬盘(/dev/sdX),就像本地磁盘一样。
假设有两台设备:
流程如下:
/dev/sdb
,可以像本地盘一样格式化、挂载、写文件。底层其实是:A 发出的“写入块数据”的 SCSI 命令 → 被 iSCSI 封装 → 通过网络发给 B → B 执行并返回结果。
对比项 | iSCSI | NFS |
---|---|---|
类型 | 块存储 | 文件存储 |
挂载后看到 | 硬盘(/dev/sdX) | 文件系统目录 |
访问控制 | 操作系统控制 | NFS 服务端控制 |
使用场景 | 数据库、虚拟机磁盘 | 文件共享、备份 |