在 SQL Server 2008 R2 计算机上安装 IIS 的影响

在 SQL Server 2008 R2 计算机上安装 IIS 的影响

应用程序需要与 Reporting Services 在同一台机器上安装 IIS。

今天 SSRS 和 SQL 保持在同一个集群框中。

我需要评估以下选项:

  1. 在两个群集节点上安装 IIS
  2. 在另一台机器上安装 IIS 和 Reporting Services

我需要找出 IIS 与 SQL 的优缺点

另一种方式的优缺点也一样。

我知道如果再有一台仅带有报告服务和 IIS 的机器(或虚拟机)价格会很高。

但是在 SQL 机器上安装 IIS 有什么坏处呢?

PS:这些都在我的内网,没有公开。

答案1

IIS 和 SQL Server 没有已知的不兼容性,它们只是两种不同的服务,只要硬件资源足以同时支持这两个应用程序,并且您正确地保护它们,它们就可以在同一台机器上顺利运行。

实际上,Reporting Services 曾经作为 Web 应用程序在 IIS 上运行:直到 SQL Server 2008 才成为一个独立的应用程序,不再依赖于 IIS;在此之前,Reporting Services必需的IIS 才能运行。

现在,关于您的设置:如果您想在两个群集节点上运行 IIS,您应该知道 IIS不是专为集群而设计,但用于负载平衡;它在主动/被动集群中运行,但您需要采取额外步骤才能使其从一个节点顺利地故障转移到另一个节点。具体步骤取决于您的应用程序正在做什么。

答案2

这是简单的数学。

一台机器上只有一项服务只会暴露一项服务受到威胁。因此,如果您能够破坏它,那么您只能访问该机器/服务。但是,一台机器上有两个服务,风险就加倍了。破坏一个(最不薄弱的环节)会自动破坏第二个。

因此,您可以自行规划在一台主机上拥有三、四、五...项服务。

答案3

在与 SQL Server 并行运行任何程序时,您需要评估的一件大事是如何配置 SQL Server 的内存使用情况。默认情况下,它设置为使用可用的最大系统内存量,并且会主动尝试这样做。它会尽可能将整个数据库加载到内存中,因此如果您拥有大型数据库,则需要考虑将“最大服务器内存”设置为允许您也拥有足够内存用于 IIS 的某个值。

您可以通过以下几种方式实现此目的:

在 SQL Server Management Studio 中,右键单击对象浏览器中的服务器实例,然后单击页面列表中的内存。在最大服务器内存框中设置值。

或者

运行这个:

sp_configure 'show advanced options',1
GO

RECONFIGURE
GO

sp_configure 'max server memory (MB)',[some value]
GO

RECONFIGURE
GO

将 [某个值] 替换为您想要限制 SQL Server 的内存量(以 MB 为单位)。

答案4

只要一切都配置正确,密码足够复杂,并且人们无法将随机代码上传到您的服务器;我真的没有看到任何缺点。

拥有多个 IIS 机箱的缺点(假设您在此处运行某种 Web 应用程序)是您需要考虑会话管理选项;如果有人从 IIS1 跳转到 IIS2 并且他们无法共享会话状态,则您可能会遇到问题(他们可能似乎突然没有登录,诸如此类)。

相关内容