SharePoint 2013移除服务器报错"CacheHostInfo is null"

笔者将一台SharePoint 场中的一台机器通过Configuration Wizard退了场. 当笔者想到管理中心去Remove Server的时候, 遇到了报错:

CacheHostInfo is null

 

上网搜索一下, 发现这篇文章. 写得非常好, 我把他的脚本运行了一遍, 解决了这个问题.

 

问题描述

===========================

image

 image

ULS Log中的条目

06/06/2013 23:50:51.33    w3wp.exe (0x17AC)    0x067C    SharePoint Foundation    DistributedCache    ajeou    Unexpected    A failure occurred in SPDistributedCacheServiceInstance::UnprovisionInternal. cacheHostInfo is null for host 'APP1'.    3cf9229c-3b22-2062-33bb-ec5a90a0419f


06/06/2013 23:50:51.33    w3wp.exe (0x17AC)    0x067C    SharePoint Foundation    DistributedCache    ajeoy    Unexpected    A failure occurred SPDistributedCacheServiceInstance::UnprovisionInternal()... isGraceFulShutDown 'False' , isGraceFulShutDown, Exception 'System.InvalidOperationException: cacheHostInfo is null     at Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheServiceInstance.UnProvisionInternal(Boolean isGraceFulShutDown)'    3cf9229c-3b22-2062-33bb-ec5a90a0419f


06/06/2013 23:50:51.33    w3wp.exe (0x17AC)    0x067C    SharePoint Foundation    DistributedCache    aelvg    Unexpected    A failure occurred SPDistributedCacheServiceInstance::UnProvision() , Exception 'System.InvalidOperationException: cacheHostInfo is null     at Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheServiceInstance.UnProvisionInternal(Boolean isGraceFulShutDown)     at Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheServiceInstance.Unprovision()'    3cf9229c-3b22-2062-33bb-ec5a90a0419f


06/06/2013 23:50:51.34    w3wp.exe (0x17AC)    0x067C    SharePoint Foundation    Runtime    tkau    Unexpected    System.InvalidOperationException: cacheHostInfo is null    at Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheServiceInstance.UnProvisionInternal(Boolean isGraceFulShutDown)     at Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheServiceInstance.Unprovision()     at Microsoft.SharePoint.Administration.SPServer.Delete()     at Microsoft.SharePoint.WebControls.TopologyView.RemoveLink_Click(Object sender, CommandEventArgs e)     at System.Web.UI.WebControls.LinkButton.OnCommand(CommandEventArgs e)     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)    3cf9229c-3b22-2062-33bb-ec5a90a0419f

 

解决方案

==================

脚本列在这里.

$SPFarm = Get-SPFarm

$cacheClusterName = "SPDistributedCacheCluster_" + $SPFarm.Id.ToString()
$cacheClusterManager = [Microsoft.SharePoint.DistributedCaching.Utilities.SPDistributedCacheClusterInfoManager]::Local

$cacheClusterInfo = $cacheClusterManager.GetSPDistributedCacheClusterInfo($cacheClusterName)

$instanceName ="SPDistributedCacheService Name=AppFabricCachingService"
$serviceInstance = Get-SPServiceInstance | ? {($_.Service.Tostring()) -eq $instanceName -and ($_.Server.Name) -eq "APP1"}

$serviceInstance.Delete()

$cacheClusterInfo.CacheHostsInfoCollection 

 

这里值得学习的是Get-SPServiceInstance的使用以及如何对其中的结果进行filter, 从而得到自己想要的service instance的用法.

排错中心思想很简单, 已经退场的服务器APP1上还有Distribution Cache服务的注册信息没有清理干净. 需要找到这个service instance, 删掉它.

 

参考资料

==============================

Cannot Remove Server Reference from Farm CacheHostInfo is null

http://summit7systems.com/cannot-remove-server-reference-from-farm-cachehostinfo-is-null/

posted on   中道学友  阅读(923)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律

导航

< 2013年6月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6

技术追求准确,态度积极向上

点击右上角即可分享
微信分享提示