Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11601084
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-05-28 09:58:26

本文介绍了iSCSI系统的基本组成部分及一些常用术语和经验。

iSCSI大举进入企业应用环境,很多CIO和存储管理员都在考虑这种费用低廉的技术,希望用这种技术推动企业向集中式存储环境转变,或者为现有的存储系统提供补充。尽管目前 对于iSCSI应该在什么样的环境中使用还存在着争议,但是未来却是非常明确的:iSCSI在未来一定会有一席之地。而且由于它的价格只是光纤通道价格的一小半,但性能却非常优 异,所以iSCSI技术的未来一定是光明的。

iSCSI组成部分和术语
最简单的iSCSI系统至少包含以下四个部分:

  • SCSI initiator或者iSCSI HBA
  • iSCSI target
  • 一台或者多台服务器
  • 以太网

    iSCSI initiator是一个硬件设备或者是安装在计算机上的一个软件,它负责处理同iSCSI阵列的通信。服务器或者电脑(甚至是桌面电脑或者其他的工作站都可以直接同iSCSI阵列 连接)和iSCSI阵列之间通常有两种连接方法。第一种方法是使用基于软件的iSCSI initiator,比如微软提供的免费iSCSI initiator,很多Linux 版本或者其他操作系统(包括 AIX、NetWare、Solaris和HP-UX)也提供了基于软件的iSCSI initiator。第二种方法使用的不是软件,而是硬件设备。iSCSI HBA(Host Bus Adapter)是一种硬件iSCSI initiator,它同基于软件的iSCSI initiator相比有很多优点。首先,基于硬件的设备不会像基于软件initiator一样需要耗占CPU的资源来处理iSCSI命令。其次,硬件设备可以从 iSCSI SAN导入系统,而这是基于软件initiators不具备的功能。第三,由于硬件设备是专用的,所以基于硬件的iSCSI initiator可以提供更好的总体存储性能。

    我的建议:首先,你应该使用gigabit以太网适配器,但是你只应该在需要从SAN导入系统或者服务器的CPU被iSCSI命令耗占了过多资源的情况下使用iSCSI HBA。今天,千兆以太网 非常便宜,千兆以太网 连接中的iSCSI initiator更有效率。其次,如果可能的话,你应该在两个独立的NIC上使用MPIO(Multi Path I/O)。简而言之:为服务器上的两个千兆以 太网 NIC都提供iSCSI连接,并仔细阅读操作系统的iSCSI MPIO相关资料。在我所在的公司,我们使用了Dell的刀片服务器,每台刀片服务器上都有4个千兆以太网 NIC。两个NIC是 用于连接前端的,另外两个则是用于连接我们的EqualLogic PS200E阵列。只要有可能,我们就会使用MPIO。

    “array”和“target”的区别
    到目前为止,我将这种存储设备称为“iSCSI array”。在术语中,一个可以被用于存储数据的iSCSI array或者具有iSCSI功能的设备被称为“iSCSI target”。我之所以将iSCSI array和具备iSCSI功能设备区分开来,是因为对于绝大部分操作系统来说,都可以用一些软件将系统转变成一个iSCSI target,并用系统磁盘满足你的存储需求。在这些情况下, 尽管你仍然在使用iSCSI,但是你并没有真正地在使用阵列。所以为了避免将两者混淆,我们使用了“target”这个词。

    initiator 和target 形成了iSCSI SAN的两个终点。在很多情况下,如果你使用的是企业级的iSCSI targets(比如我曾经介绍过的EqualLogic PS系列),那么尽管有多个阵列, 你仍然只有一个target,因为每个独立的阵列都是同一个集群的一部分,每个initiator都被看成是统一的一个target。如果你确实拥有多个阵列,我依然会建议你将两个阵列建成 一个集群,这样你会拥有更好的性能(这还取决于厂商),管理工作也会更为简单,因为所有的管理工作都可以通过一个统一的控制台来完成。

    当然,initiator和 target之间仍然留有很大的空间。你也许知道,iSCSI是使用TCP/IP协议进行通信的,所以将iSCSI两端连接起来所需要的仅仅是一个以太网。你应该在你的 iSCSI网络中使用千兆以太网交换机。次级的设备会严重地影响系统性能,系统性能甚至会降低到不可接受的程度。这也就是说,应该为每个服务器上的两个独立的NIC配备使用两 个高质量的千兆以太网交换机,并提供两个连接(为每个交换机提供一个连接)。对于你的iSCSI targets,应该为每个独立阵列中的两个独立端口配备交换机。最后,将交换机连 接起来。使用这种配置模式,即使一个NIC、两个交换机中的一个或者一条线缆出了故障,你的系统仍然能够工作。你应该将交换机上的巨型帧(Jumbo Frame)和流控制激活,这 样可以获得最佳也是最可靠的性能。

    在未来几年里,iSCSI仍将继续发展,它将能够支持更多更好的驱动器,并将支持下一代以太网(运行速度高达10Gbps)。

  • 阅读(1973) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~