《Puppet實戰手冊》 導讀

2021-09-23 16:13:02 字數 2614 閱讀 7782

前言 **

it運維領域正在進行一場革命。新一代的配置管理工具可以在幾秒內完成大量伺服器的構建(配置)和整個網路自動化。為了充分利用雲計算的強大功能,並且建立可靠、可擴充套件、安全、高效能的系統,擁有puppet這樣的工具是必不可少的。

本書不僅講解了puppet的基礎知識,而且深入**了puppet的所有強大功能,詳細展示了如何解決現實中的各種問題和應用場景。每一步操作都完整地展示了需要錄入的命令,並且每乙個技巧都有完整的**示例。

本書帶領讀者從puppet的基本知識開始,完整、專業地講解puppet的最新和最先進的功能、社群的最佳實踐、優秀的配置清單(manifest)的編寫、擴充套件性和效能,以及通過新增定製的提供者(provider)和資源(resource)來擴充套件puppet的方法。

本書還包含來自生產系統環境的真實示例,以及一些世界上最大的puppet使用者群所使用的技巧。書中會展示利用puppet來做事的不同方法,並指出這些方法的優點和缺點。

本書的組織結構使讀者在任何時候都可以深入到某個技巧進行嘗試,而無須通讀全書。每個主題都有提供更多資訊的鏈結和參考閱讀,讀者可以根據自己的需要進一步自己探索。無論讀者的pupept經驗水平如何,從簡單的工作流程提示到更高階的高效能puppet架構,這裡都有合適的內容。

作為一名devops顧問,我極力去編寫這種對我日常工作有幫助的書。我希望它能激勵每一名讀者去學習、去嘗試,並將自己最新的創意快速運用到這個令人激動和快速發展的領域中。

第1章展示了第一次安裝puppet的方法,包括安裝puppet的指令、建立第乙個清單、配合puppet使用版本控制、基於git構建分布式puppet架構、編寫指令碼讓puppet清單生效、自動執行puppet、用rake來引導機器和部署變更,以及使用git鉤子(hook)實現清單的自動語法檢查。

第2章涵蓋了編寫優秀的puppet**的方方面面,包括如何使用puppet社群風格、通過puppet-lint檢查清單、用模組的方式組織清單、採用標準的命名和風格規範、使用內聯模板、使用選擇器和case語句、字串操作,以及採用迭代器、條件語句和正規表示式。

第3章深入**puppet,提高**質量和可用性的特殊功能細節,包括陣列和定義、根據依賴關係排序資源、繼承節點和類、傳遞引數給類、覆蓋引數、從環境變數中讀取資訊、編寫可復用的清單、使用標籤(tag)和執行階段。

第4章處理一些系統管理員最常見的任務,包括管理配置檔案、使用augeas、從**片段和模板生成檔案、管理第三方軟體倉庫、使用gnupg加密puppet中的機密資料,以及從源**構建軟體包。

第5章闡釋了什麼是虛擬資源,以及它們如何幫助使用者管理不同機器上的使用者和軟體包的不同組合,並展示了如何使用puppet的資源排程和審計功能。

第6章專注於可能需要puppet管理的某些特定的應用程式,包括apache和nginx、mysql及ruby的完整技巧。

第7章通過vagrant和ec2例項擴充套件puppet的能力(在雲上的虛擬機器和在桌面系統上)來管理虛擬機器。此外,還展示了如何用haproxy設定負載均衡,如何利用iptables設定防火牆,如何利用nfs設定網路檔案系統,如何利用heartbeat設定高可用服務。

第8章著眼於puppet周邊已經成熟的工具,包括hiera、facter和rspec-puppet,還介紹了一些高階主題,包括編寫自己的資源型別、提供者和外部節點分類器(enc)。

第9章涵蓋了puppet報告自己做了些什麼的資訊和系統的狀態的方法,包含報告、日誌、除錯訊息、依賴關係圖、測試和空執行(dry-running)清單,以及puppet常見錯誤訊息的排查指南。

**[第1章 puppet基礎設施

1.1 簡介](

1.2 安裝puppet

1.3 建立乙個配置清單

1.4 利用git管理配置清單

1.5 建立去中心化puppet架構

1.7 使用cron執行puppet

1.8 利用rake部署變更

1.9 利用rake引導puppet執行

1.10 利用git鉤子自動進行語法檢查

**[第2章 puppet語言和風格

2.1 簡介](

2.2 使用社群推薦的puppet風格

2.3 使用puppet-lint檢查配置清單

2.4 使用模組

2.5 使用標準的命名約定

2.6 使用內聯模板

2.7 陣列中多個元素的遍歷

2.8 編寫功能強大的條件語句

2.9 在if語句中使用正規表示式

2.10 使用選擇器和case語句

2.11 使用in運算子

2.12 使用正規表示式進行替換

《Xcode實戰開發》 導讀

1.2 參與計畫 1.3 更多素材 1.4 小結 第 2 章 探索xcode環境 2.1 得到乙個視窗 2.2 建立專案 2.3 工作區視窗 2.4 導航器區域 2.5 跳轉欄 2.6 編輯器區域 2.7 工具區域 2.8 除錯區域 2.9 活動檢視器 2.10 標籤式編碼 2.11 組織器視窗 2...

《HBase實戰》一導讀

hbase實戰 2008年秋季我開始和hbase結緣,當時它還是乙個新生專案,一年前剛剛發布。早期版本出來時,hbase表現很不錯,但是也不是沒有令人尷尬的缺陷。hbase專案當時有近10個軟體commiffer,作為乙個apache子專案還算不錯。接下來是nosql宣傳的高潮。當時專有名詞nosq...

《演算法技術手冊》一導讀

1.1 理解問題 1.2 簡單解法 1.3 高明做法 1.3.1 貪心演算法 1.3.2 分治演算法 1.3.3 並行演算法 1.3.4 近似演算法 1.3.5 融會貫通 1.4 總結 1.5 參考文獻 第2章 演算法的數學原理 2.1 問題樣本的規模 2.2 函式的增長率 2.3 最好 最壞和平均...