首 頁
手機版

ansible權威指南 李松濤 pdf版 高清掃描版

ansible權威指南是一本Ansible的權威指南,由李松濤,魏巍和甘捷三人共同編著。本書內容豐富翔實,涵蓋Ansible基礎、高級技法與定制化擴展、7個實戰(zhàn)企業(yè)案例,以及Web自動化開發(fā),解決入門簡單、深入難問題。

作者在介紹新技術應用的同時更注重讀者對技術的消化和接受程度,整個過程都秉承原理→練習→實戰(zhàn)的思路,讓讀者輕松逐步深入,不會有生硬和突兀,非常適合Ansible新手們下載學習使用。

內容介紹

《ansible權威指南》由多名運維技術專家聯(lián)袂推薦,海量運維實踐者、Ansible布道者聯(lián)合撰寫,知識全面、實踐性強。

本書共三篇,14章內容。

第一篇為基礎入門篇(第1章~5章),該篇著重介紹Ansible發(fā)展史、工作原理、基礎元素組成,Playbook入門等,是掌握Ansible高級技巧的基石。

第二篇為高級進階篇(第6~11章),該篇是本書重點和*大構成部分,著重結合企業(yè)實際需求場景,以大量的實際案例介紹Ansible的高級語法和實際應用技巧,涉及的技術點有Roles、Inventory、Jinja2、Galaxy等;結合的行業(yè)主流技術包括(但不限)Zabbix、Except、Memcache、Inotify、Logio、GitLab、Docker、LNMP、Redis、MySQL、Node.js等,并提供豐富的實戰(zhàn)案例供大家參考學習。

第三篇為Web自動化開發(fā)篇(第12~14章),該篇主要介紹如何開發(fā)Web全自動化發(fā)布界面,使用當前*流行成熟的Python語言,并結合Django前后端技術,通過Ansible celery管理后臺任務隊列。這部分內容從零基礎部分開始介紹,逐步引導上手。

一言概之,本書涵蓋Ansible基礎、高級技巧、定制化擴展,貫穿實用企業(yè)應用案例,以及Web自動化開發(fā),是系統(tǒng)學習Ansible和自動化運維的不二之選。

使用說明

1、下載并解壓,得出pdf文件

2、如果打不開本文件,請務必下載pdf閱讀器

3、安裝后,在打開解壓得出的pdf文件

4、雙擊進行閱讀

章節(jié)目錄

