Scale Out Deployment
Scale-out
deployment model of Reporting services allows you to run multiple report server
instances that share a single report server database. The sample Scale -Out
Deployment is shown in below picture.
In below
model there are 4 SSRS Server install on different system, which are sharing
common reporting Server Database which is on the external storage.
The
Scale- Out Deployment could serve two purposes.
·
Can help in User Load Balancing.
·
Disaster Recovery
For any
system which is having larger number of user, the biggest challenge to maintain
System performance, performance of the system depends on numerous factors, Load
balancing is also play vital role in system Performance. Scale-out deployment
model of Reporting services can help us in this purpose if we implement this
model with Network load balancing (NLB) as shown in below picture.
Load balancing eases network traffic to one server by distributing
traffic across two or more servers. For example, a server that's overtaxed to
140% of its traffic-handling capacity will experience deficient performance,
such as long waits for requests. By using load balancing and distributing the workload across a
second server, the average load per server drops to 70%. As a result, users
receive superior performance, even during times of high utilization or traffic load.
Windows incorporates NLB features, combining two or more servers running
the same application (such as a Web server) into a virtual cluster that can
distribute network traffic across cluster nodes.
If we
have two or more servers attached with same database, if one server goes down because
of any reason we have one or more live on which NLB can divert the request,
hence also serve as disaster recovery.
To
create a scale-out deployment, you use Setup and the Reporting Services
Configuration tool:
- Use Setup to install each
report server instance that will be joined to the scale-out deployment.
- Use the Reporting Services
Configuration tool to connect each report server to the shared database.
You can only connect to and configure one report server at a time.
- Use the Reporting Services
Configuration tool to complete the scale-out by joining new report server
instances to the first report server instance already connected to the report
server database.
To avoid
database compatibility errors when connecting the server instances to the
shared database, be sure that all instances are the same version. For example,
if you create the report server database using a SQL Server 2008 report server
instance, all other instances in the same deployment must also be SQL Server
2008.
The
following instructions explain how to configure a two-node report server
scale-out deployment. Repeat the steps described in this topic to add
additional report server nodes to the deployment.
If you
are planning to host the scale-out deployment on a network load balanced (NLB)
cluster, you should configure the NLB cluster before you configure the
scale-out deployment.
To install a SQL Server instance to host the report server
databases
- Install a SQL Server
instance on a computer that will host the report server databases. At a
minimum, install SQL Server Database Engine and Reporting Services.
- If necessary, enable the
report server for remote connections. Some versions of SQL Server do not
enable remote TCP/IP and Named Pipes connections by default. To confirm
whether remote connections are allowed, use SQL Server Configuration
Manager and view the network configuration settings of the target
instance. If the remote instance is also a named instance, verify that the
SQL Server Browser service is enabled and running on the target server.
SQL Server Browser provides the port number that is used to connect to the
named instance.
To install the first report server instance
- Install the first report
server instance that is part of the deployment. When you install Reporting
Services, choose the Install but do not configure server option on the
Report Server Installation Options page.
- Start the Reporting
Services Configuration tool.
- Configure the Report Server
Web service URL, Report Manager URL, and the report server database.
- Verify that the report
server is operational.
To install and configure the second report server instance
- Run Setup to install a
second instance of Reporting Services on a different computer or as a
named instance on the same computer. When you install Reporting Services,
choose the Install but do not configure server option on the Report Server
Installation Options page.
- Start the Reporting
Services Configuration tool and connect to the new instance you just
installed.
- Connect the report server
to the same database you used for the first report server instance:
- Click
Database to open the Database page.
- Click
Change Database.
- Click
Choose an existing report server database.
- Type
the server name of the SQL Server Database Engine instance that hosts the
report server database you want to use. This must be the same server that
you connected to in the previous set of the instructions.
- Click
Test Connection, and then click Next.
- In
Report Server Database, select the database you created for the first
report server, and then click Next. The default name is Reportserver. Do
not select ReportServerTempDB; it is used only for storing temporary data
when processing reports. If the database list is empty, repeat the
previous four steps to establish a connection to the server.
- In
the Credentials page, select the type of account and credentials that the
report server will use to connect to the report server database. You can
use the same credentials as the first report server instance or different
credentials. Click Next.
- Click
Summary and then click Finish.
- Configure the Report Server
Web service URL. Do not test the URL yet. It will not resolve until the
report server is joined to the scale-out deployment.
- Configure the Report
Manager URL. Do not test the URL yet or try to verify the deployment. The
report server will be unavailable until the report server is joined to the
scale-out deployment.
To join the second report server instance to the scale-out
deployment
- Open the Reporting Services
Configuration tool, and reconnect to the first report server instance. The
first report server is already initialized for reversible encryption
operations, so it can be used to join additional report server instances
to the scale-out deployment.
- Click Scale-out Deployment to open the Scale-out Deployment page. You should see two entries, one for each report server instance that is connected to the report server database. The first report server instance should be joined. The second report server should display a status of "Waiting to join". If you do not see similar entries for your deployment, verify you are connected to the first report server that is already configured and initialized to use the report server database.
- On the Scale-out Deployment
page, select the report server instance that is waiting to join the
deployment, and click Add Server.
- You should now be able to
verify that both report server instances are operational. To verify the
second instance, you can use the Reporting Services Configuration tool to
connect to the report server and click the Web Service URL or the Report
Manager URL.
