基础设施即代码是一种基于代码而不是手动流程来管理和配置基础设施的方法。优点有很多,包括可扩展性、灵活性和效率。但我们也必须考虑 IaC 带来的挑战。为了以更快的速度、更低的风险和更低的成本开发、部署和扩展云应用程序,有必要自动抽象和解决基础设施管理问题。这可以通过基础设施即代码(简称 IaC)来完成。
它是一组抽象基础设施管理问题的实践和工具,是软件工程以及运维如何看待基础设施配置和维护的根本范式转变。
基础设施是开发和生产软件服务所需的一组资源。IaC 是通过使用代码的描述性模型配置和管理基础设施的实践。这种方法取代了手动流程,即配置工具、脚本等。
通过代码,使用基础设施即代码创建的配置文件描述了基础设施的细节。因此修改和分发配置变得更加容易。
通过这种方式,计算机中心的资源(网络、服务器、虚拟机、负载平衡器)的配置可以通过版本控制系统唯一地定义和管理。
IaC在云原生中有什么用?
在云原生开发环境中,基础设施必须能够根据需墨西哥电报数据 要使用和重新生成,并且在开发和生产的所有阶段都保持一致。
基础设施即代码允许开发人员使用与软件开发相同的流程来管理基础设施配置,从而避免诸如不可重现的变化等问题。
这可确保每次自动应用配置时始终获得相同的结果。手动配置既不能保证此结果,也不能扩展到云原生应用程序所需的大小。
事实上,今天的基础设施管理在可扩展性方面是一个真正的问题。从服务器到负载均衡器,从防火墙到数据库再到容器集群:软件架构的复杂性与过去相比已经发生了变化。
单一服务器不再是在云中配置、管理开发环境和运行软件的构建块。相比过去,单机的单实例不再是核心。云抽象了物理服务器,而是提供“资源”。而且人工管理不再高效。