StarWind运行环境WINDOWS,支持SCSI-3;
FreeNAS运行环境LINUX,0.7.2支持SCSI-3;见: http://www.getnas.com/
openfiler运行环境LINUX,不支持SCSI-3;见:openfiler 搭建虚拟存储 并 配置服务端
Windows2003群集对共享存储设备要求不高,我们往往可以使用VMware自身的功能创建一个或多个共享磁盘。但是,Windows 2008群集对存储要求很高,据说一定要支持SCSI-3 Persistent Reservation。一般就通过特殊的软件来模拟共享存储设备。
iSCSI设备是通过普通的TCP/IP网络访问共享存储,因此最适合通过软件进行模拟。iSCSI模拟器软件用得比较多的主要有两个:StarWind、Microsoft iSCSI Target 。我们这里以前者为例介绍模拟iSCSI设备。
一、安装StarWind
1、准备计算机
StarWind将安装在一台Win2008服务器上,这台服务器的IP地址为:192.168.1.1
然后我们将从一台客户端计算机访问iSCSI设备,客户端的IP地址为:192.168.1.21
如果是在生产环境中,建议:为了连接iSCSI设备,最好独立使用一套网络(网卡、网络、交换机),隔离与其他应用程序的网络通信。
2、启动相应的服务
由于iSCSI通过TCP协议访问共享存储,而Microsoft又提供了模拟器,所以Win2008中直接集成了相关的驱动。
在安装StarWind软件时,要求计算机必须启动“iSCSI 发起程序”服务。因此,在安装之前还是最好启动“iSCSI 发起程序”。
在“开始”--“所有程序”--“管理工具”,找到“iSCSI 发起程序”。
首先弹出一个提示信息,询问是否让“iSCSI 发起程序”以后在每次开机时都自动运行。毫无疑问,通常情况下选择“是”。
接着,又出现一个提示信息,询问是否自动配置以打开防火墙的端口。由于Windows2008的安全策略发生重大变化,默认情况下防火墙不会打开端口,这样就阻了访问外部iSCSI设备。我们选择“是”,让Windows帮我们打开防火墙的端口,默认是TCP3260。
(类似地,在在Windows2008环境中安装SQL Server 时,在安装中只会有一个不起眼的警告,而不会自动打开TCP1433等端口)
3、安装软件
安装过程比较简单, 其中会有3个提示信息:
第一个提示信息显示这台计算机没有启动“iSCSI 发起程序”,如果不启动这个服务,安装程序就不能继续往下进行。如果我们前面的操作已经启动了“iSCSI 发起程序”,就不会再出现这个警告。
第二个和第三个是警告信息,确认是否要安装驱动程序,毫无疑问,我们点“安装”。
二、创建共享磁盘
1、启动StarWind管理器
默认情况下,StarWind管理器放在任务栏的右下角
2、添加主机
3、连接到主机
默认用户名为:root ,默认的密码为:starwind
4、添加第一块共享磁盘
5、继续添加2块共享磁盘
按照上述步骤,继续添加2块共享磁盘,最后我们一共创建了3块共享磁盘,分别为: QuorumDisk、DtcDisk、SqlDisk,容量分别为500MB、600MB、4000MB 。
三、在客户端计算机上连接iSCSI设备
1、启动iSCSI客户端
转到客户端计算机,从“管理工具”中启动“iSCSI 发起程序”。如果是第一次启动,会有2个提示信息(前面的内容已经描述过)。启动后,出现“iSCSI 发起程序 属性”窗体。
2、添加门户
转到“发现”选项卡,“添加门户”
3、登录目标
转到“目标”标签页,这里显示在我们刚才设定的“目标”那里发现的可用的iSCSI设备。此时,这些“目标”的当前状态为“不活动”。
依次“登录”所有的“目标”,这样,我们就连接到了iSCSI设备。结果如下图:
四、使用iSCSI设备
1、发现新设备
进入“磁盘管理”,我们发现会多出个3磁盘。
2、联机
新磁盘的状态是“脱机”,磁盘类型(有基本和动态两类)为“未知”。在新磁盘上点右键,然后在菜单中选择“联机”。
3、初始化
“联机”后,磁盘状态变为“没有初始化”,磁盘类型仍然为“未知”。在右键菜单中选择“初始化磁盘”。
4、创建卷
经过初始化之后,磁盘状态变为“保留”,磁盘类型为“基本”(iSCSI磁盘不可以转换为动态磁盘,只能是基本磁盘)。由于分区状态显示“未分配”,所以需要创建分区(创建“卷”)。由于iSCSI磁盘不能转换为动态磁盘,所以它不能建立跨区卷、RAID0带区卷、RAID1镜像卷,只可以“新建简单卷”。
5、完成
按上述步骤完成第一块共享磁盘的联机与初始化,然后按相同的步骤处理剩下的共享磁盘。全部完成后的结果如下:
完成上述操作之后,就可以的本地计算机上像使用本地磁盘一样使用这3块磁盘了。
五、将iSCSI添加到群集
1、添加“可用存储”
前面我们通过创建了3个共享存储的磁盘,接下来我们将它们用到群集中。
首先,在每个节点都分别运行“iSCSI 发起程序”,添加“目标”并且“登录”这些“目标”。
然后,在群集的主节点(“当前主服务器”)上运行“磁盘管理”,对这些共享磁盘进行“联机”、“初始化”、“新建简单卷”。其他的节点会自动感知到这些共享磁盘的状态变化。
最后,在群集的任意一个节点上打开“管理工具”中的“故障转移群集管理”,在左侧的浏览框中打开“存储”。在最右侧的任务列表框中,点“添加磁盘”。
勾选磁盘(可多选),然后点“确定”。
添加完成的结果如下:
2、加入群集后,磁盘状态的变化
(1)当第一个节点未进行“磁盘管理”时,磁盘的状态是“脱机”,磁盘类型是“未知”。
(2)当第一个节点通过“磁盘管理”对磁盘“联机”并“初始化磁盘”后,所有节点都会自动感知,显示磁盘类型为“基本”。但对磁盘状态显示不同:在第一个节点上显示为“联机”;在第二个节点上显示磁盘状态为“脱机”,并有红色向下箭头标识。
(3)当磁盘被添加到群集时,磁盘状态又发生了变化。由于群集拥有磁盘了控制权,因此所有的节点都显示磁盘状态为“保留”。节点之间的差异表现在:群集将共享磁盘交由某个节点控制(可读、可写)时,其他所有节点则全部显示红色向下箭头标识(这些节点此时不可访问这块共享磁盘)。
下图的(1)、(2)、(3)分别对应第二个节点的上述3种状态:
本文出自 “我们一起追过的MSSQL” 博客,请务必保留此出处http://jimshu.blog.51cto.com/3171847/590412