什么是基础设施即代码(IaC)

基础设施即代码简介

基础设施即代码(IaC[Infrastructure as Code])是通过代码而非手动流程来管理和置备基础设施的方法。

利用 IaC 我们可以创建包含基础设施规范的配置文件,从而便于编辑和分发配置。此外,它还可确保每次置备的环境都完全相同。通过对配置规范进行整理和记录,IaC 有助于实现配置管理,并避免发生未记录的临时配置更改。

版本控制是 IaC 的一个重要组成部分,就像其他任何软件源代码文件一样,配置文件也应该在源代码控制之下。以基础设施即代码方式部署还意味着您可以将基础架构划分为若干模块化组件,它们可通过自动化以不同的方式进行组合。

借助 IaC 实现基础架构置备的自动化,意味着开发人员无需再在每次开发或部署应用时手动置备和管理服务器、操作系统、存储及其他基础架构组件。对基础架构编码即可创建一个置备用的模板,尽管置备过程仍然可以手动完成,但也可以由自动化工具为您代劳。

IaC 的声明式方法与命令式方法

IaC 有两种实施方法:声明式或命令式。

声明式方法定义了系统的预期状态,包括所需的资源以及它们应具有的属性,随后 IaC 工具会为您进行相关配置。

声明式方法还将保留系统对象的当前状态列表,因此在移除基础架构时会更便于管理。

另一方面,命令式方法则定义了实现预期配置所需的特定命令,最后需要以正确的顺序执行这些命令。

许多 IaC 工具都使用声明式方法,并会自动置备所需的基础架构。如果您更改了预期状态,则声明式 IaC 工具会为您应用这些更改。命令式工具则需要您确定该如何应用这些更改。

IaC 工具通常在两种方法中都能用,但往往更倾向于其中一种方法。

IaC 的优势是什么?

置备基础架构历来是一个耗时且成本高昂的手动过程。现在,基础架构管理已经从数据中心内的物理硬件(尽管它仍可能是企业的一个组成部分)转移到了虚拟化、容器和云计算。

随着云计算的发展,基础架构组件的数量也在不断增加,每天都有更多的应用发布到生产环境中,而且基础架构本身也要被不断地使用、扩展和移除。如果没有相应的 IaC 实践,那么管理现今这样大规模的基础架构会变得越来越困难。

IaC 可以帮助您的企业管理 IT 基础架构需求,同时提高一致性并减少错误和手动配置。

IaC 的优势有:

  • 降低成本
  • 加快部署速度
  • 减少错误
  • 提高基础架构一致性
  • 消除配置偏移

IaC 工具,包含但不局限于以下

  • Chef
  • Puppet
  • Ansible
  • Saltstack
  • Terraform
  • AWS CloudFormation

但各个工具在使用范畴范围上也有所不同,如下图:


898767109-6440ffad212c0_fix732.png

为什么说 IaC 对于 DevOps 至关重要

IaC 是实施 DevOps 实践和持续集成/持续交付(CI/CD)的一个重要组成部分。IaC 免除了开发人员的大部分置备工作,他们只需要执行一个脚本即可让基础架构准备就绪。

如此一来,应用部署就不必再等待基础架构,而系统管理员也不用管理耗时的手动流程。

CI/CD 离不开贯穿应用整个生命周期(从集成和测试阶段,到交付和部署)的持续自动化和持续监控。

环境要实现自动化,需要保持一致。如果开发团队以一种方式部署应用或配置环境,而运维团队以另一种方式部署和配置,则实现应用部署的自动化并不能发挥作用。

通过 DevOps 方法来协调开发和运维团队,可以减少错误、手动部署及不一致的情况。

IaC 会帮助您协调开发和运维工作,因为这两个团队可以使用有关应用部署的同一描述,以支持 DevOps 方法。

每种环境(包括生产环境)都应使用相同的部署过程。每次使用 IaC 时,它都会生成相同的环境。

此外,您也无需分别维护具有独特配置(无法自动复制)的不同部署环境,从而确保了生产环境的一致性。

DevOps 最佳实践也同样适用于 IaC 中的基础架构。在软件开发期间,基础架构可采用与应用相同的 CI/CD 管道,因此可以对基础架构代码应用相同的测试和版本控制。

参考:

本文章出自:https://www.wenzizone.com/202312/introduction-of-IaC

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,718评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,683评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,207评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,755评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,862评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,050评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,136评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,882评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,330评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,651评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,789评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,477评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,135评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,864评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,099评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,598评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,697评论 2 351

推荐阅读更多精彩内容