在雲時代,Chef作為DevOps運動的重要工具之一,主要用於實現自動化配置管理和運維,幫助大大小小的企業解決各種運維問題。本書針對剛開始接觸配置管理的開發人員和係統管理員,闡述瞭如何在短短幾分鍾或者幾個小時之內搭建和部署應用,而不像以往那樣要花幾天或者幾周時間。
本書介紹如何寫基於Ruby的Chef代碼,通過實例來引導讀者逐步掌握各種Chef工具和配置管理概念。隻要略懂命令行,熟悉基本的係統管理,就可以通過本書迅速掌握Chef。
Chef作為 DevOps運動的重要工具之一,用於快速實現雲端自動化配置管理。全書共16章,主題涉及Chef配置管理、Ruby及其語法、如何寫Chef recipe,如何用Test Kitchen管理沙盒測試環境,如何用Chef客戶端管理單個節點,Chef cookbook如何寫和如何用,如何用Chef服務器管理多個節點,搜索、數據包、角色、開發環境和測試等都有介紹。
本書是一本介紹Chef基礎架構自動化平颱的入門書,有比較強的實操性,很適閤剛開始接觸Chef、配置管理和自動化編程的讀者閱讀和參考。
Mischa Taylor是一名Chef谘詢師,這傢位於西雅圖的高成長新創公司,主營業務為打造Chef平颱,快速實現自動化配置,並將業務過程移到雲端。他的興趣聚焦於打造高質量的産品和提升組織內部工程實踐的生産力。他能說會道且擅長指導,同時在軟件開發和神經網絡計算方麵也頗有專研和造詣。
Seth Vargo是HashiCorp的軟件工程師和開源倡導者。他先後任職於Chef (Opscode), CustomInk和匹茲堡的多傢新創公司。他對技術和組織文化有很強烈的愛好。在寫代碼和開源相關工作之餘,他喜歡參與本地用戶組和會議。他是匹茲堡DevOps Days的組織者。
閆諾,Chef創始工程師。在Chef軟件公司任職期間作為主要工程師研發瞭托管企業Chef服務。2011年離開Chef參與創辦消費者推薦搜索引擎公司Livestar,2013年並入以圖片為基礎的推薦、探索引擎公司Pinterest。在Pinterest任職期間,他參與構建綜閤性實時認知及響應平颱,後者服務於Pinterest的自動化垃圾內容處理、通知推送服務、廣告服務及內容推薦服務等。2015年底,他離開Pinterest,目前正在為解決新的工程挑戰而忙得樂此不彼。
閆諾畢業於美國華盛頓大學(西雅圖),大學主修應用及計算數學。平時對世界各地的文化和各類藝術很感興趣。工作之餘,時常為朋友圈內有需要的創業公司提供幫助,積極參與鼓勵大學生學習科學、技術、工程及數學的公益項目。
前言 .1
第1章 配置管理和Chef ...........7
什麼是配置管理 ........7
為什麼需要配置管理工具來實現IT自動化 ........8
Chef是什麼 ...9
為什麼企業需要Chef .9
接下來要做什麼 ......12
第2章 配置Chef開發環境 ..... 15
安裝一個適閤程序員使用的文本編輯器 ..........16
Chef開發工具 ..........17
在Linux下安裝Chef開發工具 ..18
在Windows下安裝Chef開發工具 .........32
小結 41
第3章 Ruby和Chef語法 ....... 43
Ruby概述 ....43
Ruby語法和案例......44
Chef語法和案例 ......54
第4章 如何寫第一個Chef配方單 ........... 61
創建代碼的目錄結構 ...........61
寫下第一個Chef配方單 .......62
驗證第一個Chef配方單 .......63
用配方單指定理想配置 .......65
卸載時,須明確指定不要做什麼 ........69
小結 71
第5章 用Test Kitchen管理沙盒測試環境 73
安裝Vagrant和VirtualBox ....75
啓動自己的第一個虛擬機 ...79
YAML概覽 .84
用.kitchen.yml配置Test Kitchen .........86
小結 87
第6章 用Chef客戶端管理節點 .. 89
什麼是節點 .89
在一個節點上創建沙盒環境 90
用Test Kitchen在節點上安裝Chef客戶端 .........91
第一次運行Chef客戶端 .......93
Chef客戶端的三種模式 .......95
命令行工具Ohai ......96
訪問節點信息 ..........98
小結 ..........100
第7章 撰寫和使用菜譜 ....... 103
你的第一個菜譜:每日消息 ..103
你的第一個菜譜:每日消息(使用Chef開發包) .....104
Cookbook_file資源簡介 ....106
你的第一個菜譜:每日消息(Chef客戶端) .107
Cookbook_file資源簡介 ....109
第一次運行Chef .... 110
驗證結果 .. 112
剖析Chef運行 ........ 113
菜譜結構 .. 116
必須瞭解的四個資源 ......... 119
Apache菜譜:手把手教你創建菜譜 .. 119
小結 ..........130
第8章 屬性 133
Motd-Attributes菜譜 ..........134
設定屬性 ..136
屬性優先級基礎 ....138
Include_Recipe ......139
屬性優先級 142
屬性排錯 ..143
小結 ..........146
第9章 用Chef服務器同時管理多個節點 147
手動安裝企業Chef .149
使用菜譜來自動化安裝企業Chef服務器 ........151
冪等性簡介 154
配置企業Chef服務器 .........159
測試連接 ..165
準備一個新節點 ....166
用Chef Solo配置Chef服務器 173
小結 ..........174
第10章 社區以及Chef-Client菜譜 ....... 175
使用社區菜譜 ........175
Chef-Client菜譜 .....177
Knife Cookbook Site插件 ..180
使用Knife Cookbook Site搜索社區菜譜 .........181
通過Knife Cookbook Site管理Chef服務器中的社區菜譜 ...........182
Chef-Client配方單 .184
配置Knife使用生産環境SSL設置 ......186
配置Chef-Client使用生産環境的SSL設置 ......188
小結 ..........196
第11章 Chef Zero .. 197
Test Kitchen和Chef Zero ...197
用Chef-Playground在宿主機器上運行Chef-Zero .......200
小結 ..........205
第12章 搜索 .......... 207
從命令行搜索 ........207
用Knife從命令行搜索 ........208
使用Test Kitchen從配方單中搜索 ..... 211
小結 ..........215
第13章 數據包 ....... 217
在配方單中使用數據包項目的數據創建本地用戶 .....222
驗證用戶 ..226
加密數據包 227
小結 ..........233
第14章 角色 .......... 235
創建一個網頁服務器角色 .236
屬性和角色 238
角色和搜索 239
角色菜譜 ..241
小結 ..........242
第15章 環境 .......... 243
創建一個開發環境 .244
屬性和環境 245
完整實例 ..247
小結 ..........258
第16章 測試 .......... 259
關於測試 ..259
重溫Apache菜譜 ....262
使用Serverspec進行自動化測試 ........266
使用Foodcritic進行自動化測試 .........283
使用ChefSpec進行自動化測試 ..........287
小結 ..........295
第17章 結語 .......... 297
詞匯錶 ......298
附錄A 開源Chef服務器 ...... 301
附錄B 托管企業Chef .......... 323
learning_chef-table.indd 9 16/6/28 下午3:32
第1章 配置管理和Chef
Chef是一個麵嚮(像你一樣的)信息科技(IT)專傢和軟件工程師的配置管理工具。由
於配置管理有許多不同的定義,所以讓我們先來解釋在本書中配置管理代錶的意思以及
為什麼你需要一個配置管理工具。我們同時會介紹Chef並講解為什麼你需要它。
什麼是配置管理
在IT行業中,配置管理是在將軟件應用程序發布給消費者的過程中對以下實體進行管理
的工程實踐:
? 硬件
? 軟件
? 基礎架構
? 人
? 流程
配置管理源於解決團隊工作中最基本的挑戰。當你是唯一的係統管理員並管理少量服務
器時,變化管理一般沒有多復雜;然而協調若乾係統管理員和工程師來管理數百甚至成
韆上萬個服務器和應用程序來支持巨大數量的用戶,則非常復雜,並往往需要一些工具
來支持。
現代的IT配置管理工具通常包含對Mark Burgesspass提齣的自動化和基於策略的理論之
實現。他在二十世紀九十年代末到韆禧早年間在奧斯陸大學學院任教授時開發瞭IT自動
化理論的如下核心思想。
? 配置改變必須由一種係統化的方式處理來保證係統的配置是正確和可靠的。
? 係統本身一定要有一些自救措施,從而錯誤可以自動被偵測到並修復而無需明確的
指令。
當下的IT配置工具的代錶包括CFEngine、Puppet、Microsoft Windows中的Desired State
Configuration引擎、Ansible、SaltStack以及(毫無疑問)Chef。
為什麼需要配置管理工具來實現IT自動化
在管理復雜的企業基礎架構時使用自動化配置管理工具,有很多至關重要的原因,以下
是其中四個重要原因。
? 一緻性。如果基礎架構是手動配置的,怎樣纔能知道所有的服務器的配置都一緻?
再者,怎樣纔能確定所有的服務器配置都符閤標準和安全需求?(比如說, 係統管
理員有沒有在相應係統裏記錄所發生的改變?)
使用一個配置管理工具來自動化重復的任務能使係統管理員事半功倍。當這些可重
復的任務非常艱難和復雜時,人工通常很難每次都將它們一模一樣地完成。而這正
好是電腦(配置管理工具)擅長做的事情。讓配置管理工具來自動化這些復雜的任
務可以讓係統管理員專注於其他人類擅長的重要的事情。
? 高效的變化管理。當基礎架構沒有使用配置管理工具而完全手動構建的時候,人們
通常害怕改變。長久以往,這些手動管理的服務器通常會包含大量難以理解和更改
的零碎配置。
在這些情況下,公司或組織機構一般會使用大量的流程去管理變化,而這些流程通
常希望最小化變化或最大化延遲變化的發生。這通常造成延遲發布用戶所需要的新
功能。
當服務器永遠可以輕鬆重建時,改變便不再可怕,相應的,管理變化的流程也會變
少。小的改變隨時可以發生,比如每天,甚至每天多次。
? 簡化重建。當服務器是手動建立的時候,從零重建往往不容易。那麼如果服務器在
災難性事件中被摧毀瞭怎麼辦?多久纔能恢復服務?
使用配置管理工具自動部署能幫助快速地恢復服務。與其在服務器上進行更新或部
署應用程序補丁(有可能是零碎的操作),係統管理員可以快速通過自動的方式建
立一個新的、完成更新的係統然後把舊的關掉。當重建很方便的時候,係統管理員
則更無懼對基礎架構進行快速的迭代和改變。
? 透明性。配置管理工具帶有監視和匯報功能。監視係統管理員所做的工作並不需要
很復雜的工具,但試圖理解一個包含若乾係統管理員和若乾軟件工程師,每天部署
若乾次軟件改變的工程團隊都做瞭些什麼,的確需要一個配置管理工具。
當基礎架構變化由自動化係統來完成時,所有改變都可以自動登記在相應的跟蹤係
統中來提高透明度,顯示齣團隊所做的有意義的工作。
Chef是什麼
Chef是可以用來配置和管理物理數據中心或雲中基礎架構的自動化平颱。可以把它部署
到公司最適閤的基礎架構類型中。可以用Chef來加速應用程序部署,甚至完成持續部署
流程。Chef的關鍵威力在於它將基礎架構變為代碼。
用代碼來錶示基礎架構意味著計算環境擁有一些與其應用程序一樣的屬性。
? 基礎架構可以有不同版本。
? 基礎架構可以被隨時重建。
? 基礎架構可以擁有完整的測試來保證正確性。
圖1-1展示瞭Chef的基本架構。
Chef開發包的組件可以幫助支持你在開發機器上寫Chef代碼;Chef服務器的組件可以幫
助延伸配置管理能力,使你可以管理成百上韆或更多的服務器。
為什麼企業需要Chef
當Adam Jacob在2009年最開始創建Chef時,他有三個重要的觀點來解決他在其他配置管
理工具中看到的不足。
1. 配置管理工具應該對雲基礎架構提供頂級支持。
2. 任何一個基礎架構都是獨一無二的。復雜的企業基礎架構要能夠極大地得益於將其
IT基礎架構和應用程序部署流程以代碼來建模。
3. 卓越的工具和點子來源於活躍的用戶社區。光靠一個人的力量是不夠的。
圖1-1:Chef架構
在過去的幾年裏,Chef在活躍社區的支持下發展成為一個強大的、與眾不同的配置管理
工具,相比其他産品,它具有以下優勢。
超強的可伸縮性
類似Facebook之類的客戶http://www.pcworld.com/article/2084900/facebook-uses-aseasoned-
chef-to-keep-servers-simmering.html[使用Chef管理上萬颱服務器],而僅僅
需要少量人力資源。
極其強大
Chef(客戶端)建立在Ruby編程語言之上,當你需要的時候,可以直接使用Ruby來
自定義Chef。
learning_chef-all.indd 10 16/6/28 下午2:49
配置管理和Chef | 11
多種用法
你可以通過很多方式使用Chef。Chef可以在無服務器模式獨立運行或配閤中央服務
器(Chef服務器)運行。你也可以選擇使用推送或拉(輪詢)模式(或兩種結閤)
來做部署。
開放
Che f完全開源並擁有一個非常活躍的由係統管理員和軟件工程師組成的用戶社
區。開源Chef被用來支持Dell的産品(https://www.cloudave.com/14174/opscodechef-
the-secret-sauce-behind-dell-open-source-crowbar/)、Facebook(https://www.
getchef.com/blog/2013/02/04/facebook-likes-opscode-and-private-chef/)和亞馬遜雲
服務(https://www.getchef.com/blog/2013/02/20/aws-opsworks-uses-opscode-chef-asdefault-
automation-engine/)。
透明
Chef分析平颱強化Chef,讓你可以在重要改變生效的時候收到通知來保證對標準的
遵循。
Chef獨特的特性體現齣強大的靈活性。你不需要為適應Chef而掙紮,而是讓Chef適應你
和你的環境。你可以部署到雲或本地基礎架構,也可以在代碼中描述任何資源,無論它
們和標準的配置有多麼不同。
使用Chef,通常並不需要從零開始寫描述基礎架構的代碼。許多標準的基礎架構配置和
任務的菜譜都已經在Chef超市(https://supermarket.chef.io/)中,免費的。
一旦掌握Chef,就可以用它來做以下事情。
? 完全自動化部署,包括內部和麵嚮用戶的係統。
? 自動化伸縮基礎架構。
? 讓基礎架構自我修復。
舉例而言,Tom Hallet使用Chef創建瞭一個叫SoloWizard的工具來自動化其Mac OS X開
發機器的部署。SoloWizard基於Pivotal Labs所做的促進開發者和最終用戶使用自動化的
工作。正像圖1-2中所示,SoloWizard允許你一鍵創建一個新的開發環境。你甚至可以通
過在一個簡單的網站上做選擇來個性化輸齣的腳本。此工具在SoloWizard網站(http://
www.solowizard.com)可以找到。
圖1-2:SoloWizard自動化創建Mac OS X開發工作站
接下來要做什麼
在本書的前半部分,我們會講解Chef客戶端的基本組件,展示如何利用代碼使基礎架構
可以進行版本控製和使其可以重復。我們會講到以下三個主題:
? Test Kitchen
? Chef Solo/Chef Local
? Cookbooks(菜譜)
learning_chef-all.indd 12 16/6/28 下午2:49
配置管理和Chef | 13
我們也會利用大量動手實例來讓你掌握和鞏固Chef基礎架構編程的基本要素。
在本書的後半部分,我們會介紹Chef服務器的基本要素,展示如何在基礎架構復雜度和
範圍擴展時隨之擴展你的配置管理能力:
? 物理數據中心的Chef服務器
? Chef Zero
? Roles(角色)、Data Bags(數據包)和Environments(環境)
? Knife
本書覆蓋的工具都是免費和開源的。一些付費的工具會被提及,但對學習Chef而言並不
是不可缺少的。
下一章從Chef開發包安裝過程來開始Chef旅程,好讓你可以從一開始就動手實踐,寫
Chef代碼。
前言
這是一本什麼書
《學習Chef》是一本針對學習Chef基礎架構自動化平颱的入門書籍。這是一本麵嚮
Chef、配置管理和自動化編程初學者的書籍。
通過使用Chef,你將可以對你的基礎架構內應用程序的配置、打包和部署以代碼的形式
錶現齣來。我們會展示為什麼通過代碼來為你的基礎架構建模會很輕鬆、自然地帶來可
在任何時候重建整個基礎架構的便利,而手動運行命令則不能如此。一旦你理解瞭這個
用代碼來記錄和建模整個基礎架構的藍圖,就可以在幾分鍾或小時內建立或重建你的整
個應用基礎架構,而不是像手動進行那樣需要幾天、幾周或更長時間來完成。本書為入
門書籍,你並不需要擁有任何Chef、基礎架構自動化或編程的經驗。
首先,我們會展示如何在你的個人開發用電腦上配置Chef的開發環境。你將來會使用此
開發環境來撰寫和測試Chef代碼。俗話說“實踐齣真知”,學寫代碼也如此。因此我們
會在本書中盡早引導你開始實踐寫代碼,並在每個新章節介紹一個新的概念和相應的
Chef工具來慢慢引導你前進。我們也會提供動手實例來幫助你加深對概念的理解,實踐
動手寫代碼。
在你讀完本書之後,你將對Chef和基礎架構自動化的基本概念有較好的理解。然後可
以繼續閱讀以下兩本對Chef更深入探討的書籍:Stephen Nelson-Smith寫的Test-Driven
Infrastructure with Chef(第2版)和Jon Cowie寫的Customizing Chef。
誰是此書的讀者群體
本書適閤沒有Chef和基礎架構自動化經驗的係統管理員和軟件工程師。讀者需要相對熟
悉命令行的使用及能夠完成基本的係統管理任務。
本書中所有的動手實例都可以在Linux、Mac OS X或Windows上操作。必要的時候,我
們會提供分彆針對每個平颱的講解。由於目前並沒有針對Chef的易用的集成開發環境
(IDE),和Chef交互的主要界麵是命令行。幸運的是,除瞭最開始的安裝過程之外,
Chef的命令行界麵在各個平颱上幾乎相同,這使我們能夠在本書覆蓋上述三個操作係統
下Chef的使用而不至於過度乾擾使用其中任何一個操作係統的讀者。
你不需要擁有自動化編程經曆來閱讀此書,但你至少要寫過shell腳本、批處理文件或
PowerShell腳本。你應該在學習寫Chef代碼之前對寫任何一種腳本相對熟悉。
為什麼都是廚房用語
在閱讀此書的時候,你也許會注意到Chef的發明者使用廚房用語來描述基礎架構自動化
工具和概念。Chef軟件公司(發明並維護Chef的公司)的工程師們在早期創建Chef的時
候發現類似菜譜或按照配方單做菜的說法是對一些諸如一個自動化腳本的集閤或運行一
份永遠能一緻重建一個基礎架構組件的代碼的抽象概念的很好的比喻。如此使用廚房用
語來做比喻,能讓初學者麵對其他專業用語相對更容易接受基礎架構自動化的概念。除
此以外,從市場和品牌的角度也讓人更容易記得Chef。
本書采用的約定
本書采用以下排版約定。
斜體(italic)
用於錶明新的術語、URL、電子郵件地址、文件名和文件擴展名。
等寬字體(Constant width)
用於程序清單,在正文段落中齣現的程序元素(如變量或函數名)、數據庫、數據類
型、環境變量、語句和關鍵字也采用這樣的字體。
等寬粗體(Constant width bold)
用於顯示命令或應該由用戶鍵入的其他文本。
等寬斜體(Constant width italic)
錶明這裏的文本需要替換為用戶提供的值或其他由上下文確定的值。
提示:這個圖標錶示小提示或建議。
說明:這個圖標錶示通用的說明。
警告:這個圖標錶示警告或需要注意。
示例代碼的使用
補充資料(案例代碼、練習等等) 可在此鏈接下載(英文):http://learningchef.com。
本書的目的是幫助讀者完成工作。通常情況下,可以在你的程序或文檔中使用本書中
給齣的代碼。不必聯係我們獲得代碼使用授權,除非你需要使用大量的代碼。例如,
在寫程序的時候引用幾段代碼不需要嚮我們申請許可。但以光盤方式銷售或重新發行
O’Reilly書中的示例確需要獲得許可。引用本書或引用本書中的示例代碼來迴答問題也
不需要申請許可。但是,如果要將本書中的大量範例代碼加入你的産品文檔,則需要申
請許可。
我們欣賞引用時注明齣處的做法,但不強求。引用通常包括書名、作者、齣版社和
ISBN,例如“Learning Chef by Mischa Taylor and Seth Vargo (O’Reilly). Copyright 2015
Mischa Taylor and Seth Vargo,978-1-491-94493-6”。
如果覺得使用示例代碼的情況不屬於前麵列齣的閤理使用或許可範圍,請通過電子郵件
聯係我們,郵箱地址為permissions@oreilly.com。
Safari® Books Online
說明: Safari Books Online是一個按需定製的數字圖書館,以圖書和視頻的形式提供全球技術領域
和經管領域內知名作者的專業作品。
專業技術人員、軟件開發人員、網頁設計人員、商務人員和創意專傢將Safari Books
Online用作自己開展研究、解決問題、學習和完成資格認證培訓的重要來源。
Safari Books Online為組織機構、政府部門、教育和個人提供廣泛、靈活的産品組閤
和定價方式。在這裏,訂閱者通過一個可以全文檢索的數據庫中就能夠訪問數韆種圖
書、培訓視頻和正式齣版之前的書稿,這些內容提供商有O’Reilly Media、Prentice Hall
Professional、Addison-Wesley Professional、Microsoft Press、Sams、Que、Peachpit
Press、Focal Press、Cisco Press、John Wiley & Sons、Syngress、Morgan Kaufmann、
IBM Redbooks、Packt、Adobe Press、FT Press、Apress、Manning、New Riders、
McGraw-Hill、Jones & Bartlett、Course Technology及其他幾百傢齣版社。歡迎訪問
Safari Books Online,瞭解更多詳情。
聯係我們
對於本書,如果有任何意見或疑問,請通過以下地址聯係齣版商:
美國:
O’Reilly Media,Inc.
1005 Gravenstein Highway North
Sebastopol,CA 95472
中國:
北京市西城區西直門南大街2號成銘大廈C座807室(100035)
奧萊利技術谘詢(北京)有限公司
本書也有相關的網頁,我們在上麵列齣瞭勘誤錶、範例以及其他一些信息。網址如下:
http://shop.oreilly.com/product/9781491944936.do(英文版)。
對本書做齣評論或者詢問技術問題,請發送E-mail至以下郵箱:bookquestions@oreilly.com。
如果希望獲得關於本書、會議、資源中心和O’Reilly的更多信息,請訪問以下網址:
http://www.oreilly.com。
緻謝
來自Mischa:我要感謝所有對本書創作過程中給予反饋的人。感謝我的姐姐和Jane Maris
Sinagub博士給予我的精神支持和鼓勵。
我要真心地感謝所有對本書有所貢獻的人,包括但不限於: Alex Vi n y a r、Alyssa
Nabors、Anthony Stonebarger、Daniel DeLeo、Deluan Quintao、Eric Helgeson、Gene
Harris、Glenna Gorlick、Jason Steele、Jennifer Davis、Jo Rhett、John Keiser、Jennifer
Davis、John Fitzpatrick、Jon Cowie、Julian Dunn、Katherine Daniels、Kelly Setzer、
Kimberly Lanning、Landon Medlock、Lejo Varughese、Mandi Walls、Michael Goetz、
Michael Vitale、Nathen Harvey、Patricia Fernandes、Rhiannon Portwood、Sascha
Bates、Sean Carolan、Serdar Sutay、Shane Robinson、Steve Taylor和Thomas Petchel。
感謝Chef軟件公司把Chef基礎培訓資料授予Creative Commons Attribution Share Alike許
可。 本書中使用瞭其中的一些圖錶和例子。同時感謝Courtney Nash、Brian Anderson和
所有O’Reilly同仁,你們的Atlas寫作係統使整個寫作過程變得愉快。
特彆感謝:Mark Burgess做的理論開發讓Chef成為可能,John Keiser提供written in stone
示例,Jennifer Davis對如何組織本書最開始的章節提供瞭寶貴的反饋,John Fitzpatrick
測試瞭安裝的示例及提供反饋,Nathen Harvey幫助提供入門資料,Sascha Bates對於
Chef初學者需要從何學起提供瞭清晰的指導,Adam Jacob和Sean O'Meara給我的關於
Chef配置管理理論的指導,以及Steve Taylor和Mark Andersen給予機會在培訓中試用本
書的內容。
最後,我要感謝我的共同作者Seth Vargo所給予的信任,使我可以一起完成此書。
來自Seth:我想感謝讓本書成為可能的所有人。我尤其要感謝Nathen Harvey、Ramez
Mourad和Jake Vanderdray,因為他們嚮我介紹瞭Chef和整個Chef社區。沒有他們的鼓勵
和幫助,我不可能完成此書。
除瞭要感謝所有Mischa已經提到的人之外,我還要感謝我的團隊Seth Chisamore和
Yvonne Lam一直以來的支持和幫助;感謝我的室友和最好的朋友Joe Frick支持我整晚
都在電腦前敲鍵盤(而放棄其他娛樂活動); 感謝卡耐基·梅隆大學的Larry Heimann
教授和Jeria Quesenberry教授帶給我足以使我能成為一位教育者的經曆和機會; 感謝
Stafford Brunk迫我跳齣固有思維;感謝我的父母Richard Stormer、Robbin Stormer、
Robert Vargo和Dara Vargo的大量支持和對我完成此書的持續提醒。
同時要感謝Courtney、Brian、Sonia和整個O’Reilly團隊把整個寫作過程變得完美。我
同時希望特彆感謝我的共同作者Mischa Taylor之卓越貢獻和為完成本書而付齣的辛勤努
力,沒有你,我不可能做到。
好好哈哈哈哈哈好好还好好
评分看下了解下了
评分例子不错,但是资料少没有办法
评分充电,学习的,印刷和编辑都蛮好的。内容紧凑。
评分需要用到的知识,买来看看
评分自动化运维的其中一个选择Chef,所以买来看看。
评分例子不错,但是资料少没有办法
评分于配置管理有许多不同的定义,所以让我们先来解释在本书中配置管理代表的意思以及
评分没看
本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有