如何设置开发,登台,生产和QA环境


8

我正在为组织设置新服务器。通过开发,测试,登台和生产来建立新环境的标准或最佳做法是什么(或者我愿意接受我不熟悉的其他级别的知识)?此外,我听说过组织将服务器分为SQL,Application,Web Server等。在哪里可以找到有关服务器设置可能解决方案的良好示例?

在几个物理设备之间虚拟化这些环境是否是一个好习惯?

我已经在网上搜索了有关如何设置其他组织的环境的一些想法,但是没有找到任何特别有用的信息。我欢迎您可以指向我的任何链接,它们讨论为中小型公司构建整个企业解决方案。

我刚刚找到了此链接:http : //dltj.org/article/software-development-practice/如果有人知道可以向我指出的任何好文章,我想找到更多类似的文章。

在您对我的问题投反对票之前,请发表评论,让我尝试解释更多。我可能只是不够了解问正确的问题。


2
我认为您应该做的第一件事是解释您需要完成的实际任务。申请的目的是什么?它会有多少负载?您认为您会得到什么改变?(因为:您需要4层,开发,测试,阶段,产品)
MichelZ 2012年

1
要求是托管许多(少于50个)自定义Intranet应用程序。这些都在Microsoft堆栈上。当前,我们正在使用开发Sql Server和本地Web Server进行开发,并使用单独的Sql Server和Web Server托管我们的测试和生产环境。我知道事情可以比我们目前做的更好,这就是为什么我独具匠心地发布了这个问题。我只是不需要凭我的经验知道“更好”是什么。
TreK 2012年

2
本身不是一个答案,所以我将其作为评论。您要确定的一件事是,您拥有一种机制(例如API密钥,IP验证),以确保您的测试环境无法访问生产环境。
HTTP500 2012年

Answers:


8

这是一个非常漂亮的问题。我的一般建议是将注意力集中在管理复杂性上并使系统有机地增长。

虚拟化:

您确实想避免服务器蔓延,如今,所有内容都已虚拟化。选择一个平台,使您可以快速添加虚拟服务器并对其进行有效管理。我看到的一种趋势是拥有两个(例如)AIX或VMWare集群,一个集群用于产品,一个集群用于非产品。非生产者用于所有开发,测试和登台环境。这些环境非常适合Web服务器或应用程序服务器,但是我会尽量避免将庞大且不断增长的生产数据库作为VM(至少在Windows上)。

资料库

只要它们需要与其他服务器共享资源,它们就很容易失控。除非确实有充分的理由,否则一定要在专用操作系统上运行数据库,绝不要与应用程序或Web服务器共享数据库。您使用的是VM还是硬件是唯一的问题。

您需要一个可扩展的基础架构,该基础架构如果需要,例如迁移到集群解决方案,将不会给您带来麻烦。在VM中,许多数据库都可以正常运行,但是对于少数最终需要比在VM环境中提供的功能强大的数据库,您会发现自己希望将它们放在原始硬件上

如果您不是在谈论Windows,那么其中一些准则将是无关紧要的。例如,将大型的不断增长的数据库作为LPAR放在AIX虚拟机管理程序中是常见的做法。

存储

如果没有共享存储,您将无法进行真正的虚拟化(具有VM移动性和主机群集功能)。产品,开发,测试和质量检查服务器在您的存储中看起来都一样,但是您可能需要花费一些时间来寻找对产品进行优先级排序的方法。例如,让负担繁重的prod数据库与开发服务器共享磁盘(raid集,池等)是一个非常糟糕的主意。开发人员有时可能会像刺探产品一样打磁盘,而您需要做的最后一件事是弄清楚某种测试是否正在减缓生产速度。

让某个知道您的存储的人坐下来分析所有潜在的瓶颈(端口,缓存,控制器,磁盘等),并尽最大努力防止在生产与非生产之间争用尽可能多的这些。

就是说,有时应用程序人员需要运行开发人员基准测试以帮助量化新补丁或某些东西的影响。在这种情况下,您可能需要能够为它们提供相似(或至少数量上不同)的存储能力。


1

您需要这个环境做什么?供应商软件还是您的组织自己进行开发?

Dunno如果这样做会有所帮助,但是HP和Dell都会全力以赴,以评估您当前的数据中心,并为您提供从头开始进行修改或创建的建议。该论坛的读者可以给出很好的答案,但是却看不到“拥有什么,要去哪里,要去哪里以及要去哪里”将很难给您一个可靠的答案。请帮忙,并因为管理原因而与一个硬件供应商保持联系。

我们考虑到了数据中心的需求(我们已经准备好了硬件)

具有EMC SAN后端,8 gig光纤连接的VMWare环境C7000 Hp刀片机箱。

这使我们能够限制浪费,用电和空调成本。它将用于测试机,概念证明服务器,不需要应用程序专用硬件的生产服务器(USB软件狗,传真板等)

物理刀片服务器环境C7000 Hp刀片服务器机箱,带有通过8 gig光纤连接到EMC SAN后端的16个刀片服务器HBA。

这些将用于需要大量RAM和CPU但没有独特硬件添加的机器。虚拟机很好,除非它们需要大量的CPU或RAM。VMWare允许通过vmotion将vmserver移动到主机,以平衡硬件使用量。VM占地空间最大时才具有成本效益。意思是,更多的小型机器,而不是一些大型的机器。这也取决于您要站起来的系统。

物理服务器(1U至5U)

HP DL360-DL 5xx服务器。特殊硬件,例如4个8核CPUS和256 Gig内存,用于电信接口的串行卡或连接到多条电话线的高端传真板。该组中将包括供应商需要大型本地存储的服务器。

这是一个示例,但不是完整的答案。认真地与硬件供应商联系,让他们了解您的位置以及如何使其更好/更有效。


0

在开发,测试,登台和生产中设置新环境的标准或最佳做法是什么?

除其他因素外,这取决于预算。不确定是否有标准配置,但是您希望在所有设备上都保持操作系统和其他软件的相同。使用Puppet等自动化工具来自动化和标准化您的构建。

在几个物理盒子中可视化这些环境是一种好习惯吗?

虚拟化?是。伟大的实践。但是,如果可以将配置作为虚拟机运行,则需要对其进行验证。

我听说过组织将服务器分为SQL,Application,Web Server等。在哪里可以找到服务器设置可能解决方案的良好示例?

也许其他人也可以加入,但恕我直言,出于操作系统,应用程序升级和可用性的多种原因,您可能希望在不同的服务器上安装不同的组件。


1
这一切都取决于他的项目规模。我认为您的私人家庭电影数据库不需要任何这些... :)我认为我们需要OP中的更多信息
MichelZ 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.