SharePoint 2016, Sharepoint 2013, Sharepoint 2010, Windows Server 2012, Sql Server 2012,2014,IIS, Active Directory,User Profile Service, Managed MetaData Service, Search Service, Topology, Web Application, IIS, Site collection, List, Library, PowerShell, office web app, Windows Authentication, NTLM, Kerberos, Saml, ADFS, Active Directory Import, MIM, SharePoint 2016 Distributed Cache error( ERRS001 & ES0001) – SharePoint

SharePoint 2016 Distributed Cache error( ERRS001 & ES0001)


We have multiple servers farm and Distributed Cache Should run only 1 server in the farm. But When we run the Use-CacheCluster command on one of the SharePoint servers ( Which is not meant for Distributed Cache) and we get following error:

Use-CacheCluster : ErrorCode<ERRPS001>:SubStatus<ES0001>:Error in reading

provider and connection string values. Please provide the values manually.

At line:1 char:1

+ Use-CacheCluster

+ ~~~~~~~~~~~~~~~~

+ CategoryInfo : NotSpecified: (:) [Connect-AFCacheClusterConfigu

ration], DataCacheException

+ FullyQualifiedErrorId : ERRPS001,Microsoft.ApplicationServer.Caching.Com


Or if you run the Get

Get-CacheHost : ErrorCode<ERRPS013>:SubStatus<ES0001>:Error: No valid cluster

settings were provided with Use-CacheCluster.

At line:1 char:1

+ Get-CacheHost

+ ~~~~~~~~~~~~~

+ CategoryInfo : NotSpecified: (:) [Get-AFCacheHostStatus], DataC


+ FullyQualifiedErrorId : Microsoft.ApplicationServer.Caching.DataCacheExc




This error telling us that Server is unable to read and get the values of the Connection String. Basically this information coming from the AppFabric and If Distributed Cache service is not running on the server (where you ran the commands) then it will through the error. Because the server is unable to communicate to the AppFabric. In order to check, on which server the Distributed Cache is running. You can do couple of things.


Open the SharePoint PowerShell and Run the below command

Get-SPServiceInstance | Where {$_.Typename -like “Distributed Cache”}

Above command return Only one server on which DC is running, that is the problem.


What we are seeing is as expected thing. But if you want to access the Distrbuted Cache from all servers in the farm then you have to enable the provision the DC instance on all server in farm.

Now we have couple of options to fix it.

Option # 1

No need to do anything, leave as is. In order to get this command working just login on the server where Distributed Cache is running and run it.

Now, Let’s login on the server where we enabled the DC.

Open the PowerShell and run the following command



Option # 2

Install the Distributed Cache instance on all server in the farm then stop it, it will look little ugly but works

Run the following command on the server where you want to run the DC.


The above command successfully provisions the Distributed Cache Service Instance on the server and start the Service. Now Run the Below command

stop-SPDistributedCacheServiceInstance -Graceful

This will stop the DC on the server not remove it. Now if you run the



As you see, DC is up on the server where we want it run and down on the server where we want it. But this looks ugly, as it is big distraction.


I highly recommend it, remove the DC instance from the Server where don’t want to run to avoid confusion. Just keep it running on the server where it should be.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *