HTTP 401 error when you access to Report Manager in a load balancing deployment.

In a Reporting Services load balancing deployment, you receive the following error message while you access to Report Manager using the balancer virtual name in the URL:

"The request failed with HTTP Status 401"

However, the Report Server URL works properly.

This is solved by configuring the ReportServerURL setting on the rsreportserver.config file.

            On each node you must specify the local report server URL:

            <ReportServerUrl> https://nodename/ReportServer </ReportServerUrl>

 

 

This tag is used when you want your Report Manager connects to a specific Report Server Web Service. You need to set it when you want the Report Manager connects to a Report Server hosted on another instance
or on a remote computer.

 

This value is empty by default or it is not included on the rsreportserver.config (depends on the version) and you need to add it.

 

In a load balancing deployment, if this value doesn’t exist or it is not set, the Report Manager will point to the Report Server URL using the virtual balancer name (because you set it on the <Hostname> tag on the configuration file when you configured your SSRS load balancer deployment.) In this case, the request from the Report Manager to the Report Server backs to the balancer and can ends up on the report server hosted on the other node. If Kerberos authentication is not configured, the credentials could not be passed and you will receive the HTTP 401 error.

 

If we specified the <ReportServerUrl> to point to the local report server URL, the Report Manager that is handling the request from the balancer will send the request to the Report Server hosted on the same node as it is. In this case as the request stays on the same node, no authentication issues are handled.