《:学习Chef:云时代的配置管理与自动化运维技术MischaTaylor,SethVargo》[48M]百度网盘|pdf下载|亲测有效
《:学习Chef:云时代的配置管理与自动化运维技术MischaTaylor,SethVargo》[48M]百度网盘|pdf下载|亲测有效

:学习Chef:云时代的配置管理与自动化运维技术MischaTaylor,SethVargo pdf下载

出版社 万泽惠远图书专营店
出版年 2016-07
页数 390页
装帧 精装
评分 8.5(豆瓣)
限时特惠 00:00:00
活动结束后恢复原价
纸质书参考价 ¥23
电子版限时价 ¥5.99 省 18 元

选择版本

不满意全额退款
发货失败双倍赔偿
邮箱即时发送

内容简介

本篇主要提供:学习Chef:云时代的配置管理与自动化运维技术MischaTaylor,SethVargo电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

基本信息

书名:学习Chef:云时代的配置管理与自动化运维技术

定价:79.00元

作者:Mischa Taylor,Seth Vargo 闫诺

出版社:清华大学出版社

出版日期:2016-07-01

ISBN:9787302433903

字数:349000

页码:340

版次:1

装帧:平装

开本:16开

商品重量:0.4kg

编辑推荐


在云时代,Chef作为DevOps运动的重要工具之一,主要用于实现自动化配置管理和运维,帮助大大小小的企业解决各种运维问题。本书针对刚开始接触配置管理的开发人员和系统管理员,阐述了如何在短短几分钟或者几个小时之内搭建和部署应用,而不像以往那样要花几天或者几周时间。

n


n

本书介绍如何写基于Ruby的Chef代码,通过实例来引导读者逐步掌握各种Chef工具和配置管理概念。只要略懂命令行,熟悉基本的系统管理,就可以通过本书迅速掌握Chef。

n


内容提要


  Chef作为 DevOps运动的重要工具之一,用于快速实现云端自动化配置管理。全书共16章,主题涉及Chef配置管理、Ruby及其语法、如何写Chef recipe,如何用Test Kitchen管理沙盒测试环境,如何用Chef客户端管理单个节点,Chef cookbook如何写和如何用,如何用Chef服务器管理多个节点,搜索、数据包、角色、开发环境和测试等都有介绍。
  本书是一本介绍Chef基础架构自动化平台的入门书,有比较强的实操性,很适合刚开始接触Chef、配置管理和自动化编程的读者阅读和参考。

目录


作者介绍


Mischa Taylor是一名Chef咨询师,这家位于西雅图的高成长新创公司,主营业务为打造Chef平台,快速实现自动化配置,并将业务过程移到云端。他的兴趣聚焦于打造高质量的产品和提升组织内部工程实践的生产力。他能说会道且擅长指导,同时在软件开发和神经网络计算方面也颇有专研和造诣。

n


n

Seth Vargo是HashiCorp的软件工程师和开源倡导者。他先后任职于Chef (Opscode), CustomInk和匹兹堡的多家新创公司。他对技术和组织文化有很强烈的爱好。在写代码和开源相关工作之余,他喜欢参与本地用户组和会议。他是匹兹堡DevOps Days的组织者。

n


n

闫诺,Chef创始工程师。在Chef软件公司任职期间作为主要工程师研发了托管企业Chef服务。2011年离开Chef参与创办消费者推荐搜索引擎公司Livestar,2013年并入以图片为基础的推荐、探索引擎公司Pinterest。在Pinterest任职期间,他参与构建综合性实时认知及响应平台,后者服务于Pinterest的自动化垃圾内容处理、通知推送服务、广告服务及内容推荐服务等。2015年底,他离开Pinterest,目前正在为解决新的工程挑战而忙得乐此不彼。

n


n

闫诺毕业于美国华盛顿大学(西雅图),大学主修应用及计算数学。平时对世界各地的文化和各类艺术很感兴趣。工作之余,时常为朋友圈内有需要的创业公司提供帮助,积极参与鼓励大学生学习科学、技术、工程及数学的公益项目。

n


文摘


章 配置管理和Chef

n

Chef是一个面向(像你一样的)信息科技(IT)专家和软件工程师的配置管理工具。由

n

于配置管理有许多不同的定义,所以让我们先来解释在本书中配置管理代表的意思以及

n

为什么你需要一个配置管理工具。我们同时会介绍Chef并讲解为什么你需要它。

n

什么是配置管理

n

