我们正在使用 Windows Server 2012 R2 为其他服务器提供一些 iSCSI 目标。服务器有一个存储池,在其上有一个虚拟磁盘,然后在这个虚拟磁盘上创建一个 iSCSI 目标。
但是,服务器重启后,目标总是丢失,启动器无法连接到该目标。如果我重新启动 Microsoft iSCSI Software Target 服务(即“WinTarget”),目标就会正确初始化并正常工作。
由于我认为这是一个依赖问题,我尝试将服务启动设置为“自动(延迟启动)”,但失败并出现错误(“无法设置延迟启动,参数不正确”)。
这是一个已知问题吗?如果是,我该如何延迟启动此服务?
答案1
是的,这是一个已知问题。遗憾的是,原生 Microsoft iSCSI Target 无法投入生产。它速度慢、不稳定、性能有限且没有缓存等。有多种免费工具可以为您提供快速可靠的 iSCSI 目标。我们正在使用 Starwindhttps://www.starwindsoftware.com/starwind-virtual-san-free为此,它为 ESX 和 Windows 服务器提供了 iSCSI 目标。一定能解决您的问题。
答案2
延迟启动解决方法(适用于任何服务/应用):
使用来自此主题感谢 James Roper,我将服务启动类型设置为手动(此选项有效,与延迟启动不同)并添加了启动脚本(带有延迟)来启动该服务,有效地获得了“延迟启动”:
- 将 Microsoft iSCSI Software Target Service 启动类型设置为
Manual
创建一个名为某处的文件
StartISCSI.CMD
,包含以下命令(WinTarget
是 iSCSI 目标服务的名称):timeout 60 net start WinTarget
创建一个在启动时运行的计划任务
StartISCSI.CMD
(配置为即使无人登录也会启动)。
这不完全是我的问题的答案,但至少它是一种解决方法,所以它可能对其他人有帮助,直到有人更好地了解为什么它不能正常工作。