This section provides an overview of the various tools used in installing and configuring Reporting Services, and designing, managing, and scheduling reports.
Setup and Configuration
The first step in deploying Reporting Services is correctly installing and configuring your server. If you are familiar with SQL Server 2000 Reporting Services, you know that configuration of the server was handled directly during setup. After setup completed, you made changes to the configuration by editing the configuration files directly or using a set of command line tools.
In contrast, setup of SQL Server 2005 Reporting Services comes in two configurations: a default server configuration that is useful for single box configurations, and a "files only," or custom, configuration. Custom configurations are useful when you want to use a remote SQL Server database to store your Reporting Services metadata or you are setting up a scale-out configuration on your server. You might also end up using a custom configuration when upgrading from SQL Server 2005 if you have made modifications to the configuration files on your server.
Reporting Services Configuration Tool
After setup is complete, you configure the report server through the Reporting Services Configuration tool, as shown in Figure 17-1. This new tool ships with SQL Server 2005 and is a vast improvement over how you configured the SQL Server 2000 version (which was basically through Notepad).
Figure 17-1. Reporting Services configuration tool.
Configuring a single server is pretty easy with the tool. Like the SQL Server Configuration Manager described in Chapter 3, the Reporting Services Configuration tool works via a WMI interface. This means that you can manage a Reporting Services instance remotely and before the Web service has been initialized.
It is important to understand that Reporting Services, unlike the relational engine, is actually two services. The first is the Report Server Windows Service, which is stopped and started via the Service Control manager. The Windows Service is responsible for asynchronous or background processing tasks. The second service that makes up Reporting Services is the web service (actually hosted within Internet Information Services), which is responsible for responding to on-demand user requests.
Configuration of Reporting Services in a scale-out configuration is a feature of the enterprise edition. It enables you to add new Reporting Services instances to the same catalog database, thereby accommodating additional user load. When configuring a scale-out configuration, it is important to understand the role of initialization, which occurs when a new instance is added.
All report servers in a scale-out configuration share a single key (called a symmetric key) used to encrypt certain information, generally connection strings and credentials, in the report server database. Copies of the symmetric key itself are stored in a table in the report server database, each copy encrypted using the machine key of each of the nodes in the configuration. During initialization, this key is decrypted by one machine and a row is added for the new machine. The Initialization tab in the Tool lets you control this process as well as remove machines from the configuration that are no longer necessary.
If all machines lose the capability to decrypt this key, you need to reenter all the encrypted data. Therefore, in addition to backing up the Report Server catalog database, you should make a backup of the key, using the Configuration Tool, and keep it in a safe place in case you need to restore the database to a new set of machines.