我有一个由两个节点组成的 Windows Server 2022 故障转移群集。它已配置文件服务器角色(通过向导),并且按预期工作。
使用故障转移群集管理器(GUI),我添加了另一种类型的资源通用服务到该角色。我选择了所需的服务并输入了所需的命令行选项启动参数并经 确认Get-ClusterResource -Name myservice | Get-ClusterParameter
。
当我将资源放在网上(在 GUI 或 PowerShell 中Start-ClusterResource
)时,服务将启动,但任务管理器显示可执行文件是在没有命令行选项的情况下启动的。
我如何为该服务提供命令行选项?
答案1
我发现的一种方法是编辑注册表中的服务定义。找到服务的注册表项(按服务名称,而不是显示名称):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\myservice
的值ImagePath
可能是这样的:
%SystemRoot%\system32\myservice.exe
将所需的命令行选项附加到ImagePath
,如下所示:
%SystemRoot%\system32\myservice.exe -a -bc --something -f "D:\somefolder\configfile"
确保仅使用该可执行文件所需的有效选项和正确格式(-f
vs. /F
)。无效的选项或语法将阻止服务启动。
去做所有集群节点上都相同,然后停止并启动集群资源。
PS:将该注册表项添加到该群集资源的注册表复制项中未产生预期结果。它总是ImagePath
在启动服务之前重置(删除命令行参数)。但我可能按错误的顺序执行了该操作。