技术开发 频道

企业容器化过程中需要注意什么?

  【IT168 编译】技术变革的步伐往往会最大限度地简化探索进程,软件开发也是如此。在容器中运行软件最近非常受企业青睐,主要原因之一是当代码在一个环境中开发时,如果部署在另一个环境中,代码可能不会运行相同的代码。这会导致错误,而且需要时间来修复。在这个快速迭代和发布的时代,没有人能负担得起类似的错误和成本。因此,像Docker和Kubernetes这样的容器化生态系统越来越受欢迎。2018年容器采用基准调查显示,近一半(47%)的受访IT领导者计划在生产中部署容器,另有12%的人表示已经部署了。

  容器的优缺点

  通过改变软件交付的方式,容器使开发人员的生活更加轻松。 它们具有很广阔的前景,特别是在提高混合基础架构的开发效率方面。容器通常是作为连贯系统一起运行的软件和环境的集合。 开发人员以容器图像的形式制作这些系统,测试它们并确保它们是可接受的。 然后,开发人员将它们部署到大型环境中,在这种环境中,容器平台从映像中实例化相同的副本,确保它在同一个地方运行的软件相同。之所以需要容器化,是因为它支持相同软件的可重复部署。

  由于它们不包含操作系统映像,因此容器比硬件或传统虚拟机(VM)环境耗费更少的系统资源。开发人员使用VM可能需要购买更多硬件,因为他们会更快地达到容量上限。虽然工作负载当然可以放在VM中,但使用容器是一种非常好的方法,因为随着云计算从简单到复杂的分布式体系结构的转变,它会更受欢迎。

  容器使软件交付更简单,更可预测,因为它们提供了一致的部署环境,可以在交付管道的所有阶段使用。在容器中运行的应用程序可以轻松部署到多个不同的容器平台和云提供商。 无论您是在构建软件、测试软件还是在生产中部署软件,都可以使用相同的环境来托管软件。 容器还可以帮助企业实现遗留应用程序的现代化,并创建既可扩展又灵活的新的云原生应用程序。

  容器非常有用,但也有其局限性。例如,它们确实消除了关于开发环境和生产环境之间的差异将如何影响应用程序的一些顾虑。但是容器并不能完全避免困扰传统软件开发的bug和错误问题。缺陷、中断和安全事件仍然发生,事实证明,测试工具并不能100%地发现问题。

  根据Snyk最近的一份报告,在最受欢迎的10张Docker图片中,每张至少有30个漏洞。最重要的是,如果您使用应用程序的旧版本安装容器,那么它很可能包含漏洞。这意味着企业仍然面临潜在的系统中断和停机风险,这些可能会造成重大的经济和声誉影响。

  2018年Ponemon Institute的数据违规成本研究发现,一小时的中断可能会使一家小公司损失8000美元,一家中型公司损失74000美元,大型企业大约需要70万美元。在IT中使用混合匹配软件维护一致的服务一直是一个挑战,而这就是容器解决的问题。但问题是,如果有人创建了针对一个容器的漏洞,那么将会有相同的软件在任何地方运行,并且它将对所有容器起作用。

  避免陷阱

  开发人员需要在测试方面采用新方法,以帮助抵御这些潜在问题,而不仅仅是将应用程序放在容器中。质量保证(QA)团队需要确保他们在生产中可能遇到的所有情况下测试容器化应用程序。这是因为容器的行为可能因系统硬件到意外的网络流量而变化。通过在生产中进行测试,可以在bug出现之前检测到错误,并在威胁产生影响之前将其隔离。

  容器使用需谨慎

  容器为开发人员处理与多个环境相关的问题提供了非常好的解决方案,它们使软件开发和测试更加容易。然而,容器依然有缺点,因此它们需要小心处理。bug和错误仍然有可能发生,一个容器中的漏洞意味着所有容器中的漏洞。容器作用虽然强大,但是需要您谨慎使用它们!

      原文网址:https://jaxenter.com/containers-need-know-160733.html

0
相关文章