企业网络中的虚拟化开发环境


11

我们正在尝试为企业组织中的一个由4名开发人员组成的小型团队使用虚拟化实现开发环境。这将使我们能够设置单独的开发,测试和登台环境-并允许访问作为我们正在评估的系统或工具的要求的新操作系统。我们重新调整了现有工作站级计算机的用途,并添加了24GB RAM和RAID-10,并且在尝试将计算机添加到域之前一直运行良好。

现在,我们开始了一场战争,所有企业开发人员自开始以来就必须进行斗争-争夺对开发和测试环境的本地控制权。网络和IT管理员提出的担忧范围从“ ESX Server是企业标准”到“客户端VLAN上不允许服务器”到“ [本地填充]不是当前本地拥有的技能”或企业IT组织”。

如果需要的话,我们可以证明生产级的硬件和正式的IT支持是合理的,但这将需要时间,并且会带来很多麻烦。即使那样,将其视为生产系统也可能要花费数月的时间才能正式分配IT资源-即使我们这样做,也很可能会失去我们所需的本地控制权。

我想你们中的许多人在开发人员对非生产环境(尤其是虚拟化)的控制方面也有类似的挣扎,所以我的问题如下:

  1. 哪些策略和论点帮助您赢得了基础架构(IT和网络)人员的欢迎,从而使这些筒仓能够存在于具有标准网络和安全政策的企业中,而这些企业通常(并且可以理解)会排除此类非筒仓。集中管理的基础架构?
  2. 您是否发现这是技术上的合理性问题,还是更多的争取控制权和所有权的政治斗争?
  3. 如果最终得到了一个IT管理的开发环境,那么日常开发和测试遇到了多少障碍?
  4. 有没有人最终将他们的开发环境转移到断开连接的VLAN或完全独立的网络上,从而避免了这些网络访问的麻烦?

另外,这不是Hyper-V与ESX的圣战(我们都可以这样做-但选择Hyper-V是因为MSDN为此目的是“免费的” [是的,VMWare也有免费的工具-但是好的管理工具通常不是],并且本地开发人员可以在“ Microsoft Shop”中更轻松地进行管理)-因此,支持或反对的论点不在此问题的范围内。

虚拟化与物理硬件相比,这也更少了-我想在没有虚拟化组件的情况下也会问同样的问题。

还要假设开发团队已经保证要管理补丁程序管理和防病毒,或者与现有企业系统集成(如果他们支持的话)。带有不同问题的这种情况也已发布在SF上,以期引起对立的观点。


为什么要尝试虚拟化开发人员计算机?您要解决什么问题?无论如何,您的开发人员,网络和IT管理员都会问您这个问题,因此您不妨在这里撒些豆子。
罗伯特·哈维



2
好的,要明确:我们希望能够拥有独立的按需开发,测试和生产环境;自动化的单元测试/ CI;访问我们当前尚未在生产环境中运行的操作系统和/或工具,但对我们正在评估的系统或工具的要求;老实说,我认为开发人员已经拥有了分阶段进行测试和部署的环境以及总体上使用虚拟化的好处。当然,不是所有这些都需要本地管理员控制,但是其中某些功能是必需的。
ScottBai 2011年

1
您就陈述我的案情(利益)提出了一个正确的观点-但这实际上是问题的一部分。当前的开发人员环境由开发人员工作站和部署到生产服务器的开发人员组成,开发人员对这些服务器具有有限的权限(认为文件副本+单个SQL数据库DBO)。显然这不是最佳选择(我是那里的新手,但每个人都已经知道这是一个大问题)。否则,这是一个很好的问题,因为与我们是否已有物理机扮演虚拟角色相比,虚拟化部分确实不是一个明显的差异化因素。
ScottBai 2011年

Answers:


7

您已经“取消保留”,并试图证明其合理性。

这与虚拟化无关;这与控制和责任有关。IT部门负责公司系统的安全性和可靠性。为了确保它们正常工作,IT部门将其置于自己的控制之下。您已经建立了不受IT控制的系统,现在这已成为一个问题。

根据我的经验,程序员想要自己的系统的常见原因是:

  • IT没有响应。一个新的环境需要数周的时间,但现在需要一个新的环境。
  • 您需要控制;他们不会把它给你。您需要能够设置权限,安装组件等。IT不允许您这样做。

最终,当您投入生产时,您将需要一个完全锁定的IT管理系统。但是,在开发过程中,您需要灵活性。一些建议:

  • 交朋友。认识一些IT方面的人;与他们面对面交谈。解释您的情况,并询问他们可以做什么。您可能只需询问即可获得开发服务器的管理员权限。
  • 运行本地。如果可以在本地计算机上运行应用程序的某些部分,则可能不需要服务器,或者可以使用锁定的数据库实例。
  • 获取赞助商。没有什么像VP那样让IT部门动起来,说:“为什么要阻止我的项目?” 利用项目发起人的影响力。
  • 到云!如果您的项目预算能够解决这个问题,只需托管在EC2上-您就可以绕开整个IT部门。由于将公司信息放到防火墙外部,这些风险正被黑客入侵和被解雇。
  • 运行长游戏。尽早提出对经过适当授权和管理的服务器的请求。当您收到关于自制的投诉时,请说您还在等待官方服务器。
  • 预分配。请求您认为将来可能需要的服务器。然后在实际需要时重新调整它们的用途。

