什么是基础设施即代码?

基础设施即代码 (IaC) 是一种管理 IT 系统基础设施的方法,它依赖于使用可重复的配置文件来为 CI/CD 开发生成一致的部署环境。

什么是基础设施即代码?

基础设施即代码是指通过声明性或脚本定义(代码)而不是通过手动配置或使用传统配置工具来配置和管理基础设施,包括硬件、虚拟资源、平台、容器系统、服务和拓扑。 IaC 将配置、策略、配置文件、脚本和模板与部署它们的硬件或软件分开,以便它们可以像代码一样被存储、共享、修改和应用。

这种方法随着云基础设施的普及而发展起来,它源于 DevOps 思维,将与开发人员用于应用程序源代码的相同类型的版本控制和可重复性应用于基础设施的编排。 IaC 方法通过在每次应用时创建相同的基础设施环境来支持持续集成、交付和部署。

基础设施即代码为何如此重要?

将基础设施视为代码的能力为基础设施管理带来了自动化、可见性、效率和可扩展性的好处,从而可以更快、更可靠地部署应用,减少人工工作量以及人为错误或安全漏洞的风险。 由于配置与系统分离,因此可以更容易地部署在其他地方的类似系统上。 这样,它减少了从数据中心迁移到云或从一个云迁移到另一个云的挑战。

IaC 还支持敏捷开发和 CI/CD 策略,确保沙盒、测试和生产环境相同且随着时间的推移保持一致,因为它们都配置了相同的声明性代码或脚本。

基础设施即代码如何运作?

服务器、负载均衡器、虚拟机和其他数据中心或云资源的 IaC 配置可以通过指定指令(不详细说明结果)的命令式方法或指定所需配置结果(不详细说明如何实现,可以基于预先存在的工作流程和模板)的声明式方法来完成。 这种区别就好比要求一个三明治,并相信三明治制作者知道要采取哪些步骤以及按什么顺序进行(声明式)——或者指定制作三明治所需的每个步骤,而不一定提到它们会制作出一个三明治(命令式)。

无论使用声明式还是命令式方法,IaC 都可以自动执行配置和基础设施管理。

F5 如何处理基础设施即代码?

F5 BIG-IP 平台可以“作为代码”处理,并使用插件或 F5application服务 3 (AS3) 扩展来用于 IaC 配置和版本控制工具(例如Terraform和 Ansible)。

F5 自动化工具链包含 AS3 扩展和 F5 声明式入职 (DO) 扩展。 AS3 是一种基于 JSON 声明的灵活、低开销机制,用于在 BIG-IP 系统上配置 L4-L7应用服务。 DO 扩展支持为 BIG-IP 产品提供声明式 L–L3 加入功能。