如何修复独立 Service Fabric 群集中的错误 IP 地址
How to repair bad IP addresses in standalone Service Fabric cluster
我们刚刚将一个独立的 Service Fabric 集群发送到配置错误的客户站点。我们的设置:
- 服务结构 6.4
- 2 Windows 个服务器,每个 运行 3 个托管集群的 Hyper-V 虚拟机
我们使用节点的静态 IP 地址在本地配置集群。当服务器到达时,Hyper-V 机器的 IP 地址被更改以符合客户的可用 IP 地址。现在我们无法连接到集群,因为 clusterConfig 中的每个 IP 都是错误的。有没有什么方法可以在不重新安装集群的情况下从中恢复?如果可能,我们希望保留分配给 VM 的新 IP。
我只在我的测试环境中测试过这个(我以前从未在生产环境中做过这个,所以风险自负),但是因为你无论如何都无法连接到集群,我认为这是值得的去试试。
连接到集群中的每个虚拟机并执行以下步骤:
- 找到 Service Fabric 集群文件(通常是 C:\ProgramData\SF\{nodeName}\Fabric)
- 获取 ClusterManifest.current.xml 文件并将其复制到临时文件夹(例如 C:\temp)
- 转到 Fabric.Data 子文件夹,将 InfrastructureManifest.xml 文件复制到同一临时文件夹
- 在您复制的每个文件中,更改节点的 IP 地址以更正值
- 在 powershell
中通过 运行ning net stop FabricHostSvc
命令停止 FabricHostSvc 进程
成功停止后运行这个powershell(管理员模式)命令更新节点集群配置:
New-ServiceFabricNodeConfiguration -ClusterManifestPath C:\temp\ClusterManifest.current.xml -InfrastructureManifestPath C:\temp\InfrastructureManifest.xml
更新配置后启动 FabricHostSvc net start FabricHostSvc
为每个节点执行此操作并祈祷最好。
我们刚刚将一个独立的 Service Fabric 集群发送到配置错误的客户站点。我们的设置:
- 服务结构 6.4
- 2 Windows 个服务器,每个 运行 3 个托管集群的 Hyper-V 虚拟机
我们使用节点的静态 IP 地址在本地配置集群。当服务器到达时,Hyper-V 机器的 IP 地址被更改以符合客户的可用 IP 地址。现在我们无法连接到集群,因为 clusterConfig 中的每个 IP 都是错误的。有没有什么方法可以在不重新安装集群的情况下从中恢复?如果可能,我们希望保留分配给 VM 的新 IP。
我只在我的测试环境中测试过这个(我以前从未在生产环境中做过这个,所以风险自负),但是因为你无论如何都无法连接到集群,我认为这是值得的去试试。
连接到集群中的每个虚拟机并执行以下步骤:
- 找到 Service Fabric 集群文件(通常是 C:\ProgramData\SF\{nodeName}\Fabric)
- 获取 ClusterManifest.current.xml 文件并将其复制到临时文件夹(例如 C:\temp)
- 转到 Fabric.Data 子文件夹,将 InfrastructureManifest.xml 文件复制到同一临时文件夹
- 在您复制的每个文件中,更改节点的 IP 地址以更正值
- 在 powershell 中通过 运行ning
成功停止后运行这个powershell(管理员模式)命令更新节点集群配置:
New-ServiceFabricNodeConfiguration -ClusterManifestPath C:\temp\ClusterManifest.current.xml -InfrastructureManifestPath C:\temp\InfrastructureManifest.xml
更新配置后启动 FabricHostSvc
net start FabricHostSvc
net stop FabricHostSvc
命令停止 FabricHostSvc 进程
为每个节点执行此操作并祈祷最好。