当前位置: 首页 > 科技观察

那些使遗留应用程序现代化的Docker工具

时间:2023-03-20 12:36:48 科技观察

【.com快言】在过去两年中,Docker与客户密切合作,利用Docker容器技术和行业领先的容器平台DockerEnterprise对其遗留应用程序组合进行现代化改造。此类应用程序通常是单一的,在WindowsServer2008或WindowsServer2003等遗留操作系统上运行,并且难以从本地数据中心迁移到公共云。Docker平台可以通过简单地将应用程序软件与特定操作系统解耦、支持微服务架构模式以及促进本地、云和混合环境之间的可移植性来缓解每一个痛点。随着传统应用程序现代化(MTA)计划的成熟,Docker已投入资源开发工具和方法,以加速向容器的过渡并缩短从DockerEnterprise平台实现价值的时间。从最初的应用程序评估过程到在集群上运行容器化应用程序,Docker致力于改善开始MTA之旅的客户的体验。应用软件发现和评估企业开发和维护了大量的应用软件。此类应用程序采用由第三方和第三方开发团队开发的多种语言、框架和体系结构。容器化过程的第一步是确定哪些应用程序最适合容器以及从何处开始该过程。一种自然的本能是选择最复杂的应用程序开始容器化;理由是,如果容器适用于最棘手的应用程序,那么它们也适用于不太复杂的应用程序。对于刚接触Docker生态系统的企业来说,这种方法可能具有挑战性。如果您从一个不太复杂的应用程序开始您的容器化之旅,但仍然代表一整批应用程序并且符合您组织的目标,您可以在转向更困难的应用程序之前积累您的容器经验和技能。Docker开发了一系列原型,可帮助根据架构特征和估计的容器化工作将相似的应用程序分组在一起:图2评估应用程序组合,将应用程序分组到每个原型中,对于估计一批应用程序的工作量和识别适合的初始应用程序很有用容器化项目。有多种方法可以执行此类评估,包括:手动发现和评估需要人员检查应用程序组合中的每个应用程序。这种方法对于少量应用程序通常是易于管理的,但很难扩展到数百或数千个应用程序。当在企业内使用时,配置管理数据库(CMDB)提供有关环境的现有详细信息。查看此类数据有助于建立应用软件特性和相关原型。来自RISCNetworks、Movere和BMCHelixDiscovery等供应商的自动化工具通过随时间监控服务器然后生成报告来提供对数据中心环境的详细评估。此类报告可用于容器化项目,以帮助了解工作负载之间的相互依赖关系。可以聘请系统集成商进行正式的应用程序组合评估。此类集成商通常拥有成熟的方法和专有工具来帮助评估应用软件。自动化容器化为传统应用程序软件构建容器可能会带来一些挑战。应用软件的原始开发人员往往无处可寻,因此很难理解应用软件的逻辑是如何构建的。官方的源代码往往得不到,应用软件运行在虚拟机上。跨数十个或数百个应用程序扩展容器化项目既耗时又复杂。使用Docker开发的转换工具可以缓解这些痛点。作为DockerEnterprise平台的一部分,该工具旨在自动执行一项任务:为在虚拟机或裸机服务器上运行的应用程序软件生成Dockerfile。扫描服务器以确定操作系统的配置方式、Web服务器的设置方式以及应用程序代码的运行方式。然后将数据合并到一个Dockerfile中,并将应用程序代码拉到一个目录中,以便在现代操作系统上进行Docker构建。例如,可以扫描WindowsServer2003环境,为在不同IIS应用程序池中运行的基于IIS的.NET应用程序生成Dockerfile。这种自动化将用户从开发人员转变为Dockerfile的编辑者,大大减少了将传统应用程序软件容器化所需的时间和精力。图3集群管理在单个服务器上运行容器可能足以满足单个开发人员的需求,但一组服务器协同工作可用于运行基于容器的工作负载。过去,此类服务器集群的创建和管理完全由公有云提供商控制,用户被牢牢地绑定在某一套基础设施上。DockerEnterprise3.0平台包括一个名为“DockerCluster”的新DockerCLI插件。DockerCluster通过使用声明性YAML文件自动供应和配置基础设施资源,简化了DockerEnterprise集群的初始创建。集群可用于许多基础设施提供商,包括Azure、AWS和VMware,以在每个基础设施目标之上构建相同的容器平台。这种增加的灵活性降低了被锁定在单一提供商的可能性,确保跨多云和混合环境的一致性,并提供通过Kubernetes或Swarm编排工具部署容器的选项。图4除了自动化工具,Docker还为经过认证的基础设施合作伙伴提供详细的特定于基础设施的参考架构(https://success.docker.com/architectures#certified-infra),其中列出了提供商的最佳实践。除了自动化CLI工具之外,这些文档还提供了有关实施DockerEnterprise的全面指南。Docker的解决方案简介(https://success.docker.com/solutions)存储库附带有关将DockerEnterprise与通用容器生态系统解决方案集成的附加指南。借助Docker集群、解决方案简介和参考架构,Docker企业集群的配置和管理得到了显着简化。这些工具使您可以专注于将传统应用程序容器化,而不是投入额外的时间来设置容器集群。原标题:DockerToolsforModernizingTraditionalApplications,作者:StevenFollis