【.com快译】日益激烈的市场竞争和不断提升的客户期望正在推动企业业务的发展。同时,采用DevOps对某些企业来说可能是一个挑战,因为它涉及调整实践和更新基础设施。尽管工程资源可能稀缺,但无服务器提供了应对DevOps挑战的解决方案。从改进的物联网设备到经济高效的机器学习应用程序,无服务器生态系统正在促进企业采用DevOps。为什么无服务器有利于DevOps?DevOps可加快企业开发,同时减少停机时间,从而为企业提供竞争优势、在特性和功能方面加快产品成熟度并改善客户体验。尽管DevOps具有吸引人的优势,但采用DevOps既昂贵又耗时。Serverless可以以更低的成本和更高的回报克服障碍,支持DevOps解决方案的实施。无服务器技术提供了一种现收现付的模式,允许企业为他们使用的资源付费。例如,使用AWSLambda,企业可以根据调用次数和持续时间付费,从而有可能降低成本。功能即服务(FaaS)可能比容器更昂贵,具体取决于流量体验。流量越高、越一致,无服务器工具的成本就越高,这些成本甚至可能比容器成本上升得更高。由于无服务器技术是自我扩展和完全可管理的,它允许团队专注于实际构建DevOps基础架构的业务逻辑,而不必花费大量时间维护DevOps架构。可用性和性能监控AWSLambda或AzureFunctions等功能即服务(FaaS)相对容易启动,可以自动扩展并且具有成本效益。这些可以对企业的服务进行API调用,用户可以通过前端接口进行API调用。这些定期检查确保他们的服务持续可用,并且监控工具可以捕获生产环境中发生的任何故障以通知任何性能下降。用户可以通过事件管理软件即服务(SaaS)工具整合来自监控工具的警报。功能即服务(FaaS)可用于自动化可用性和性能检查。但是,无服务器事件总线将警报作为整个DevOps基础架构中FaaS功能的调用进行通信,从而降低了即用即付模型的总体成本和FaaS功能的自动可扩展性。ChatOps改进了DevOps流程ChatOps在GitHub上开发,是一个对话框驱动的开发程序,允许用户在聊天工具中输入命令,以通过自定义脚本和插件启动持续集成(CI)/持续部署(CD)流程。脚本的运行需要后端的支持,这正是Serverless技术可以提供支持的地方。功能即服务(FaaS)功能使DevOps工程师能够简单地编写脚本来执行所需的操作并将它们上传到功能中,同时确保聊天工具可以调用它。这消除了繁琐的容器编排和网络设置。此外,仅当通过聊天机器人调用功能即服务(FaaS)功能时才会产生成本,而不是按小时产生。Serverless为持续部署增强持续集成(CI)/持续部署(CD)流程与ChatOps类似,serverless可以用来增强持续集成(CI)/持续部署(CD)流程,但与ChatOps不同的是,serverless可以自动化通过合并拉取请求在生产中的整个过程。这称为GitOps。GitOps由Weaveworks构想,是一种Kubernetes集群管理和应用程序交付的方法。Git推送通过利用Kubernetes的聚合特性触发持续交付。GitOps允许Kubernetes集群管理和应用程序交付,使用Git作为声明性基础架构和应用程序的单一真实来源。将Git置于交付管道的中心,开发人员可以使用Kubernetes加快拉取请求并简化应用程序部署和操作任务。GitOps为基础架构和应用程序代码提供“真实来源”,以进一步提高开发团队的速度。使这成为可能的工作流程始于一个持续集成(CI)工具,该工具将Docker映像推送到托管工具。然后,云计算功能将配置映射和Helm映射从主存储桶复制到主Git存储库。最后,GitOps操作员通过Lambda函数拉取Helm图表。函数即服务(FaaS)功能可通过复制Helm图用于主Git存储库。功能即服务(FaaS)功能易于设置且具有成本效益,这意味着DevOps工程师可以专注于GitOps基础架构的其他部分并降低流程中的成本。通往DevOps的道路充满挑战,但无服务器可以帮助Serverless通过即用即付、自动扩展、完全托管的服务降低DevOps采用的复杂性,从而使DevOps基础设施更加高效且更具成本效益。从开发和测试到持续集成(CI)/持续部署(CD)和事件管理,无服务器技术可以在整个DevOps堆栈中使用,以最优成本运行,并且在开发速度和代码可靠性方面非常有效。原标题:ServerlessTechnologiesCanAchieveOptimalDevOpsPractices,原作者:SarjeelYusuf