非常有效的积分。+1赞助商提示,大多数时候它就像一种魅力!
Saul Delgado

这是一个很好的答案-不是我一定想听到的答案,但是我认为您的想法是正确的。我现在意识到这是开发人员对开发环境有合理需求的问题,但是却意识到IT没有响应能力,因此没有尝试与他们合作来满足我们的需求。尽管我喜欢使用硬件,但我更希望为它提供一个IT管理的环境,其中包括开发环境(完整权限),测试环境(仅部署权限),登台(无权限)和生产(无权限) ),而不必管理所有基础架构。
ScottBai 2011年

2

在这种情况下,尽管我是一个业余爱好者,但似乎需要一个适当且结构合理的论据来证明部门负责人需要额外的IT资源(和扩展资源)。您可能希望有一位优秀的演讲者,他能够解决问题,并将提案的潜在价值与最终付费的人联系起来。

这个问题实际上是一个值得我们认真考虑的问题:一个小组想要开发环境,但是这给另一个感到压力的小组施加压力,他们确实负责整个系统的安全性,尤其是IT部门合理地建立网络联系珍贵的。

令我吃惊的是,现在可以将某些资源转移到潜在利润丰厚的项目中,甚至为开发人员提供一个免费环境的能力,已经被虚拟化的市场合理化所取代,这是一种成本削减和资源控制措施。

现在不要误会我的意思,我并不反对虚拟化,离它远了。但是在我看来,通常有很多很好的理由可以解释,使一个开发小组有权获得一个单独的领域,这将使环境更有生产力,并且比仅仅虚拟化所有事物更安全。

当然,通过使用云作为日常办公室间部门事务,企业可以节省金钱,这在这里非常有用。(这是一种虚拟化形式,但我知道是不同的)

但是,假设开发人员提出了一个无法调试的无法调试的错误,因为存在一个关于应用程序/程序是否由于实现虚拟化而损坏的问题(即,它不会在独立计算机中发生),那么它就可以了吗?浪费大量时间试图查找实际上不在编程中,但在VM实现中的bug变得适得其反。

我希望我很清楚。对于您的具体情况,我没有答案,但是我认为,就问题而言,这些都是有益的考虑因素,我强烈建议与相关部门以及可能由该部门代表进行的公开和充分讨论。企业管理人员最终将不得不为购买辩护。因此,我建议一个好的演讲者或中介人!

大概是如果它需要更多的员工,那可能是件好事(那里有很多失业的人),但是在开发人员部分可能有足够的IT聪明才干可以为自己的小组添加像服务器管理员这样的角色?

我知道这实际上很重要,所以我不希望自己变得轻描淡写,但是有时候我认为合并和向现有工人中添加角色给他们的个人时间带来了太多负担,他们最终会对此表示愤慨,尤其是当它们可能成为全新的成功软件工程的一部分时。

我不羡慕您的问题,但是我羡慕工作场所完全致力于带来新的设计,新的软件和新的想法。我衷心祝你好运,并希望我的贡献能有所帮助。

米哈利


1

IT部门实际上有一点。

他们可能管理数百个系统上的数千个应用程序。他们有效执行此操作的唯一方法是使几个选定的标准软件堆栈在甚至更少的标准硬件配置上运行。

如果您遵循这种方法,则在接近生产环境时会遇到越来越多的问题-在最坏的情况下,您需要重新构建整个应用程序,使其在上线前几天就可以在标准生产环境中运行。

最好与IT小组合作,并要求他们为您配置一些标准测试环境,这是他们付钱做的。具有讽刺意味的是,他们可能会为每个环境设置虚拟机。

程序员应该进行编程,让IT基础架构人员提供基础架构,由网络人员配置网络-公司的工作方式!

同样,如果您的应用程序非标准,以至于IT部门不会考虑构建测试环境,那么您将有零机会将其投入生产。与您交谈企业架构师了解标准的环境并尝试使用它们。如果您确实无法使用标准软件/硬件来实现您的应用程序,那么您需要对企业体系结构提出正式要求,以批准您的基础结构作为例外情况。


0

您将必须向管理层提出以下要求:

  1. 拥有虚拟化环境可以满足公司明确规定的一项或多项要求(例如,支持多个平台的灵活性),以及

  2. 您可以以比IT更低的成本更及时地实施它,并且

  3. 拥有本地控制权将降低成本并减少上市时间,并且

  4. 您可以满足IT部门对安全和维护的关注,并且

  5. 程序员的生产力不会受到影响。

最后一个是很大的   我已经与许多专门从事这种虚拟化的人讨论了这个问题。他们告诉我,当您为此投入足够的硬件以使其像本地PC一样具有响应能力时,将不会节省任何硬件成本。

因此,您必须通过灵活的配置和立即更改这些配置的方式来证明您节省的成本。


感谢您的关注和回答-但我不确定您是否理解问题或我们的意图。您正在反对虚拟化-但这不是问题。如果问号是如何向付账的人证明这是一个好主意,那也是一个很好的答案-但我的问题不是;这不是一个好主意。通过允许正常业务流程中的例外情况,这是一种方法,使组织间部门既不支付账单,也不必特别关心部门的生产力水平,从而表现良好。还是您说这只是证明其合理性而已?
ScottBai 2011年
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.