Home > Articles > Data > SQL Server

  • Print
  • + Share This
This chapter is from the book

Installing Reporting Services on a Web Farm

This section is for people running the SQL Server Enterprise, Developer, or Evaluation versions who want to share the Report Server database with a number of IIS servers and so create a web farm. Before you follow any of these steps, you first need to perform one normal installation of Reporting Services because the steps show you how to add additional IIS servers to an already working installation.

Web Farm Installations

You can take two approaches when installing Reporting Services technology on a web farm.

  1. During the installation wizard, specify that the SQL Server instance to contain the Report Server database is already located on another machine.

  2. Take a preconfigured Reporting Services installation and change the DSN Connection to the Report Server databases and the account credentials that should be used to connect to that database—in the RSReportServer.config file.

We'll walk you through both of these configuration options.

Specify a Different SQL Server Instance

This first approach is fairly straightforward, but it has a restriction: both systems have to be in the same domain or in trusted domains. To start with, prior to running Reporting Services Setup, use Enterprise Manager on the target SQL Server to create a new Domain user named "WebFarmUser" (as shown in Figure 2.13). Next, give this user permission to log in to the Reporting Services database and assign that user to the RSExec role in those catalogs. During Reporting Services installation, specify that the SQL Server instance that you want to be used is located on the SQL Server machine with the WebFarmUser user account.

02fig13.jpgFigure 2.13 "D2" Is a Secondary Development Server Where Reporting Services Was Already Installed. This Screen Was Captured While Executing Setup on Server "D1"

Once you specify a different server to host the SQL Server instance, the installer recognizes this is not a local Report Server database, and assumes that this is a web farm installation. At this point, you'll be presented with an additional dialog (as shown in Figure 2.14) to capture details of an already working installation in the web farm and login details to that installation. These details are used by the wizard to ensure that the symmetric key is correctly configured for the new member of the farm.

02fig14.gifFigure 2.14 Specifying a Pre-Existing Report Server

Reconfigure an Existing Reporting Services Configuration

The other route you can take to setup a Reporting Services web farm configuration is to take an existing Reporting Services installation and change the DSN Connection to the Report Server databases and the account credentials that should be used to connect to those databases. These changes are made to the RSReportServer.config file. The problem is that the details you need to change are encrypted in the file, so you have to use the rsconfig.exe command-line tool and specify the information. For example, the following command-line statement shows how to make the needed changes:

rsconfig.exe -c -s <Server Hosting RS DB> -d <RS Database Name>enter.gif
   -a Windows -u "<Domain Name>\<User>" -p "<password>"
   
  • Having done this, next you need to use Enterprise Manager against the SQL Server hosting the ReportServer database. Here you enable the account you've just specified to log in to the Server with access to the ReportServer and ReportServerTempDB databases. You also need to make this account a member of the RSExec role in both the ReportServer and ReportServer TempDB databases.

  • Restart the Report Server Windows service, and restart IIS (you can restart IIS at the command line with IISRESET)

  • If you are changing the database that a Report Server used to use, you might like to disable the old database at this point.

  • Try to call up the Report Server or the Report Manager in the browser. At this point, it should fail—telling you that the Report Server installation is "not initialized." Don't let that worry you unduly. This is a good sign, as it confirms that you are no longer pointing at any previous installation. However, if you get a message about bad passwords, you need to revisit the rsconfig command line utility and review the account name and password you used. You also need to double-check that you made that account a member of the RSExec role in the two databases as described.

  • As a further check, look in your RSReportServer.config file and find the GUID in the <InstallationID> node. Note the GUID and examine the Keys table in the ReportServer database. You should be able to find two entries with this GUID. You'll find only one if you haven't tried to access the Report Server or Report Manager via the browser yet.

  • Assuming that you have found the two entries in that Keys table (in addition to the other entries that will be in there from the other members of the farm), you should now be able to "initialize" or "activate" this installation. The easiest way to do this is to log on to any other machine that is already working in the web farm and execute rsactivate. No, you can't do this on the machine you are trying to get to join the farm.

    rsactivate –m <machine to be added> -u <Administrator User> -p <Password>
    
  • Retry accessing the Report Server in the browser on the newly added machine.

At this point, you should be able to have a working Reporting Services configuration on your web farm.

  • + Share This
  • 🔖 Save To Your Account