本書贊譽 
前言 
第一篇 基礎入門篇 
第1章Ansible基礎入門 2 
1.1Ansible是什么 2 
1.2Ansible發(fā)展史 4 
1.3為什么選擇Ansible 5 
1.4Ansible是如何工作的 6 
1.5Ansible通信發(fā)展史 8 
1.6Ansible應用場景 11 
1.7Ansible的安裝部署 12 
1.7.1PIP方式 13 
1.7.2YUM方式 13 
1.7.3Apt-get方式 14 
1.7.4源碼安裝方式 14 
1.7.5驗證安裝結果 15 
1.8Python多環(huán)境擴展管理 16 
1.8.1Pyenv的部署與使用 16 
1.8.2Virtualenv的部署與使用 18 
1.9本章小結 20 
第2章Ansible基礎元素介紹 21 
2.1Ansible目錄結構介紹 21 
2.2Ansible配置文件解析 23 
2.3Ansible命令用法詳解 25 
2.4Ansible系列命令用法詳解與使用場景介紹 28 
2.4.1ansible 28 
2.4.2ansible-galaxy 29 
2.4.3ansible-pull 31 
2.4.4ansible-doc 31 
2.4.5ansible-playbook 31 
2.4.6ansible-vault 32 
2.4.7ansible-console 32 
2.5Ansible Inventory配置及詳解 34 
2.5.1定義主機和組 34 
2.5.2定義主機變量 35 
2.5.3定義組變量 35 
2.5.4定義組嵌套及組變量 36 
2.5.5多重變量定義 36 
2.5.6其他Inventory參數(shù)列表 37 
2.6Ansible與正則 37 
2.7本章小結 39 
第3章Ansible Ad-Hoc命令集 40 
3.1Ad-Hoc使用場景 40 
3.2Ad-Hoc命令集介紹 41 
3.2.1Ad-Hoc命令集用法簡介 41 
3.2.2通過Ad-Hoc查看系統(tǒng)設置 46 
3.2.3通過Ad-Hoc研究Ansible的并發(fā)特性 47 
3.2.4通過Ad-Hoc研究Ansible的模塊使用 49 
3.3Ad-Hoc組管理和特定主機變更 52 
3.3.1Ad-Hoc組定義 52 
3.3.2Ad-Hoc配置管理:配置Proxy與Web Servers實踐 54 
3.3.3Ad-Hoc配置后端:配置NoSQL與Database Servers實踐 56 
3.3.4Ad-Hoc特定主機變更 57 
3.4Ad-Hoc用戶與組管理 58 
3.4.1Linux用戶管理 58 
3.4.2Windows用戶管理 63 
3.4.3應用層用戶管理 64 
3.5本章小結 65 
第4章Playbook快速入門 66 
4.1Playbook語法簡介 66 
4.1.1多行縮進 67 
4.1.2單行縮寫 67 
4.2Playbook案例分析 68 
4.3Playbook與Shell腳本差異對比 71 
4.4Ansible-playbook實戰(zhàn)小技巧 71 
4.4.1限定執(zhí)行范圍 71 
4.4.2用戶與權限設置 72 
4.4.3Ansible-playbook:其他選項技巧 73 
4.5實戰(zhàn)一:Ansible部署Node.js企業(yè)實踐 73 
4.5.1添加第三方源 73 
4.5.2運行Node.js進程 77 
4.5.3Node.js app服務部署總結 78 
4.6實戰(zhàn)二:Drupal基于LAMP的自動化部署 78 
4.6.1定義變量并設置Handlers 79 
4.6.2部署LAMP基礎服務 80 
4.6.3配置Apache 81 
4.6.4配置PHP 82 
4.6.5配置MySQL 83 
4.6.6安裝Drush和Composer 84 
4.6.7通過Git和Drush安裝Drupal 85 
4.6.8Drupal部署過程總結 86 
4.7實戰(zhàn)三:Ansible部署Tomcat企業(yè)實戰(zhàn) 86 
4.7.1定義變量并設置Handlers 86 
4.7.2安裝Java 87 
4.7.3安裝Tomcat 8 88 
4.7.4安裝Apache Solr 89 
4.8本章小結 91 
第5章Ansible Playbook拓展 92 
5.1Handlers 92 
5.2環(huán)境變量 93 
5.3變量 95 
5.3.1Playbook 變量 96 
5.3.2在Inventory文件中定義變量 97 
5.3.3注冊變量 98 
5.3.4使用高階變量 98 
5.3.5主機變量和組變量 100 
5.3.6Facts(收集系統(tǒng)信息) 101 
5.3.7Ansible加密模塊Vault 104 
5.3.8變量優(yōu)先級 106 
5.4if/then/when——流程控制 107 
5.4.1Jinja2 正則表達、Python 內置函數(shù)和邏輯判斷 107 
5.4.2變量注冊器register 108 
5.4.3when條件判斷 109 
5.4.4changed_when、failed_when條件判斷 110 
5.4.5ignore_errors條件判斷 111 
5.5任務間流程控制 111 
5.5.1任務委托 111 
5.5.2任務暫停 112 
5.6交互式提示 112 
5.7Tags標簽 113 
5.8Block塊 115 
5.9本章小結 116 
第二篇 高級進階篇 
第6章Playbook高級技巧進階 118 
6.1巧用 Includes 118 
6.1.1Includes使用場景 118 
6.1.2Includes用法 119 
6.1.3動態(tài) Includes 123 
6.1.4Handler Includes使用技巧 123 
6.1.5Playbooks Includes使用技巧 124 
6.2巧用Roles 124 
6.2.1構建Roles 125 
6.2.2使用Roles重構Playbooks 125 
6.2.3Roles技巧之Handlers:動態(tài)變更 129 
6.2.4Roles技巧之Files:文件傳輸 131 
6.2.5Roles技巧之Templates:模板替換 133 
6.2.6更多復雜的跨平臺Roles 135 
6.3Jinja2實現(xiàn)模板高度自定義 136 
6.3.1Jinja2 For循環(huán) 136 
6.3.2Jinja2 If條件 137 
6.3.3Jinja多值合并 138 
6.3.4Jinja default()設定 140 
6.3.5Ansible結合Jinja2生成Nginx配置 141 
6.3.6Ansible結合Jinja2生成Apache多主機配置 146 
6.3.7Jinja2動態(tài)變量配置及架構優(yōu)化 148 
6.4Ansible Galaxy 151 
6.4.1Ansible-galaxy命令用法 151 
6.4.2使用Galaxy 152 
6.5本章小結 154 
第7章Inventory文件擴展 155 
7.1Inventory文件實戰(zhàn) 155 
7.2獨立的Inventory文件 159 
7.3Inventory變量 159 
7.3.1host_vars目錄 160 
7.3.2group_vars目錄 161 
7.4動態(tài)Inventory 161 
7.5本章小結 168 
第8章Ansible插件擴展 169 
8.1Ansible 插件使用場景 169 
8.2Ansible插件類型 170 
8.3如何編寫自己的插件 171 
8.4插件案例實踐 172 
8.5本章小結 174 
第9章Ansible企業(yè)應用實戰(zhàn) 175 
9.1為新系統(tǒng)添加安全認證SSHKey 175 
9.1.1Ansible密碼認證 175 
9.1.2ssh-copy-id 176 
9.1.3Kickstart 177 
9.1.4Python Paramiko 178 
9.1.5Expect 179 
9.2企業(yè)高可用架構的Ansible應用 180 
9.2.1Playbook目錄編排 181 
9.2.2高可用架構基于Ansible的自動化實現(xiàn) 181 
9.2.3使用Includes銜接各服務配置 188 
9.3ELK日志系統(tǒng)基于Ansible的自動化實現(xiàn) 189 
9.3.1ELK Server的自動化實現(xiàn) 190 
9.3.2ELK Client的自動化實現(xiàn) 192 
9.4實時日志系統(tǒng)基于Ansible的自動化實現(xiàn) 192 
9.4.1配置概覽 192 
9.4.2架構部署 193 
9.5Zabbix基于Ansible的自動化實現(xiàn) 195 
9.5.1Zabbix Server基于Ansible的自動化實現(xiàn) 196 
9.5.2Zabbix Agent基于Ansible的自動化實現(xiàn) 199 
9.5.3Zabbix Proxy基于Ansible的自動化實現(xiàn) 201 
9.6Ansible+Git+GitLab實現(xiàn)自動化發(fā)布 202 
9.6.1架構概覽 203 
9.6.2架構部署 203 
9.7Docker的Ansible自動化應用 206 
9.7.1Docker容器入門 206 
9.7.2使用Ansible創(chuàng)建和管理容器 207 
9.7.3基于Ansible創(chuàng)建Flask的Docker容器 208 
9.7.4數(shù)據(jù)存儲容器配置 210 
9.7.5Flask容器配置 211 
9.7.6MySQL容器配置 213 
9.7.7啟動容器 215 
9.8本章小結 215 
第10章Ansible基于Windows的管理架構 217 
10.1Ansible管理機部署安裝 218 
10.2Windows系統(tǒng)預配置 219 
10.3Windows下可用模塊 224 
10.4Windows Ansible模塊使用實戰(zhàn) 224 
10.5本章小結 226 
第11章Ansible安全優(yōu)化篇 227 
11.1SSH與遠程連接簡介 227 
11.1.1Telnet 228 
11.1.2RLOGIN、RSH和RCP 228 
11.1.3SSH 228 
11.1.4SSH的發(fā)展和遠程訪問的未來 229 
11.2通信加密 230 
11.3禁止root遠程登錄 231 
11.4操作系統(tǒng)簡介 232 
11.5遵守權限最小化原則 233 
11.5.1用戶管理 233 
11.5.2文件權限管理 233 
11.6定期維護更新 234 
11.6.1手動更新 234 
11.6.2自動定時更新 234 
11.7善用Iptables防火墻 236 
11.8定期磁盤巡檢 238 
11.9系統(tǒng)登錄日志審記 238 
11.10 正確使用SELinux和AppArmor 239 
11.11 本章小結 240 
第三篇 Web自動化開發(fā)篇 
第12章Ansible模塊編寫 242 
12.1初步認識Ansible模塊 242 
12.2Ansible簡單模塊編寫 243 
12.3模塊變量添加 245 
12.4模塊狀態(tài)返回的標識及應用 246 
12.5模塊退出狀態(tài)處理 249 
12.6模塊其他功能補充 250 
12.7Ansible模塊API的調用 251 
12.8本章小結 265 
第13章開發(fā)自己的Ansible WebUI 267 
13.1搭建Django開發(fā)環(huán)境 267 
13.1.1為什么要使用Web頁面做管理 267 
13.1.2系統(tǒng)及軟件環(huán)境 268 
13.2Django配置文件詳解 269 
13.2.1Django的基礎配置及運行 269 
13.2.2Django的主配置目錄介紹 270 
13.2.3Django的app目錄介紹 271 
13.3編寫Ansible的Web接口 272 
13.4前端基礎知識介紹 278 
13.4.1HTML和CSS簡介 278 
13.4.2JavaScript簡介 279 
13.5Ansible WebUI界面開發(fā) 280 
13.5.1對接前端頁面與Ansible的Web接口 280 
13.5.2配置Web頁面?zhèn)鲄?282 
13.6本章小結 285 
第14章Web與Ansible結合的常用實例 286 
14.1Web方式管理Ansible的Inventory 286 
14.1.1重新定制Ansible的Hosts文件規(guī)則 286 
14.1.2使用ConfigParser解析并生成Ansible Hosts文件 287 
14.1.3使用數(shù)據(jù)庫的存儲數(shù)據(jù)生成的Ansible Hosts文件 290 
14.1.4通過頁面來生成Hosts文件 293 
14.2使用celery后臺執(zhí)行任務 301 
14.2.1為什么要使用celery 301 
14.2.2使用celery的前期準備 301 
14.2.3使用celery開始任務 303 
14.2.4使用celery取消正在進行的任務 305 
14.3運行YML文件并實時讀取日志 306 
14.4通過頁面上傳文件并基于Ansible分發(fā) 313 
14.5在頁面上構建YML文件注冊中心 316 
14.6操作者注冊中心界面 324 
14.7本章小結 331
收起介紹展開介紹
  • 下載地址
ansible權威指南 李松濤 pdf版 高清掃描版

有問題? 點此報錯

發(fā)表評論

0條評論