在IT行业中,配置管理是在将软件应用程序发布给消费者的过程中对以下实体进行管理

n

的工程实践:

n

? 硬件

n

? 软件

n

? 基础架构

n

? 人

n

? 流程

n

配置管理源于解决团队工作中基本的挑战。当你是的系统管理员并管理少量服务

n

器时,变化管理一般没有多复杂;然而协调若干系统管理员和工程师来管理数百甚至成

n

千上万个服务器和应用程序来支持巨大数量的用户,则非常复杂,并往往需要一些工具

n

来支持。

n

现代的IT配置管理工具通常包含对Mark Burgesspass提出的自动化和基于策略的理论之

n

实现。他在二十世纪九十年代末到千禧早年间在奥斯陆大学学院任教授时开发了IT自动

n

化理论的如下核心思想。

n


n

? 配置改变必须由一种系统化的方式处理来保证系统的配置是正确和可靠的。

n

? 系统本身要有一些自救措施,从而错误可以自动被侦测到并修复而无需明确的

n

指令。

n

当下的IT配置工具的代表包括CFEngine、Puppet、Microsoft Windows中的Desired State

n

Configuration引擎、Ansible、SaltStack以及(毫无疑问)Chef。

n

为什么需要配置管理工具来实现IT自动化

n

在管理复杂的企业基础架构时使用自动化配置管理工具,有很多至关重要的原因,以下

n

是其中四个重要原因。

n

? 一致性。如果基础架构是手动配置的,怎样才能知道所有的服务器的配置都一致?

n

再者,怎样才能确定所有的服务器配置都符合标准和安全需求?(比如说, 系统管

n

理员有没有在相应系统里记录所发生的改变?)

n

使用一个配置管理工具来自动化重复的任务能使系统管理员事半功倍。当这些可重

n

复的任务非常艰难和复杂时,人工通常很难每次都将它们一模一样地完成。而这正

n

好是电脑(配置管理工具)擅长做的事情。让配置管理工具来自动化这些复杂的任

n

务可以让系统管理员专注于其他人类擅长的重要的事情。

n

? 高效的变化管理。当基础架构没有使用配置管理工具而完全手动构建的时候,人们

n

通常害怕改变。长久以往,这些手动管理的服务器通常会包含大量难以理解和更改

n

的零碎配置。

n

在这些情况下,公司或组织机构一般会使用大量的流程去管理变化,而这些流程通

n

常希望小化变化或大化延迟变化的发生。这通常造成延迟发布用户所需要的新

n

功能。

n

当服务器永远可以轻松重建时,改变便不再可怕,相应的,管理变化的流程也会变

n

少。小的改变随时可以发生,比如每天,甚至每天多次。

n

? 简化重建。当服务器是手动建立的时候,从零重建往往不容易。那么如果服务器在

n

灾难性事件中被摧毁了怎么办?多久才能恢复服务?

n

使用配置管理工具自动部署能帮助快速地恢复服务。与其在服务器上进行更新或部

n

署应用程序补丁(有可能是零碎的操作),系统管理员可以快速通过自动的方式建

n

立一个新的、完成更新的系统然后把旧的关掉。当重建很方便的时候,系统管理员

n

则更无惧对基础架构进行快速的迭代和改变。

n

? 透明性。配置管理工具带有监视和汇报功能。监视系统管理员所做的工作并不需要

n

很复杂的工具,但试图理解一个包含若干系统管理员和若干软件工程师,每天部署

n

若干次软件改变的工程团队都做了些什么,的确需要一个配置管理工具。

n

当基础架构变化由自动化系统来完成时,所有改变都可以自动登记在相应的跟踪系

n

统中来提高透明度,显示出团队所做的有意义的工作。

n

Chef是什么

n

Chef是可以用来配置和管理物理数据中心或云中基础架构的自动化平台。可以把它部署

n

到公司适合的基础架构类型中。可以用Chef来加速应用程序部署,甚至完成持续部署

n

流程。Chef的关键威力在于它将基础架构变为代码。

n

用代码来表示基础架构意味着计算环境拥有一些与其应用程序一样的属性。

n

? 基础架构可以有不同版本。

n

? 基础架构可以被随时重建。

n

? 基础架构可以拥有完整的测试来保证正确性。

n

图1-1展示了Chef的基本架构。

n

Chef开发包的组件可以帮助支持你在开发机器上写Chef代码;Chef服务器的组件可以帮

n

助延伸配置管理能力,使你可以管理成百上千或更多的服务器。

