Docker,Kubernetes和Co .:容器技术简化了分布式IT系统的测试

Anonim
Container-Technologie erleichtert das Testen verteilter Software.
容器技术有助于测试分布式软件。
照片:奥利维尔·勒穆勒(Olivier Le Moal)-shutterstock.com

使用Docker等容器技术,可以轻松,高效且临时地建立量身定制的测试基础架构。 原因:“基础架构即代码”概念不仅用于软件设计和部署,而且还用于测试。 编排工具(例如Kubernetes)或完整的容器应用程序平台(例如Red Hat OpenShift)提供了提供测试环境的技术支持,除了容器集群管理外,该平台还包括用于构建自动构建管道的解决方案。

容器编排与代码版本控制工具(例如Git)的集成提供了必要的版本控制,并可以并行管理不同版本中的测试环境。

如今,市场上提供了用户只需配置的现成容器。 只需按一下按钮,即可使用数据库,Web服务器,消息代理,搜索引擎等组件以及许多其他组件。

spoods.de

将容器用于测试环境

通常,容器技术的使用大大简化了用于开发和质量保证(QA)的测试环境的部署。 在开发人员计算机上的本地测试环境中,将使用与测试和登台环境以及最终在生产环境中相同的部署工具和概念。 这种设置使生产环境非常接近测试和开发生命周期。

这简化了故障排除并大大减少了错误源。 容器技术的快速启动时间不仅可以缩短部署周期,而且还可以进行可重复的,尤其是短期的基础架构测试。 通过优化使用资源(内存,CPU和存储),容器技术还支持在一台计算机上同时使用多个组件。 这使得大型系统可以在本地进行测试。

  1. 集成到数据中心
    为了完全有效,必须可以将容器及其服务(安全性,身份验证或网络服务)嵌入公司现有的IT基础架构中。
  2. 虚拟机管理而不是混乱
    IT经理需要找到一种简洁的方式管理其虚拟机(VM)的方法,同时仍要为客户提供并行所需的服务。
  3. 可扩展性
    当今高度动态的企业IT要求公司以编程方式扩展其容器技术和向用户的交付能力。
  4. 管弦乐编曲
    企业需要组合多个容器,将容器与其他应用程序组合,并实现容器与其他IT资源之间的通信。 为了实现所有这些,还必须在反映技术和计算能力混合的环境中开发容器。
  5. 注意旧系统
    容器不仅必须与公司中的最新应用程序和系统协调一致,而且还必须考虑旧系统。

通过容器技术获得更大的灵活性和可移植性

设置测试环境所产生的灵活性也是广泛的测试自动化方案的基础。 为了实现使用自动化构建管道的持续集成方法的需求,这种自动化势在必行。 这被认为是实施复杂的发布策略(例如,蓝绿色部署,Canary发布或A / B测试)的先决条件。 它们使快速且最重要的是,可以频繁且频繁地发布当前和经过测试的软件版本。

容器的另一个优点是可移植性,这意味着用户可以将其下载到开发计算机,从而也可以将其用于自己的Intranet范围之外的离线开发和测试,例如在火车旅行中。

另一个好处是基础结构即代码方法。 由于可以完全自动化基于容器的本地开发环境的昂贵安装和配置,因此,这大大减少了在项目中培训新员工所需的时间。 因此,长安装说明的“处理”已经成为过去。

微服务和容器

最后但并非最不重要的一点是,“微服务趋势”也表明支持在测试基础架构中使用容器技术。 微服务给测试带来了新的挑战,例如已验证的将各种服务集成到整体软件系统中。 单个服务与一个完整的整体之间日益复杂的组合不再是理所当然的。 有时非常复杂的测试场景可以借助容器技术来最佳地掌握公司。

结论

总体而言,使用容器技术可实现从软件开发到生产的无缝集成-包括测试基础架构设置。 但是,专业知识是成功实施的一个优势,理想情况下,对于拥有容器平台以及从单元测试到集成到用户界面(UI)测试方面经验丰富的服务提供商,最好是这样。