我正在使用两台 Windows Server 2008 服务器(一台用于开发,一台用于生产),它们托管多个 Web 应用程序。其中一些应用程序在带有 Oracle 数据库的 Tomcat 上运行,其他一些是使用 SQL Server 的 ASP.NET MVC 应用程序,还有一些普通的 ASP 内容。
我想将这些产品分类,因为我们已经遇到过一些棘手的情况,即一个产品的故障或配置会导致另一个产品的故障。
我见过的大多数虚拟化布局都是水平设计的——一个虚拟机用于 Web 服务器,一个虚拟机用于数据库,其他虚拟机用于所需的基础设施。
鉴于水平设计不会将单个产品分隔开,我正在考虑一种垂直设计,其中每个产品有一个 VM,并且该产品的整个堆栈都在 VM 内(也许数据库除外)。
您认为这是一个合理的解决方案吗?如果不是,考虑到无法购买额外的服务器,您会提出什么建议?
答案1
如果这对您和您的业务运营构成严重风险,请联系系统管理员。
除此之外,在我看来,这真的是 50/50。就我个人而言,我宁愿花时间维护较少的良好状态的应用程序服务器,而不是随着应用程序池的增长而线性增加服务器数量。
由于您没有系统管理员,并且如果您不能/不会聘请系统管理员,那么最好少维护一些系统管理员,否则您将陷入以下两种情况之一:1) 您花在维护服务器上的时间比花在开发上的时间多。您现在是系统管理员,而不是开发人员。2) 服务器维护被忽略,您没有解决任何问题。事实上,您已经扩大了问题,因为现在您有 22 个问题,而不是 2 个。