DevOps和自動化運維實踐

DevOps和自動化運維實踐

《DevOps和自動化運維實踐》是2018年機械工業出版社出版的圖書,作者是余洪春。

基本介紹

  • 書名:DevOps和自動化運維實踐
  • 作者:余洪春
  • 出版社:機械工業出版社
  • ISBN:9787111610021
內容簡介,圖書目錄,

內容簡介

本書的內容是對實際工作經驗的總結,涉及大量的DevOps及自動化運維知識點和專業術語,全書共分8章,分別介紹了DevOps與自動化運維在運維中的意義和存在的必要性、生產環境下的Shell腳本、Python在DevOps與自動化運維中的套用、搭建自動化分散式虛擬環境的Vagrant、自動化運維工具Farbic、分散式自動化運維工具Ansible、自動化配置管理工具SaltStack,以及自動化運維中的後續思考等內容。

圖書目錄

推薦序一
推薦序二
推薦序三
前言
第1章 DevOps與自動化運維的意義 1
1.1 DevOps在企業中存在的意義 1
1.2 為什麼企業需要自動化運維 4
1.3 Web編程相關體系知識點 5
1.3.1 為什麼要前後端分離 5
1.3.2 什麼是RESTful 7
1.3.3  Web後台認證機制 8
1.3.4 同步和異步、阻塞與非阻塞的區別 10
1.3.5 WebSocket雙工通信 11
1.3.6 了解訊息中間件 13
1.3.7 了解負載均衡高可用 18
1.4 從事DevOps工作應該掌握的語言 24
1.5 從事DevOps工作應該掌握的工具 25
1.6 了解網站系統架構設計和高並發場景 26
1.6.1 網站性能評估指標 26
1.6.2 細分五層解說網站架構 26
1.7 了解資料庫集群主從複製的基本原理 34
1.8 Linux伺服器的安全防護 37
1.8.1 DDoS攻擊和運營商劫持 37
1.8.2 Linux伺服器基礎防護篇 38
1.8.3 Linux伺服器高級防護篇 40
1.9 小結 41
第2章 Shell腳本在DevOps下的套用 42
2.1 Shell編程基礎 42
2.1.1 Shell腳本的基本元素 43
2.1.2 Shell基礎正則表達式 43
2.1.3 Shell特殊字元 46
2.1.4 變數和運算符 47
2.2 Shell中的控制流結構 61
2.3 sed的基礎用法及實用舉例 64
2.3.1 sed的基礎語法格式 64
2.3.2 sed的用法舉例說明 69
2.4 awk的基礎用法及實用案例 72
2.5 Shell套用於DevOps開發中應掌握的系統知識點 77
2.6 生產環境下的Shell腳本 85
2.6.1 生產環境下的備份類腳本 86
2.6.2 生產環境下的統計類腳本 89
2.6.3 生產環境下的監控類腳本 92
2.6.4 生產環境下的運維開發類腳本 97
2.7 小結 102
第3章 Python在DevOps與自動化運維中的套用 103
3.1 Python語言的套用領域 103
3.2 選擇Python的原因 105
3.3 Python的版本說明 106
3.4 Python基礎學習工具 106
3.4.1 Python(x,y)簡單介紹 107
3.4.2 IPython詳細介紹 107
3.4.3 Sublime Text3簡單介紹 113
3.5 Python基礎知識進階 120
3.5.1 正則表達式套用 120
3.5.2 Python程式構成 127
3.5.3 Python編碼問題 129
3.5.4 使用Python解析JSON 131
3.5.5 Python異常處理與程式調試 133
3.5.6 Python函式 136
3.5.7 Python面向對象 147
3.5.8 Python多進程 159
3.5.9 Python多執行緒 161
3.6 Python經常用到的第三方類庫 175
3.7 利用Flask設計後端Restful API 178
3.7.1 DevOps中為什麼要使用RESTful API 178
3.7.2 RESTful API項目實戰 182
3.8 工作中的Python腳本分享 184
3.9 小結 191
第4章 Vagrant在DevOps環境中的套用 192
4.1 Vagrant簡單介紹 193
4.2 Vagrant安裝 193
4.3 使用Vagrant配置本地開發環境 195
4.3.1 Vagrant的具體安裝步驟 195
4.3.2  Vagrant配置檔案詳解 198
4.3.3 Vagrant常用命令詳解 199
4.4 使用Vagrant搭建DevOps開發環境 200
4.5 使用Vagrant搭建分散式環境 203
4.6 小結 207
第5章 自動化部署管理工具Ansible 208
5.1 YAML介紹 209
5.2 Ansible的安裝和配置 214
5.3 定義主機與組規則(Inventory) 218
5.4 Ansible常用模組介紹 220
5.5 playbook介紹 235
5.6 Ansible在AWS雲平台中的套用 240
5.7 角色 241
5.8 Jinja2過濾器 248
5.9 Ansible速度最佳化 252
5.10 利用Ansible API提供自動化運維後端 262
5.10.1 runner API 262
5.10.2 playbook API 265
5.10.3 用Flask封裝Ansible提供自動化運維後端 267
5.11 Ansible 2.2新增功能 273
5.12 小結 280
第6章 自動化配置管理工具SaltStack 281
6.1 Salt的相關知識點介紹 281
6.1.1 Salt的優勢 281
6.1.2 Salt的安裝 282
6.1.3 Salt的工作流程 287
6.1.4 Salt配置檔案詳解 288
6.1.5 Salt的命令格式 291
6.2 Salt的常用組件 291
6.2.1 Salt常用的操作目標 291
6.2.2 Salt常用模組 293
6.2.3 Granis組件 304
6.2.4 pillar組件 308
6.2.5 job管理 311
6.2.6 State介紹 312
6.3 Salt真實案例分享 314
6.3.1 base環境配置 315
6.3.2 prod環境配置 319
6.4 Salt多Master搭建 322
6.5 Salt API介紹 324
6.5.1 Python API介紹 324
6.5.2 Restful API介紹 326
6.6 小結 330
第7章 Docker和Jenkins在DevOps中的套用 331
7.1 Docker的基礎安裝 333
7.2 Docker的三大核心概念 336
7.3 Docker的基本架構 338
7.4 Docker網路實現原理 340
7.5 利用Dockerfile檔案技巧打包Docker鏡像 342
7.6 利用Docker-Compose編排和管理多容器 344
7.6.1 Docker-Compose的基本語法 345
7.6.2 Docker-Compose常用命令 352
7.6.3 使用Docker-Compose運行Python Web項目 354
7.6.4 使用Docker-Compose的過程中遇到的問題 355
7.7 利用Docker搭建Jenkins Master/Slave分散式環境 357
7.7.1 部署Jenkins Master/Slave分散式環境需要解決的問題 358
7.7.2 Jenkins Master/Slave的詳細部署過程 360

相關詞條

熱門詞條

聯絡我們