n

为什么企业需要Chef

n

当Adam Jacob在2009年开始创建Chef时,他有三个重要的观点来解决他在其他配置管

n

理工具中看到的不足。

n

1. 配置管理工具应该对云基础架构提供支持。

n

2. 任何一个基础架构都是的。复杂的企业基础架构要能够极大地得益于将其

n

IT基础架构和应用程序部署流程以代码来建模。

n

3. 的工具和点子来源于活跃的用户社区。光靠一个人的力量是不够的。

n


n

图1-1:Chef架构

n

在过去的几年里,Chef在活跃社区的支持下发展成为一个强大的、与众不同的配置管理

n

工具,相比其他产品,它具有以下优势。

n

超强的可伸缩性

n

类似Facebook之类的客户.pcworld./article/2084900/facebook-uses-aseasoned-

n

chef-to-keep-servers-simmering.,而仅仅

n

需要少量人力资源。

n

极其强大

n

Chef(客户端)建立在Ruby编程语言之上,当你需要的时候,可以直接使用Ruby来

n

自定义Chef。

n

learning_chef-all.indd 10 16/6/28 下午2:49

n

配置管理和Chef | 11

n

多种用法

n

你可以通过很多方式使用Chef。Chef可以在无服务器模式独立运行或配合中央服务

n

器(Chef服务器)运行。你也可以选择使用推送或拉(轮询)模式(或两种结合)

n

来做部署。

n

开放

n

Che f完全开源并拥有一个非常活跃的由系统管理员和软件工程师组成的用户社

n

区。开源Chef被用来支持Dell的产品(s.cloudave./14174/opscodechef-

n

the-secret-sauce-behind-dell-open-source-crowbar/)、Facebook(s.

n

getchef./blog/2013/02/04/facebook-likes-opscode-and-private-chef/)和云

n

服务(s.getchef./blog/2013/02/20/aws-opsworks-uses-opscode-chef-asdefault-

n

automation-engine/)。

n

透明

n

Chef分析平台强化Chef,让你可以在重要改变生效的时候收到通知来保证对标准的

n

遵循。

n

Chef独特的特性体现出强大的灵活性。你不需要为适应Chef而挣扎,而是让Chef适应你

n

和你的环境。你可以部署到云或本地基础架构,也可以在代码中描述任何资源,无论它

n

们和标准的配置有多么不同。

n

使用Chef,通常并不需要从零开始写描述基础架构的代码。许多标准的基础架构配置和

n

任务的菜谱都已经在Chef超市(ssupermarket.chef.io/)中,免费的。

n

一旦掌握Chef,就可以用它来做以下事情。

n

? 完全自动化部署,包括内部和面向用户的系统。

n

? 自动化伸缩基础架构。

n

? 让基础架构自我修复。

n

举例而言,Tom Hallet使用Chef创建了一个叫SoloWizard的工具来自动化其Mac OS X开

n

发机器的部署。SoloWizard基于Pivotal Labs所做的促进开发者和终用户使用自动化的

n

工作。正像图1-2中所示,SoloWizard允许你一键创建一个新的开发环境。你甚至可以通

n

过在一个简单的网站上做选择来个性化输出的脚本。此工具在SoloWizard网站(

n

.solowizard.)可以找到。

n


n

图1-2:SoloWizard自动化创建Mac OS X开发工作站

n

接下来要做什么

n

在本书的前半部分,我们会讲解Chef客户端的基本组件,展示如何利用代码使基础架构

n

可以进行版本控制和使其可以重复。我们会讲到以下三个主题:

n

? Test Kitchen

n

? Chef Solo/Chef Local

n

? Cookbooks(菜谱)

n

learning_chef-all.indd 12 16/6/28 下午2:49

n

配置管理和Chef | 13

n

我们也会利用大量动手实例来让你掌握和巩固Chef基础架构编程的基本要素。

n

在本书的后半部分,我们会介绍Chef服务器的基本要素,展示如何在基础架构复杂度和

n

范围扩展时随之扩展你的配置管理能力:

n

? 物理数据中心的Chef服务器

n

? Chef Zero

n

? Roles(角色)、Data Bags(数据包)和Environments(环境)

n

? Knife

n

本书覆盖的工具都是免费和开源的。一些付费的工具会被提及,但对学习Chef而言并不

n

是不可缺少的。

n

下一章从Chef开发包安装过程来开始Chef旅程,好让你可以从一开始就动手实践,写

n

Chef代码。

n


序言