精通Puppet配置管理工具(第2版)( 簡體 字) | |
作者:[美] Spencer Krum | 類別:1. -> 程式設計 -> 綜合 2. -> 程式設計 -> 雲計算 |
出版社:人民郵電出版社 | 3dWoo書號: 39583 詢問書籍請說出此書號! 有庫存 NT售價: 345 元 |
出版日:10/1/2014 | |
頁數:261 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115368072 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章 Puppet初體驗 1
1.1 什么是Puppet 1 1.1.1 部署層 2 1.1.2 配置語言與資源抽象層 3 1.1.3 事務層 5 1.2 選擇正確的版本 6 1.3 安裝Puppet 6 1.3.1 Red Hat Enterprise Linux和Fedora 7 1.3.2 Debian和Ubuntu 8 1.3.3 OpenIndiana 9 1.3.4 Solaris 10和Solaris 11 9 1.3.5 基于源代碼安裝 9 1.3.6 Microsoft Windows 10 1.3.7 Mac 12 1.3.8 其他平臺 15 1.4 配置Puppet 16 1.4.1 site.pp文件 17 1.4.2 防火墻配置 17 1.4.3 啟動Puppet master 17 1.5 連接客戶端 19 1.6 創建第一個配置項 21 1.7 創建一個模塊 23 1.7.1 模塊結構 23 1.7.2 init.pp文件 23 1.7.3 應用這個配置項 26 1.8 小結 27 1.9 相關資源 28 第2章 用Puppet構建主機 29 2.1 開始 30 2.1.1 安裝Puppet 30 2.1.2 在Kickstart中集成和啟動Puppet 30 2.2 配置節點 31 2.2.1 相似主機的處理方法 31 2.2.2 使用外部配置 32 2.2.3 默認節點 32 2.2.4 節點繼承 32 2.2.5 變量域 33 2.2.6 Puppet Style Guide 36 2.3 用模塊變魔術 36 2.3.1 將模塊代碼納入版本控制 38 2.3.2 創建模塊來管理SSH服務 40 2.3.3 創建模塊來管理Postfix 49 2.3.4 用mysql模塊管理MySQL 52 2.3.5 管理Apache與網站 56 2.3.6 用Puppet模塊管理Puppet 60 2.4 小結 64 2.5 相關資源 64 第3章 開發和部署Puppet 65 3.1 puppet apply命令和操作模式 65 3.1.1 用Puppet做屏幕輸出 65 3.1.2 用Notify測試Puppet行為 66 3.1.3 用puppet apply處理清單文件 66 3.2 前臺運行Puppet Master 69 3.3 用Vagrant開發Puppet 71 3.3.1 Vagrant的初始設置 72 3.3.2 啟動Vagrant沙箱 73 3.3.3 在Vagrant沙箱中配置Puppet 73 3.3.4 用Vagrant測試Puppet 74 3.3.5 銷毀和重建Vagrant沙箱 74 3.4 環境 75 3.4.1 維護模塊 76 3.4.2 外部模塊開發工具 76 3.4.3 配置Puppet環境 76 3.4.4 復制新環境 77 3.4.5 創建代碼庫副本 77 3.5 改變開發環境 78 3.6 用Puppet agent測試新環境 80 3.7 環境的分支與合并 82 3.7.1 創建一個中央代碼庫 82 3.7.2 為模塊創建裸代碼庫 82 3.7.3 作一些修改 83 3.8 通過Git分支創建動態Puppet環境 83 3.9 小結 87 3.10 相關資源 87 第4章 橫向擴展Puppet 88 4.1 確定挑戰 88 4.2 基于Apache和Passenger運行Puppet master 89 4.2.1 安裝Apache和Passenger 89 4.2.2 配置Apache和Passenger 92 4.3 測試Apache中的Puppet master 96 4.4 為多個Puppet master做負載均衡 97 4.4.1 HTTP負載均衡 97 4.4.2 Puppet master工作進程配置 98 4.4.3 詳解前端負載均衡器配置 101 4.4.4 測試負載均衡器配置 102 4.5 進一步擴展 108 4.6 其他負載均衡方案 119 4.6.1 基于DNS round robin的負載均衡 119 4.6.2 基于DNS SRV記錄的負載均衡 119 4.6.3 使用TCP負載均衡 119 4.6.4 IP任播 122 4.6.5 獨立運行模式下的Puppet 122 4.7 測試性能 125 4.8 避免驚群效應 127 4.9 小結 127 4.10 更進一步 127 4.11 相關資源 127 第5章 外部Puppet配置 129 5.1 外部節點分類 129 5.1.1 用外部節點分類腳本配置節點 130 5.1.2 Shell外部節點分類腳本 131 5.1.3 YAML中的參數化類 132 5.1.4 Ruby外部節點分類腳本 132 5.1.5 Perl外部節點分類腳本 134 5.1.6 基于數據庫的外部節點分類腳本 135 5.2 用LDAP存儲節點配置 136 5.2.1 安裝Ruby LDAP庫 136 5.2.2 配置LDAP服務器 137 5.2.3 添加Puppet模式 137 5.2.4 在Puppet中配置LDAP 138 5.3 小結 140 5.4 相關資源 140 第6章 導出和存儲配置 141 6.1 虛擬資源 141 6.1.1 聲明并實例化虛擬資源 142 6.1.2 用realize函數實例化虛擬資源 142 6.1.3 實例化多個虛擬資源 143 6.1.4 關系鏈語法 143 6.2 初識導出和存儲配置 144 6.3 使用導出資源 146 6.3.1 SSH公鑰的自動化管理 146 6.3.2 導出負載均衡器的工作進程資源 148 6.3.3 Nagios服務監控自動化 149 6.4 清除過期資源 152 6.5 小結 153 6.6 相關資源 153 第7章 Puppet控制臺工具 154 7.1 Foreman 154 7.1.1 安裝Foreman 154 7.1.2 從Puppet導入數據 158 7.1.3 連接第一個客戶端 159 7.1.4 將Foreman用作ENC 160 7.1.5 Foreman的報告特性 161 7.1.6 用Foreman搜索節點信息 162 7.2 企業版Puppet控制臺 163 7.2.1 安裝企業版Puppet 163 7.2.2 連接PE客戶端和控制臺 164 7.2.3 為節點添加類 164 7.2.4 盤點服務 165 7.2.5 實時管理 165 7.3 Puppetboard 166 7.3.1 安裝過程 166 7.3.2 控制中心的標簽頁 167 7.3.3 Puppetboard的未來 169 7.4 小結 169 7.5 相關資源 170 第8章 工具與整合 171 8.1 Puppet Forge與模塊工具 171 8.2 從Forge中搜索并安裝模塊 172 8.3 創建一個模塊 174 8.4 管理模塊間依賴 176 8.4.1 Puppet librarian 176 8.4.2 r10k 177 8.4.3 Puppet-lint 178 8.5 測試模塊 179 8.5.1 spec-puppet 179 8.5.2 TravisCI 184 8.5.3 rspec-system 185 8.6 使用Geppetto開發Puppet模塊 188 8.7 小結 191 8.8 相關資源 191 第9章 Puppet的報告系統 192 9.1 報告系統初體驗 192 9.2 配置報告系統 194 9.3 報告處理器 194 9.3.1 log 195 9.3.2 tagmail 195 9.3.3 rrdgraph 196 9.3.4 http 196 9.3.5 PuppetDB 197 9.4 自定義報告 197 9.5 其他報告工具 199 9.6 小結 199 9.7 相關資源 199 第10章 擴展Facter和Puppet 200 10.1 編寫并發布自定義fact 200 10.1.1 Puppet的自定義fact配置 200 10.1.2 編寫自定義fact 201 10.1.3 測試fact 204 10.1.4 外部fact 204 10.2 開發自定義類型、提供者和函數 205 10.2.1 配置Puppet的類型、提供者和函數 205 10.2.2 編寫Puppet類型和提供者 206 10.2.3 編寫一個解析文件類型和提供者 210 10.2.4 一個更復雜的類型和提供者 213 10.2.5 測試類型和提供者 216 10.2.6 編寫自定義函數 216 10.3 小結 219 10.4 相關資源 219 第11章 MCollective 220 11.1 背景介紹 220 11.2 安裝和配置MCollective 221 11.2.1 創建并保存證書 222 11.2.2 驗證權限 223 11.3 測試 224 11.4 安裝MCollective插件 225 11.4.1 Puppet agent插件 226 11.4.2 Facter插件 228 11.4.3 NRPE插件 228 11.5 通過元數據定位主機 230 11.6 附屬插件 231 11.7 小結 231 11.8 相關資源 232 第12章 Hiera: 分離數據與代碼 233 12.1 Hiera能做什么 233 12.2 在舊版Puppet上安裝Hiera 235 12.3 Hiera初始配置 235 12.4 Hiera命令行工具 237 12.4.1 創建一個Hiera數據文件 237 12.4.2 執行Hiera查詢 237 12.4.3 用Puppet做Hiera查詢 238 12.4.4 瀏覽層次結構數據 238 12.4.5 創建動態層次結構 239 12.4.6 在Hiera查詢中使用變量 239 12.4.7 結合Puppet和變量做Hiera查詢 240 12.4.8 層次結構組織 240 12.5 復雜數據結構 241 12.5.1 返回結構化數據 241 12.5.2 數組合并 242 12.5.3 散列合并 243 12.6 其他后端 245 12.6.1 文件后端 246 12.6.2 JSON后端 248 12.6.3 MySQL后端 249 12.6.4 gpg后端 251 12.7 Hiera函數的高級用法 254 12.8 模塊數據綁定 255 12.9 Hiera實例 257 12.9.1 create-resources()函數 258 12.9.2 將Hiera用作ENC 259 12.10 Hiera-2 260 12.11 小結 260 12.12 相關資源 261 《精通Puppet配置管理工具(第2版)》系統介紹了開源配置管理工具Puppet,并提供了幫助使用Puppet的大量資源。書中介紹了如何將Puppet應用在包括Windows在內的多種平臺上,如何使用Puppet模塊和Hiera,如何使用大量免費好用的Puppet附屬工具,如rspec-puppet、Geppetto和PuppetDB等。
《精通Puppet配置管理工具(第2版)》涵蓋了安裝、使用并利用Puppet進行開發所需要的全部知識、內部技巧和技術,非常適合系統管理員、操作人員和開發人員閱讀。 |