第 4 章 使用 Azure Bicep 实现基础架构即代码
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
在前几章中,我们一直在使用 Azure CLI、Azure PowerShell 或直接在 Azure 门户上配置资源。然而,这些并不是创建和管理 Azure 服务的唯一方法。基础架构即代码(IaC)的概念有助于实现基础架构的自动化部署、管理和配置。通过使用 IaC 使用代码指定基础架构,可以更一致地重复进行部署。
本章将使用 Azure Bicep(一种用于交付 Azure 资源的声明式特定域语言 (DSL))探讨 IaC 主题。Azure Bicep 提供了与传统 JSON 模板相同的功能,但通过更易读、更易管理的语法,使 Azure 资源管理器 (ARM) 模板开发变得更容易。我们将首先讨论 IaC、它的优势以及它变成现代云部署必不可少的方法的原因。然后,我们将介绍 Azure Bicep 语言的语法、组织和基本要素。你会发现如何创建 Bicep 文件来定义和部署资源到 Azure。
之后,我们将讨论如何更新和维护基础架构,使部署保持一致。最后,我们将谈谈 Azure 的 IaC 最佳实践。这些最佳实践将帮助你高效地管理配置,编写简洁、安全和有效的 Bicep 代码,并将 IaC 集成到 CI/CD 管道中以实现自动部署。
本章结束时,您将对如何使用 Azure Bicep 以代码形式定义、部署和管理 Azure 基础架构有一个扎实的了解,从而能够完全控制云环境。
了解 IaC
为 Azure 服务配置基础架构的方法有很多。在本章之前,我们一直在使用 Azure CLI、Azure PowerShell 和 Azure 门户。但也有声明式 IaC 工具,如 Azure Bicep。IaC 有助于解决的主要问题是手动配置可能产生的不一致性和潜在错误。在手动部署基础架构时,很容易遗漏某个步骤或错误配置某个设置,从而导致难以跟踪和复制的问题。
IaC 允许您用代码定义基础架构,从而解决了这一问题。这些代码就像您的资源蓝图,确保每次执行时都应用相同的配置。有了 IaC,基础架构配置就可以存储在源代码控制中,使其具有版本控制、可追踪性和可审计性。这种方法将版本控制、测试和持续集成等软件开发原则引入基础设施管理。有些组织可能会将这种方法称为基础设施即软件。
使用 Azure Bicep 等 IaC 工具,您可以声明式地定义基础设施的理想状态。这意味着你描述的是你想要什么,而不是如何实现它。例如,你可以指定你需要一个具有某些属性的虚拟 Network+,而 IaC 工具将处理该网络的创建和配置。这种抽象简化了流程,减少了对底层基础设施深厚技术知识的需求。
IaC 的显著优势之一是能够自动部署基础设施。这种自动化减少了建立环境所需的时间和精力,这在速度和可重复性至关重要的 Agile 和 DevOps 实践中尤为宝贵。自动部署还能确保环境设置的一致性,最大限度地降低配置漂移的风险,即环境随着时间的推移偏离预期配置。
可扩展性是 IaC ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access