1
Vote

Distributed Cache starting (muli-server)

description

Hi,

I have noticed that whenever I use the script to create a multi-server farm the distributed cache service fails to start. The script returns a pass however the service does not actually start. Digging into it I have found that the windows firewall rule for ICMP incoming (under file and print sharing) must be enabled as AppFabric uses ICMP to check the state of servers before enabling the service.

Can the script be amended to enable these rules 1 for IPv4 and 1 for IPv6?

comments

Terafirma wrote Jul 17 at 2:00 AM

To fix this after deployment I have to run the following script on the servers it fails to start on:

$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 $env:computername}
$serviceInstance.Delete()
Add-SPDistributedCacheServiceInstance
$cacheClusterInfo.CacheHostsInfoCollection

Taken from http://techblog.rakasatria.com/

brianlala wrote Aug 8 at 4:14 AM

Interesting... have never run into this problem, nor have I ever had to add Windows Firewall rules to get Distributed Cache working.

Do your network connections get properly detected as Domain networks? Or are they perhaps stuck on "Public"?

Brian

Terafirma wrote Aug 10 at 11:13 PM

Hi They are definitely seen as domain networks. We do not have a policy that enables the ICMP allow rule by default so it only gets enabled if something turns it on.I have this issue on every multi server farm I have used AutoSPInstaller on and the same thing to fix them.

Looking into it online Microsoft state that AppFabric servers must be able to ping each other. If I make the fixes I mentioned above without enabling the firewall rule it does not work.

Could it be that the Server images you use for testing have ICMP enabled in the image (normally pretty standard in testing images)?