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

一篇解读2019年容器基础设施最新趋势和进展的文章

时间:2023-03-12 14:00:50 科技观察

Kubernetes的崛起令人惊叹。短短几年时间,从一个由一群云原生开发者倡导的开源项目,转变为一个由云服务商推动的标准运维平台。随着应用程序工作负载从VM转移到容器,Kubernetes已成为自动化和扩展容器部署的流行选择。但是,到目前为止,Kubernetes开发主要集中在基础设施内部,而不是更广泛地关注简化应用程序开发和部署。幸运的是,这种隔离正在消退,因为一些PaaS堆栈正在添加Kubernetes集群作为受支持的运行时目标,例如PivotalCloudFoundry,其将CloudFoundry与Kubernetes集成的举措代表了向容器编排平台的转变。大趋势演变为商业友好型环境。正如我们之前所讨论的,企业通过采用PaaS堆栈和开发方法来利用软件抽象的力量有令人信服的商业和技术原因。CloudFoundry之所以成为最受欢迎的选择,是因为它的推出时间较早,并且基于技术优势满足开发人员和IT专业人士需求的完整系统。CloudFoundry长期以来一直使用容器作为应用程序运行时环境,但作为一个自包含系统,容器由一个名为Garden的内部模块管理。商业PivotalCloudFoundry版本的用户很快就会有另一种选择——Kubernetes,它具有一系列增强功能——可以解决阻碍企业采用Kubernetes的缺点。Pivotal拥抱Kubernetes、ServiceMeshPivotal通过提供集成的、受支持的软件和服务,使CloudFoundry成为企业PaaS。在最近的OSCON开发者大会上,该公司承认Kubernetes作为容器管理系统的蓬勃发展,宣布了其核心产品PivotalApplicationService在Kubernetes上运行的有限预览。“PASonKubernetes旨在将PAS的开发体验带到Kubernetes之上。alpha版本是一个概念验证,它支持PAS最重要的功能,例如在运行PAS时针对许多基于buildpack的应用程序的`cfpush`Kubernetes应用程序实例。下图总结了alpha版本中的内容。Pivotal还实现了以下功能:CloudFoundry应用程序实例运行Kubernetespod,其中包含一个转换器,可将PAS应用程序转换为OCI(开放容器倡议)图像和Kubernetespod配置。然后,Kubernetes控制器管理应用程序的部署和扩展。与PASHTTP路由器集成,将客户端请求的流量定向到运行在Kubernetes上的应用程序。应用程序和pod日志与PAS日志系统(Loggregator)的集成。最多支持50个应用程序实例。alpha该版本需要vSphere、NSX-T和PivotalEnterpriseContainerServicePKS,但该公司计划支持其他Kubernetes平台,特别是AWS、Azure和GoogleCloudKubernetesService。Pivotal在过去几个月还推出了其他几个Kubernetes产品,包括基于开源Buildpacks项目创建容器镜像的构建服务、对SpringJavaRuntime环境和Kubernetes上的RabbitMQ软件的支持,以及基于Istio的容器服务网格和Envoy(自动客户端访问在Kubernetes集群上运行的应用程序)。这些都显着增强了Kubernetes作为生产应用程序平台的实用性和可用性。此外,作为商业支持的产品,它们不需要安装、调整和调试开源软件所需的专业人员和专业知识。IBM引领云原生应用程序开发IBM还忙于向企业开发人员提供Kubernetes增强功能,宣布了几个旨在加速和简化容器化应用程序开发的开源项目。虽然尚未打包为商业软件,但以下项目将对那些刚接触云原生应用程序设计的人特别感兴趣:开发人员:Kabanero是容器化应用程序的架构和开发框架。它使用Kubernetes进行工作负载管理,满足架构师、Java开发人员和DevOps交付团队的需求。它建立在其他三个与Kubernetes相关的项目之上:Knative(开发过程自动化和无服务器端点)、Istio(服务网格)和Tekton(CI/CD集成)。通过开发运行时和框架(Node.js、Java、Swift),Kabanero将配置Kubernetes集群、安全性和网络的实践封装到预构建的部署中。它还包含几个新项目,其中包括:Appsody通过为多个流行的编程环境捆绑预配置的开发框架和模板来简化应用程序开发。Codewind是一个开源开发项目管理器,它向流行的IDE(包括Eclipse和VisualStudio)添加容器支持。Razee是一种持续交付工具,支持为Kubernetes部署的容器化微服务,包括用于可视化配置信息和部署以帮助故障排除的图形界面。它使用内置模板简化了多集群部署,这些模板跨集群和云实施配置和安全策略。考虑一下IBM的声明,“没有其他开源项目提供在整个Kubernetes生产生命周期中创建容器化云原生应用程序的集成体验。”“通过使用Kabanero,您的开发团队无需首先成为容器和Kubernetes专家即可构建可部署到Kubernetes程序的应用程序。随着企业从遗留基础设施转向更现代基础设施的云化,这降低了开发人员的进入门槛。”容器的广泛采用伴随着谨慎的挑战Pivotal(以及戴尔和VMware)和IBM(以及红帽)都意识到,企业开发人员和IT组织将容器视为比他们目前使用的VM服务器更高效、灵活和可扩展的应用程序环境。然而,企业用户仍然在为不成熟的技术、具有挑战性的安全配置、陡峭的学习曲线以及无法轻松集成到其他系统的复杂基础设施而苦苦挣扎。事实上,Diamanti最近的一项调查显示,容器的使用正在增长,而企业采用者面临着持续不断的挑战。容器已成为主流,调查发现IT和平台架构师负责大部分容器决策,而今年在容器技术上花费至少10万美元的组织数量增加了5.5个百分点,达到38.5%。26%的组织至少花费了1美元00,000oncontainers计划将他们的大部分工作负载转移到容器中。企业苦苦挣扎的一个领域是寻找足够的容器专业知识来实现??他们的目标。那些将缺乏容器技能作为“主要采用障碍”的人今年减少了一半,接近四分之一。没有看到影响的受访者是那些只对最便宜的容器技术(低于50,000美元)计划没有影响的人,即那些刚刚开始或测试最小容器安装的人。事实上,近65%的人认为技能短缺是采用的中度或主要障碍。至于在生产环境中运行容器,主要挑战多年来一直非常一致:与现有基础设施的集成、安全性和部署复杂性。这些抑制因素是Diamanti、PAS、RedHatOpenShift等打包容器平台在企业IT和DevOps组织中如此受欢迎的关键原因。作者的看法在服务器配置、网络管道和编程语法的神秘细节中,关于Kubernetes的讨论似乎无可救药地偏离了主题,让业务和IT主管质疑该技术如何满足他们对新应用程序的需求。要求并加快上市时间。对于这些非专业人士来说,他们不太关心设计细节。相反,应用程序所有者、发起人和业务主管希望了解Kubernetes如何为他们节省资金、提高应用程序性能并缩短开发时间。通过关注应用程序开发过程而不是交付系统,可以更好地实现这些目标。这是Kubernetes开发人员的机会——无论是像Pivotal和IBM这样的商业软件公司,像AWS、微软和谷歌这样的云服务提供商,还是Kubernetes生态系统的大量开源贡献者。企业已经意识到容器和Kubernetes的价值,但需要在以下方面简化产品和服务:开发容器化的云原生应用程序部署容器基础设施管理容器工作负载和安全策略最近的进展展示了容器基础设施发展的潜力和希望。核心容器技术与PaaS框架和开发方法论的结合最终将使Kubernetes及其生态系统成熟到足以被普通企业使用。