在故障转移群集中configurationReporting Services SQL Server 2005 Windows Server 2003

我有以下情况:

两台机器,比如说NODE1和NODE2,在故障转移集群中安装了Windows Server 2003,比如CLUSTER。 在这个集群上SQL Server 2005安装成功,比如说虚拟服务器是DATABASE。 然后,在NODE1上安装SSRS 2005。

问题是要使用这个设置的应用程序假定报告服务在http:// DATABASE / reports上运行,但是只要可能的安装(据我所知),你只能得到http:// NODE1 /报告 。

应用程序无法修改,正确的方法是什么?

我正在考虑在集群上设置IIS(并将其作为虚拟数据库服务器运行),并在其上安装报告和reportserver web应用程序,使问题消失,但我不确定这是否真的可行也不是这是最好的select。

我想过的另一个select是安装一个反向代理,但是我不确定如何使它在http:// DATABASE / reports上回答,而且至less不必首先安装IIS(并采取其他措施。)

build议吗?

我昨天没有意识到的是,DATABASE也parsing为当前活动的节点,不仅是CLUSTER:

说DATABASE是集群名称,NODE1和NODE2是节点,那么DATABASEparsing到当前活动节点 ,所以如果NODE1是活动节点,则DATABASEparsing为NODE1。

因此,要做的事情是在两个节点中安装报告服务,使它们都指向数据库集群中相同的ReportServer数据库。

我们假设您已经拥有集群并且已经以集群模式安装了SQL Server(需求)。始终使用相同的版本(每个节点中报告服务之间的SP相同)。

然后,这些步骤如下:

  1. 连接到活动节点(NODE1)并在其上安装和configuration报告服务,在DATABASE上创build一个ReportServer数据库(通过数据库设置,为数据库提供适当的凭据),然后在configuration中初始化数据库。

  2. 然后,在被动节点(NODE2)上连接,安装和configuration报告服务,将数据库设置到DATABASE(您已经创build的那个数据库,提供与数据库连接相同的凭证)上的现有数据库,但不要初始化它现在(在被动节点上)。

  3. 连接回活动节点并再次运行报告服务configuration,现在在初始化中您将看到被动节点出现,然后您可以从那里初始化它。

然后,您将有两个Reporting Services实例,每个节点上一个,指向同一个数据库。 而现在,当节点故障转移时,您将有另一个实例工作。

到目前为止唯一的痛苦是,如果您不公开日志,也不能通过\ DATABASE \ C $ \ Program Files \ MSSQL … \ ReportServer \ Logs访问它们,则必须记住哪一个是活动的节点去看看那里的日志。

这就是所谓的“扩展报告服务”,仅支持企业版(加上开发人员和评估)

参考文献:

http://technet.microsoft.com/en-us/library/ms156453(SQL.90).aspx

http://technet.microsoft.com/en-us/library/ms159114(SQL.90).aspx

升级两个报表服务器: http : //technet.microsoft.com/en-us/library/ms143735(SQL.90).aspx