iSCSI存储连接Win2003,服务器使用动态磁盘的问题!
 

使用的网络存储,连接Win2003服务器,发现一奇怪问题,iscsi存储直连win2003服务器,每次重启的时候磁盘管理下存储的那块硬盘都变为脱机状态,右键重新激活后就能用了,分区也还在,发现是动态磁盘的简单卷,网上搜了一下,基本上有以下说法:

    1、windows的initiator不支持动态磁盘

    2、iscsi service加载太晚以至于动态磁盘管理系统认为丢盘了

    3、系统服务启动的早,磁盘管理。ISCSI客户端启动的晚。这个跟微软的关系很大。而且有时候网卡还没启动的时候,ISCSI也看不到硬盘。所以一般都配的基本磁盘。动态的需要每次开机激活

    4、现在新的vista和win 2008好像可以支持iscsi动态磁盘

解决办法1:

    将磁盘设置为基本磁盘。

解决办法2(因为网络存储有2G一个文件的限制,而服务器需要更大空间的一个盘,需要通过动态磁盘合到一起,咨询厂商未解决,只好自己做个批处理解决问题,其中包括加载sql数据库):

建三个文件:online_Disk.bat、online_Disk.txt、attchDB.sql 放到C:\WINDOWS\system32\GroupPolicy\Machine\Scripts\Startup 启动目录下,执行下述操作加到系统启动脚本:

运行“gpedit.msc”,打开本地组策略编辑器,依次点左边的 本地计算机策略->计算机配置->Windows设置->脚本(启动/关闭),双击右侧的“启动”,点添加将"online_Disk.bat"添加进启动脚本里。

online_Disk.bat 文件的内容

diskpart /s online_disk.txt
sqlcmd -i C:\WINDOWS\system32\GroupPolicy\Machine\Scripts\Startup\attchdb.sql

online_Disk.txt 文件的内容

select disk 1
online
select volume 1
assign letter=h noerr
exit

attchDB.sql 文件的内容

IF DB_ID (N'SUSDB') IS NOT NULL
EXEC sp_detach_db 'SUSDB','true'
GO

EXEC ('CREATE DATABASE SUSDB
      ON (FILENAME = ''H:\WSUS\UpdateServicesDbFiles\SUSDB.mdf'')
      FOR ATTACH'