書籍信息
作譯者:貝殼找房SRE團隊
出版時間:2018-10千 字 數:565版次:01-01頁 數:412
開本:16開裝幀:I S B N :9787121351440
換版:
紙質書定價:¥119.0
內容簡介
Ansible是近年來急速發展的開源配置管理工具。在Ansible之前,行業中已經有很多開源配置管理工具了,特別是大名鼎鼎的Puppet,簡直是配置管理工具中的超級巨星。 然而,Ansible依靠它的簡單易用、“零依賴”以及弱抽象獲得了無數開發者和運維工程師的青睞。遺憾的是,除了官方文檔外,Ansible相關的優秀文檔鳳毛麟角,而本書恰恰就是為了緩解這一問題而編寫的。作者在本書中演示了如何使用Ansible管理接近真實生產環境的案例。既展現了Ansible的強大功能,又能夠幫助讀者快速入門與上手,本書非常適合作為官方文檔的補充或者搭配閱讀。特別值得一提的是,本書第2版還增加了管理Windows伺服器和網路設備方面的章節,並重新編寫了Docker相關章節,及時地對第1版中的不足進行了改進。
圖書目錄
序. .................................... xxiii
第 2版前言. .......................... xxv
第 1版前言. ........................ xxvii
第 1章 簡介........................... 1
關於版本的說明 .................... 2
Ansible的優勢 ...................... 2
Ansible如何運作 .................. 3
Ansible的精妙設計賞析 ....... 4
易讀的語法.................... 4
遠程主機無須安裝依賴 . 5
基於推送模式 ................ 5
使用 Ansible管理小規模環境 ................................... 6
內置模組 ....................... 6
非常輕量的抽象層 ........ 7
Ansible太過於簡單了嗎 ....... 8
需要哪些基礎知識 ................ 8
哪些內容不會涉及 ................ 9
安裝 Ansible ....................... 10
建立一台用於測試的伺服器 ........................................... 11
使用 Vagrant來創建測試伺服器 ............................. 11
將測試伺服器的信息配置在 Ansible中 .................. 14
使用 ansible.cfg檔案來簡化配置 ............................ 16
展望 .................................... 19
第 2章 playbook:一切的開始. 20
一些準備工作 ..................... 20
一個簡單的 playbook .......... 21
定義 Nginx的配置檔案 ........................................... 23
創建一個定製的首頁 ... 24
創建一個 webservers群組 ....................................... 25
運行這個 playbook .............. 25
YAML格式的 playbook ...... 27
檔案起始 ..................... 27
注釋 ............................. 27
字元串 ......................... 27
布爾型 ......................... 28
列表 ............................. 28
字典 ............................. 28
分行 ............................. 29
剖析 playbook ..................... 30
play.............................. 31
task .............................. 32
模組 ............................. 33
將它們整合在一起 ...... 34
執行 Ansible後發生變化了嗎?跟蹤主機狀態 .............. 35
來點更酷炫的:添加 TLS支持 ...................................... 35
生成 TLS證書 ............. 36
變數 ............................. 37
生成 Nginx配置模板 .. 39
handler ......................... 41
運行 playbook.............. 42
第 3章 使用 inventory描述你的伺服器................................... 44
inventory檔案..................... 44
準備工作:創建多台 Vagrant虛擬機 ............................. 45
inventory 行為參數 ............. 48
ansible_connection ...... 49
ansible_shell_type ....... 49
ansible_python_interpreter ....................................... 49
ansible_*_interpreter ... 49
改變行為參數的默認值 ........................................... 50
群組 .................................... 50
範例:部署一個 Django套用.................................. 51
別名和連線埠.................. 54
群組的群組.................. 54
為主機編號(寵物還是公牛 ) ................................. 55
在 inventory內部的主機和組變數 .................................. 55
在各自檔案中的主機和組變數 ....................................... 57
動態 inventory..................... 59
動態 inventory腳本接口 ......................................... 60
編寫動態 inventory腳本 ......................................... 61
預裝 inventory腳本 ..... 65
將 inventory分割到多個檔案 ......................................... 65
使用 add_host和 group_by在運行時添加條目 ............... 65
add_host ...................... 65
group_by ..................... 67