【发布时间】:2017-03-20 03:23:36
【问题描述】:
我正在尝试在 Windows Server 2016 Standard 上创建本地开发(不安全)Service Fabric 群集。我已按照this article 中的说明进行操作。但是,我遇到了一个相当有趣的错误,找不到任何可以帮助我解决此问题的方法。
FabricHostSvc 未由 FabricInstallerSvc 在机器上安装 本地主机。 FabricSetup 可能已失败。创建集群错误: System.AggregateException:发生一个或多个错误。 ---> System.Fabric.FabricServiceNotFoundExc eption:FabricHostSvc 不是 由 FabricInstallerSvc 在机器 localhost 上安装。 FabricSetup 可能 失败了。在 Microsoft.ServiceFabric.DeploymentManager.DeploymentManagerInternal.StartAndValidateInstallerServiceCompletion(Str ing machineName, ServiceController installerSvc) 在 System.Threading.Tasks.Parallel.c__DisplayClass17_0
1.<ForWorker>b__1() at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)1 正文, Action
at System.Threading.Tasks.Task.<>c__DisplayClass176_0.<ExecuteSelfReplicating>b__0(Object ) --- End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken) at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallel Options, Action2 bodyWithState, Func4 bodyWithLocal, Func1 localInit, Action1 localFinally) 在 System.Threading.Tasks.Parallel.ForEachWorker[TSource,TLocal](IEnumerable1 source, ParallelOptions parallelOption s, Action1 body, Action2 bodyWithState, Action3 bodyWithStateAndIndex, Func4 bodyWithStateAndLocal, Func5 bodyWithE verything, Func1 localInit, Action1 localFinally) 在 System.Threading.Tasks.Parallel.ForEach[TSource](IEnumerable1 source, Action1 body) 在 Microsoft.ServiceFabric.DeploymentManager.DeploymentManagerInternal.RunFabricServices(List1 machines, FabricPacka geType fabricPackageType) at Microsoft.ServiceFabric.DeploymentManager.DeploymentManagerInternal.<CreateClusterAsyncInternal>d__7.MoveNext() ---> (Inner Exception #0) System.Fabric.FabricServiceNotFoundException: FabricHostSvc was not installed by FabricInstall erSvc on machine localhost. FabricSetup may have failed. at Microsoft.ServiceFabric.DeploymentManager.DeploymentManagerInternal.StartAndValidateInstallerServiceCompletion(Str ing machineName, ServiceController installerSvc) at System.Threading.Tasks.Parallel.<>c__DisplayClass17_01.b__1() 在 System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
在 System.Threading.Tasks.Task.c__DisplayClass176_0.b__0(对象 )清理错误的安装。在注册表中找不到 FabricRoot 目标机器本地主机。创建集群失败。了解更多信息 请查看 FabricLogRoot 中的痕迹。创建集群失败 异常:System.AggregateException:发生一个或多个错误。 ---> System.AggregateException:发生了一个或多个错误。在 Microsoft.ServiceFabric.DeploymentManager.DeploymentManagerInternal.d__7.MoveNext() --- 从先前抛出异常的位置结束堆栈跟踪 --- 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务 任务)在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务 任务)在 Microsoft.ServiceFabric.DeploymentManager.DeploymentManager.d__0.MoveNext() --- 内部异常堆栈跟踪结束 --- 在 System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) 在 System.Threading.Tasks.Task.Wait(Int32 毫秒超时, CancellationToken 取消令牌)在 Microsoft.ServiceFabric.Powershell.ClusterCmdletBase.NewCluster(字符串 clusterConfigurationFilePath,字符串结构 PackageSourcePath,布尔值 清理失败) --->(内部异常 #0)System.AggregateException:发生一个或多个错误。在 Microsoft.ServiceFabric.DeploymentManager.DeploymentManagerInternal.d__7.MoveNext() --- 从先前抛出异常的位置结束堆栈跟踪 --- 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务 任务)在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务 任务)在 Microsoft.ServiceFabric.DeploymentManager.DeploymentManager.d__0.MoveNext()
以前有没有人遇到过这个错误并修复它?这个错误是如何解决的?
旁注:收到此错误后,我运行 CleanFabric PowerShell 脚本并从服务器中删除所有 Service Fabric 文件并尝试再次运行安装,但出现相同错误信息。
此外,计算机上没有安装 Service Fabric SDK(您将在本地开发计算机上使用的 SDK)。其原因是由于 Microsoft 声明的官方先决条件如下所示。
Prerequisites for each machine that you want to add to the cluster:
1. A minimum of 16 GB of RAM is recommended.
2. A minimum of 40 of GB available disk space is recommended.
3. A 4 core or greater CPU is recommended.
4. Connectivity to a secure network or networks for all machines.
5. Windows Server 2012 R2 or Windows Server 2012 (you need to
have KB2858668 installed).
6. .NET Framework 4.5.1 or higher, full install.
7. Windows PowerShell 3.0. The RemoteRegistry service should be running on all the machines.
The cluster administrator deploying and configuring the cluster must have administrator privileges on each of the machines. You cannot install Service Fabric on a domain controller.
我不禁觉得有一些明显的缺失,但我非常密切地关注文档,所以这相当令人困惑。
【问题讨论】: