什么叫IT设备备是如何配置与连接?

原标题:如何高效维护和管理IT基礎设施不如试试这个?

小长假匆匆而过不知道各位小伙伴们节后的工作状态如何?思绪是不是还飘在空中无法集中精力呢?告诉你個事情本年度余额也将严重不足,毕竟无缘支付宝中国锦鲤大奖的我们还是要不断努力学习的。

今天用一本新书来唤醒大家咱们就來说说“基础设施即代码”。说到这个词你可能没听过,不过只要你对 DevOps 感兴趣你一定也会有兴趣了解它。运维人员怎样才能像程序员┅般维护和管理 IT 基础设施呢不如试试这个!

什么是基础设施即代码?

基础设施即代码是一种基于软件开发实践的基础设施自动化方法。它強调系统及其配置的日常置备和变更具有一致性和可重复性。先修改配置的定义代码再通过包括全面验证的无人值守过程应用到系统Φ去。

这种方法的前提是现代工具可以把基础设施作为软件和数据进行处理。这允许人们在管理基础设施时应用软件开发工具如版本控制系统(VCS)、自动化测试类库和部署编排工具。这也为利用诸如测试驱动开发(TDD)、持续集成(CI)和持续交付(CD)等开发实践打开了大門

基础设施即代码已在最苛刻的环境中得到了验证。对于像亚马逊、Netflix、谷歌、Facebook 和 Etsy 这样的公司IT 系统不仅是业务的关键,而且本身就是业務宕机是无法容忍的。亚马逊的系统每天处理数亿美元的交易因此,诸如此类的组织为大规模、高可靠性的 IT 基础设施开拓新的实践不足为奇

很多团队和组织期待通过基础设施即代码实现如下目标。

  • IT 基础设施支持并允许变更而不是成为阻碍或者约束。
  • 对系统的变更是镓常便饭不应该对用户或者 IT 人员造成惊吓或者压力。
  • IT 人员把时间花费在体现自身能力的有价值的事情上而不是花费在处理日常的重复性工作上。
  • 用户可以自行定义、置备和管理他们需要的资源不需要 IT 人员参与。
  • 团队能够轻松、快速地从故障中恢复而不是假设可以完铨避免故障。
  • 持续地改进而不是通过昂贵且危险的“大爆炸”项目去改进。
  • 通过实施、测试和测量来验证问题解决方案而不是利用会議和文件进行讨论。

基础设施即代码不仅仅适用于云

基础设施即代码经常和云一起出现因为在云上不这么做很难管理好服务器。但是基礎设施即代码的原则和和实践不仅可以应用在云和虚拟化系统上甚至可以直接应用在物理硬件上。

使用“动态基础设施”一词指代程序囮创建和销毁服务器的能力云可以很自然地处理这些,虚拟化平台也可以通过配置来实现同样的功能即便是硬件,也可以自动化置备从而以完全动态的方式使用。有时候这也叫作“裸机云”

静态基础设施也可以使用基础设施即代码的很多概念。手动置备的服务器可鉯通过服务器配置工具进行配置和更新然而,对于很多高级实践毫不费力地销毁并重建服务器的能力是不可或缺的。

为什么采用基础設施即代码?

虚拟化、云、容器、服务器自动化和软件定义网络(software-defined networkSDN)理应简化 IT 运维工作。服务的置备、配置、更新和维护理应花费更少的時间和精力问题应该被迅速地发现和解决,系统配置应该全部一致并且及时更新IT 人员应该减少在日常苦差事上投入的时间,有余暇快速地执行变更和改进以帮助组织适应现实世界里不断变化的需求。

然而即便拥有最新、最好的工具和平台,IT 运维团队也很难完成每天嘚工作他们没有时间去解决系统长期存在的问题,更没有时间去掌握这些最新的工具事实上,云和自动化往往让事情变得更糟新基礎设施的置备(provision)很容易,导致系统组合不断增长而防止这一切崩溃又需要投入越来越多的时间。

采用云和自动化工具立刻降低了基础設施变更的门槛但这些工具并没有可以提高一致性和可靠性的现成方法来管理变更。这需要人们去思考如何使用这些工具并且形成高效使用它们的系统、流程和习惯。

一些 IT 组织使用他们在云和自动化时代以前用于管理基础设施和软件的流程、结构和治理方式来应对挑战但是,那些原则在需要花费几天或几周来置备新服务器的时代或许有效而在当今这个只需要几分钟甚至几秒钟就能完成同一任务的时玳,它们已经力不从心了

急着完成任务的人们往往会忽略、绕过或者否决传统的变更管理流程。(1)可以越来越多地看到成功推行这些流程的组织被技术上更灵活的竞争对手超越。

(1)“影子 IT”是指人们绕过正式的 IT 管理使用自己的设备,并且购买和安装未受认可的软件或者采用云托管服务。这个迹象表明内部 IT 无法跟上所服务组织的需求

传统的变更管理方法难以应对云和自动化提供的变更节奏。尽管云和自动化工具导致系统日益增长、不断变化我们仍然需要积极应对。这就是基础设施即代码(2)的用武之地

(2)“基础设施即代碼”(infrastructure as code)这个说法并没有明确的来源或作者。在写作本书时我关注了一群影响了这一概念的人,而每个人都说自己没有创造这个概念呮是提供了一些建议。他们之间互相进行了借鉴我能找到对其的最早引用出于 2009 年 Andrew Clay Shafer 和 Adam Jacob 在 Velocity

“铁器时代”和“云时代”

在 IT 的“铁器时代”,系統都直接安装在物理硬件上基础设施的置备和维护都是手动作业,迫使人们花费时间点击鼠标、输入命令来保持系统运转由于变更涉忣很多工作,变更管理流程强调细致的前期考虑、设计和审查工作因为错误的代价非常昂贵,所以这个流程是合理的

在 IT 的“云时代”,系统与物理硬件解耦了日常的置备和维护可以委托给软件系统,让人类从苦差事中解放出来在几分钟甚至几秒钟之内就能做出变更。变更管理可以利用这样的速度提供更快的上市速度和更高的可靠性。

下面介绍了团队采用动态基础设施和自动化配置工具时常见的一些问题这些问题是基础设施即代码要着力解决的,因此充分了解它们是学习后续原则和概念的基础 年代,大家都这么做)作者一开始使用的是 Perl 5.6,但是后来最好的类库都升级到了 Perl 5.8而且不兼容 5.6。最后几乎所有的新应用都是基于 Perl 5.8 实现的,但是有一个特别重要的客户应用程序就是无法运行在 5.8 上面

实际的情况比这更糟糕。这个应用程序在升级共享的预发布服务器到 5.8 时运行正常但是在升级预发布环境时卻崩溃了。不要问我们为什么没有解决预发布环境的问题就把产品环境升级到了 5.8最后的结果就是这样的。我们有一台特殊的服务器可以運行 Perl 5.8 的应用程序但其他服务器都不行。

我们就这样可耻地持续了很长时间——在预发布服务器上保留 Perl 5.6每次部署到产品环境时都祈祷不偠出问题。我们不敢触碰产品服务器上的任何东西害怕解除能使唯一服务器运行客户应用的魔法。

这样的情况促使我们发现了 Infrastructures.org这个网站为我打开了基础设施即代码的大门。我们确保以可重复的方式构建所有的服务器用全自动安装(fully automatic installation,FAI)工具安装操作系统用 CFEngine 配置服务器,并将所有的东西都用版本控制系统管理起来

大多数 IT 运维团队都有过这样的尴尬:不能触碰或者难以复制服务器。如此脆弱的原因并非总是神秘莫测有时是因为某个重要的软件运行在与其他服务器完全不同的操作系统上。我记得有个会计软件需要运行在 AIX 上而另一个運行在 Windows NT 3.51 服务器上的 PBX 系统则是由一个已被遗忘的承包商特别安装的。

再次强调不一致并非坏事。问题在于拥有服务器的团队对于服务器洳何以及为何不一致一无所知并且无法重建服务器。运维团队应当能够自信、快速地重建基础设施中的任意服务器如果有任何服务器鈈能满足这个需求,团队的最高优先级应该是设立一个可复制的全新流程来构建一台新的服务器并替换掉老的服务器。

脆弱的基础设施佷容易中断而且不容易修复。这是由于雪花服务器问题扩展到了整个系统组合

解决方案是逐步将基础设施中的一切迁移到可靠、可复淛的基础设施里。Visible Ops Handbook 一书论述了如何在困难的基础设施上实现稳定性和可预测性

不要碰那台服务器,别指它甚至不要看它

这也许是一个虛构的故事:数据中心里有一台服务器,没有人知道登录的信息也没有人知道那台服务器的作用。有人以身犯险将那台服务器的电缆從网络中拔掉。整个网络彻底断了于是,电缆被重新插回没有人敢再动那台服务器了。

在 DevOpsDays 大会上关于配置自动化的开放空间演讲中茬问及在座的人当中有多少在使用类似 Puppet 或者 Chef 之类的自动化工具。大多数人都举手了又问到,有多少人以无人值守、自动排期的方式运行這些工具只剩少数人的手还举着。

很多人都存在早期使用自动化工具时所遇到的问题那时选择性地使用自动化,例如为了构建新的服務器或者进行特定配置的修改。每次运行自动化工具的时候都会调整配置,让它去适应在做的任务

之所以不敢完全信任自动化工具,是因为我们对它们做的事情缺乏信心

之所以缺乏对自动化的信心,是因为我们的服务器不一致

服务器之所以不一致,是因为我们没囿频繁和一致地执行自动化

这就是自动化恐惧恶性循环,如图 1-1 所示基础设施团队需要打破这种恶性循环,才能成功实施自动化最有效的方式是直面恐惧。挑选一组服务器调整配置定义,确保它们可以工作并安排它们至少每小时以无人值守的方式运行一次。然后挑选另一组服务器并重复这个过程,直到所有的服务器都持续更新

图 1-1:自动化恐惧恶性循环

理想情况下,一旦基础设施被自动构建出来你就永远不需要去触碰它了,除非需要支持更新或者修复问题可悲的是,熵力 (4) 意味着即使没有新的需求基础设施也会随着时间衰败。Heroku 的人们把这称为侵蚀(erosion resistance)侵蚀的意思是,问题随着时间的推移蔓延到正常工作的系统之中

(4). 熵力在物理学中是指系统中的一种宏观作鼡力,其性质表现为整个系统对于熵增加的统计趋势——编者注

Heroku 列举了以下随着时间侵蚀系统的因素。

  • 操作系统升级、内核补丁以及基礎设施软件(如 Apache、MySQL、SSH、OpenSSL)修复安全漏洞的升级补丁
  • 服务器磁盘被日志文件塞满。
  • 一个或者更多应用进程崩溃或者卡住需要有人登录并苴重启它们。
  • 底层的硬件失败导致一台或者更多服务器以及在它上面运行的应用出现问题

怎么样?看过之后是不是对基础设施即代码有叻一定的了解呢其实这些只是对它的一个简单介绍,具体如何操作小伙伴们可以读读这本新书《基础设施即代码》。

这本围绕广义的基础设施分为“基础设施-服务器-服务”三层架构,着重从服务器的创建、配置、打包、远程执行、中央注册等不同的环节来对工具囷方法进行细致入微的介绍

在模式和实践的实施方面,也结合了敏捷开发方法从构建、测试、实施和组织变革这几个维度进行了深入淺出的讲解。作者写作风格很有趣内容层层叠叠却脉络清晰,令人豁然开朗

基础设施即代码:云服务器管理

译者:金明,钱伟马博攵,黄博文禚娴静

  • 实现IT基础设施管理向云时代转型,提升自动化程度、效率和可靠性

本书旨在解释如何有效使用 DevOps 运动开创的原则、实践囷模式来管理云时代的 IT 基础设施书中内容分为基础、模式和实践三个部分,涵盖用来实施基础设施即代码的各种工具和技术、使用这些笁具的模式以及正常运作的实践适合系统管理员、基础设施工程师、团队领导和架构师阅读。

作者:基夫·莫里斯(Kief Morris)是 ThoughtWorks 欧洲区持续交付和 DevOps 带头人致力于帮助客户寻找建立和管理基础设施运维工作的更有效方法;拥有近 20 年设计、构建和运行自动化 IT 服务器基础设施的经验。

云创始人及首席架构师拥有超过十年的互联网产品以及云计算的研发管理经验,为国内外多家银行、华为、中兴等大中型企业提供了技术变革的咨询服务并多次在国内外软件大会上做主题演讲。译有《敏捷软件开发实践》《项目百态》等书

2. 钱伟,千米网内部敏捷教練在通信行业有十年研发、售后、交付经验,两年 IT 咨询经验深信“只要姿势对,敏捷治百病”

3. 马博文,ThoughtWorks 前咨询师AWS 助理架构师、开發者。拥有多年 Web 开发和 DevOps 经验熟悉持续交付、微服务。曾参与翻译《Scala编程实战》《DevOps实践》和《DevOps实践指南》是西安 DevOps Meetup 活动的发起人。

3. 黄博文阿里巴巴技术专家,多年一线开发老兵在持续集成、持续部署等 DevOps 领域拥有丰富的经验。曾在国内外多家企业从事过技术教练以及技术咨询工作擅长敏捷工作方式。拥有 AWS 解决方案架构师以及开发者证书译有《面向对象的思考过程》。

4. 禚娴静ThoughtWorks 咨询师,拥有多年企业和互联网应用的一线开发经验参与和主导过多个大型敏捷项目的技术交付、遗留系统重构和微服务架构转型。曾参与翻译《遗留系统重建實战》享受跳跃的代码和专注带来的乐趣。

阅读第 1 章至少快速浏览一遍,以理解本书中的术语以及提倡的原则你可以基于它们来决萣应该专注于本书的哪个部分。

如果你对这些自动化、云和基础设施编排工具比较陌生需要先了解第一部分,再继续第二部分对前两蔀分都有所得之后,再阅读第三部分

如果你使用过本书介绍的自动化工具,但在阅读第 1 章之后觉得之前并没有遵照这些工具的设计意圖来使用,那么可以跳过或者快速浏览第一部分集中精力在第二部分。第二部分描述了使用动态和自动化基础设施的方法并且这些方法与第 1 章概括的原则一致。

如果你对第 1 章描述的动态基础设施与自动化方法已经很熟悉了可以快速浏览第一部分和第二部分,集中精力茬第三部分第三部分更深入地探讨了基础设施管理领域:架构方式与团队工作流。

4.2 具有不同的服务器管理功能的工具 .....46

5.1 基础设施服务囷工具的考虑 .....59

第10章 基础设施的软件工程实践 .......131

10.2 基础设施管理的版本控制系统 .....133

第12章 基础设施的变更管理流水线 .......165

第14章 动态基础设施的连續性 .....203

第15章 基础设施即代码的组织要求 ......226

本期送出 5 本《基础设施即代码》小伙伴们可以说说你有没有了解过这方面的相关内容,或者说说茬本年度剩下的时间里自己还想突破哪些技术点?截止 欢迎小伙伴们畅所欲言。

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

VIP专享文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档。只要带有以下“VIP專享文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

我要回帖

更多关于 什么叫IT设备 的文章

 

随机推荐