每个云架构师都应该自动化的五件事最重要的好处之一是能够自动化传统上需要手动步骤的关键操作。自动化可能是使用云的最显着优势。云架构师在可行的情况下利用自动化来确保他们的角色不会被边缘化。对云架构师的工作至关重要的一些常见云自动化技术有哪些?以下是每位云架构师在设计、构建和部署云托管应用程序时应努力实现自动化的五件事。1.Scaling自动伸缩是使用云最基本也是必不可少的。无论我们是在谈论自动扩展服务器资源,还是内置于AmazonS3和DynamoDB等原生云服务中的弹性扩展,扩展都是云的重要组成部分。构建可扩展的基础架构是人们首先迁移到云的主要原因之一。但是,大部分这种自动化的可扩展性需要快速、轻松地启动新的服务器实例,从而实现更高级别的自动化。2.服务器配置在云出现之前,配置一台新服务器可能需要数天或数周时间。云自动化可以在短短几分钟内提供一个功能齐全、随时可用的服务器实例,并安装并运行所有必需的软件和服务。自动化服务器配置不仅是自动缩放的关键,也是自我修复基础设施(另一种云自动化)的关键。终止失败或受损的服务器实例并允许自动化用新服务器实例替换它改变了在云中解决问题的方式。此功能对于改善许多类别的问题和错误的MTTR(平均解决时间)至关重要。无论您是在AmazonEC2等计算服务中启动新的虚拟机实例,还是在GoogleKubernetesEngine等Kubernetes环境中启动新的容器实例,自动化服务器配置的工作方式都大同小异。在任何一种情况下,自动化都可以提高启动、扩展和修复服务器实例时的速度和可靠性——这对大多数基于云的应用程序都很重要。自动化服务器配置的另一个好处是提高了可用性。自动化配置意味着少量的大型服务器可以很容易地被大量的小型服务器取代。这种模式大大提高了应用程序的可用性,减少了故障的影响。但是只有当运行服务器所需的其余基础设施也可以快速、轻松地安装和设置时,自动化服务器配置才有效。这导致下一个自动化。3.基础架构创建自动配置服务器本身不足以启动和运行云应用程序并为用户提供服务。您还必须配置负载平衡系统、防火墙、网段、数据库以及您的应用程序所依赖的任何其他服务,例如队列和缓存。在安装、配置所有支持基础设施并将其连接到应用程序之前,应用程序无法完全发挥作用。如果手动完成,所有这些配置都非常耗时。如果部署在本地数据中心,可能需要数天或更长时间来安装所有必要的组件。然而,在云中,一种称为基础架构即代码(IaC)的自动化技术允许您调用API来配置应用程序基础架构。IaC允许您指定如何在源代码(通常是JSON或YAML文件)中创建基础设施,这些源代码可以使用Git等传统软件版本控制系统进行管理。编码的基础设施配置然后被传递到一个工具,该工具自动配置和配置基础设施组件并将它们连接到工作网络中。有许多工具可以执行这种级别的云基础设施自动化。两个流行的工具是HashiCorp的Terrform和AWS的CloudFormation。基础设施即代码为基础设施供应过程提供了独特的优势,包括变更控制和批准、变更跟踪和基础设施代码重用。基础架构即代码仅在云或类似云的数据中心中才有可能,其中基础架构API允许自动创建基础架构。云架构师应利用IaC工具为基础设施配置创建可靠、安全和可重复的云模式。这个好处怎么强调都不为过。基于代码管理的自动化基础设施设置导致了下一种自动化。4.代码部署自动化代码部署管道并不是云所独有的。但考虑到其他类型自动化的大量使用,自动化代码部署是云架构师所依赖的基于云的应用程序的自然扩展。最流行的自动化代码部署方法之一是CI/CD管道。CI/CD(持续集成/持续交付)是一种模式,允许根据签入软件版本控制系统(如Git)的代码将代码自动部署到生产级应用程序。自动部署可以安排为每天或每小时执行,或者在代码库发生更改且可用于部署时触发,具体取决于应用程序和公司政策。有许多工具可用于支持自动化代码部署,包括Jenkins、Bamboo、GitLab、CircleCI和AWSCodeDeploy。每个人的运作方式都不同,云架构师必须选择正确的自动化策略来满足开发组织和业务的需求。然而,几乎所有复杂的云架构应用程序都使用某种自动化代码部署。您公司的云架构应用程序也应如此。5.原生云服务一种经常被忽视的自动化是许多云服务中内置的自动动态扩展。云队列服务(如AmazonSimpleQueueService)、云数据存储(如AmazonS3)和云数据库(如AmazonDynamoDB)在很大程度上依赖自动化来管理使用它们的动态应用程序的扩展需求。云架构师通常更喜欢使用S3等数据存储,而不是从计算实例上的本地驱动器存储创建自己的数据存储,因为它简单、安全、可靠、易于集成并且功能自动化。公共云提供的许多其他服务也是如此。如果您使用它们,您可以充分利用它们背后强大的自动化功能。6、云意味着自动化自动化是云的主要特征之一,这是云与传统数据中心的区别之一。当然,您可以在不利用自动化的情况下在云中运行应用程序,许多人这样做,但他们错失了机会,因为自动化是提高一致性、可靠性、安全性、可扩展性和对业务需求的响应能力的关键。唯一的办法。将本地应用程序按原样迁移到云是一种相对简单、直接的迁移,通常不需要经过培训的云架构师来实施。但是这样的应用程序错过了在云中运行的大部分好处。构建真正基于云的应用程序确实需要云架构师并利用云必须提供的一切。几乎所有云架构应用程序都会大量使用自动化。优秀的云架构师将实施、扩展、支持和鼓励在所有基于云的应用程序中使用自动化。简而言之,一个好的云架构师会尽可能地自动化。他们对云中的自动化功能印象深刻,并喜欢以独特而有趣的方式使用这些自动化。自动化是最成功的应用程序部署所必需的。原文链接:https://img.ydisp.cn/news/20230110/xd3fhpnelus
