目 錄
本書贊譽
前 言
第一部分 基礎篇
第1章 係統基礎信息模塊詳解 2
1.1 係統性能信息模塊psutil 2
1.1.1 獲取係統性能信息 3
1.1.2 係統進程管理方法 6
1.2 實用的IP地址處理模塊IPy 7
1.2.1 IP地址、網段的基本處理 8
1.2.2 多網絡計算方法詳解 9
1.3 DNS處理模塊dnspython 11
1.3.1 模塊域名解析方法詳解 11
1.3.2 常見解析類型示例說明 12
1.3.3 實踐:DNS域名輪循業務監控 14
第2章 業務服務監控詳解 17
2.1 文件內容差異對比方法 17
2.1.1 示例1:兩個字符串的差異對比 17
2.1.2 生成美觀的對比HTML格式文檔 19
2.1.3 示例2:對比Nginx配置文件差異 19
2.2 文件與目錄差異對比方法 21
2.2.1 模塊常用方法說明 21
2.2.2 實踐:校驗源與備份目錄差異 25
2.3 發送電子郵件模塊smtplib 27
2.3.1 smtplib模塊的常用類與方法 27
2.3.2 定製個性化的郵件格式方法 28
2.3.3 定製常用郵件格式示例詳解 29
2.4 探測Web服務質量方法 34
2.4.1 模塊常用方法說明 35
2.4.2 實踐:實現探測Web服務質量 36
第3章 定製業務質量報錶詳解 39
3.1 數據報錶之Excel操作模塊 39
3.1.1 模塊常用方法說明 41
3.1.2 實踐:定製自動化業務流量報錶周報 48
3.2 Python與rrdtool的結閤模塊 50
3.2.1 rrdtool模塊常用方法說明 51
3.2.2 實踐:實現網卡流量圖錶繪製 53
3.3 生成動態路由軌跡圖 56
3.3.1 模塊常用方法說明 56
3.3.2 實踐:實現TCP探測目標服務路由軌跡 57
第4章 Python與係統安全 60
4.1 構建集中式的病毒掃描機製 60
4.1.1 模塊常用方法說明 61
4.1.2 實踐:實現集中式的病毒掃描 61
4.2 實現高效的端口掃描器 64
4.2.1 模塊常用方法說明 64
4.2.2 實踐:實現高效的端口掃描 66
第二部分 高級篇
第5章 係統批量運維管理器pexpect詳解 70
5.1 pexpect的安裝 70
5.2 pexpect的核心組件 71
5.2.1 spawn類 71
5.2.2 run函數 74
5.2.3 pxssh類 75
5.3 pexpect應用示例 76
5.3.1 實現一個自動化FTP操作 76
5.3.2 遠程文件自動打包並下載 77
第6章 係統批量運維管理器paramiko詳解 79
6.1 paramiko的安裝 79
6.2 paramiko的核心組件 81
6.2.1 SSHClient類 81
6.2.2 SFTPClient類 82
6.3 paramiko應用示例 85
6.3.1 實現密鑰方式登錄遠程主機 85
6.3.2 實現堡壘機模式下的遠程命令執行 85
6.3.3 實現堡壘機模式下的遠程文件上傳 88
第7章 係統批量運維管理器Fabric詳解 91
7.1 Fabric的安裝 91
7.2 fab的常用參數 92
7.3 fabfile的編寫 93
7.3.1 全局屬性設定 93
7.3.2 常用API 94
7.3.3 示例1:查看本地與遠程主機信息 95
7.3.4 示例2:動態獲取遠程目錄列錶 96
7.3.5 示例3:網關模式文件上傳與執行 97
7.4 Fabric應用示例 98
7.4.1 示例1:文件打包、上傳與校驗 98
7.4.2 示例2:部署LNMP業務服務環境 99
7.4.3 示例3:生産環境代碼包發布管理 101
第8章 從“零”開發一個輕量級WebServer 104
8.1 Yorserver介紹 104
8.1.1 功能特點 104
8.1.2 配置文件 105
8.2 功能實現方法 106
8.2.1 HTTP緩存功能 107
8.2.2 HTTP壓縮功能 111
8.2.3 HTTP SSL功能 111
8.2.4 目錄列錶功能 114
8.2.5 動態CGI功能 114
第9章 集中化管理平颱Ansible詳解 118
9.1 YAML語言 119
9.1.1 塊序列描述 120
9.1.2 塊映射描述 120
9.2 Ansible的安裝 121
9.2.1 業務環境說明 121
9.2.2 安裝EPEL 122
9.2.3 安裝Ansible 122
9.2.4 Ansible配置及測試 122
9.2.5 配置Linux主機SSH無密碼訪問 123
9.3 定義主機與組規則 124
9.3.1 定義主機與組 124
9.3.2 定義主機變量 125
9.3.3 定義組變量 125
9.3.4 分離主機與組特定數據 126
9.4 匹配目標 127
9.5 Ansible常用模塊及API 127
9.6 playbook介紹 132
9.6.1 定義主機與用戶 132
9.6.2 任務列錶 133
9.6.3 執行playbook 134
9.7 playbook角色與包含聲明 135
9.7.1 包含文件,鼓勵復用 135
9.7.2 角色 136
9.8 獲取遠程主機係統信息:Facts 141
9.9 變量 142
9.9.1 Jinja2過濾器 143
9.9.2 本地Facts 143
9.9.3 注冊變量 144
9.10 條件語句 145
9.11 循環 146
9.12 示例講解 147
第10章 集中化管理平颱Saltstack詳解 155
10.1 Saltstack的安裝 156
10.1.1 業務環境說明 156
10.1.2 安裝EPEL 156
10.1.3 安裝Saltstack 156
10.1.4 Saltstack防火牆配置 157
10.1.5 更新Saltstack配置及安裝校驗 157
10.2 利用Saltstack遠程執行命令 158
10.3 Saltstack常用模塊及API 161
10.4 grains組件 166
10.4.1 grains常用操作命令 167
10.4.2 定義grains數據 167
10.5 pillar組件 170
10.5.1 pillar的定義 171
10.5.2 pillar的使用 173
10.6 state介紹 174
10.6.1 state的定義 174
10.6.2 state的使用 175
10.7 示例:基於Saltstack實現的配置集中化管理 177
10.7.1 環境說明 177
10.7.2 主控端配置說明 177
10.7.3 配置pillar 179
10.7.4 配置state 180
10.7.5 校驗結果 183
第11章 統一網絡控製器Func詳解 185
11.1 Func的安裝 186
11.1.1 業務環境說明 186
11.1.2 安裝Func 186
11.2 Func常用模塊及API 189
11.2.1 選擇目標主機 190
11.2.2 常用模塊詳解 190
11.3 自定義Func模塊 194
11.4 非Python API接口支持 198
11.5 Func的Facts支持 199
第12章 Python大數據應用詳解 202
12.1 環境說明 202
12.2 Hadoop部署 203
12.3 使用Python編寫MapReduce 207
12.3.1 用原生Python編寫MapReduce詳解 208
12.3.2 用Mrjob框架編寫MapReduce詳解 212
12.4 實戰分析 216
12.4.1 示例場景 216
12.4.2 網站訪問流量統計 217
12.4.3 網站HTTP狀態碼統計 219
12.4.4 網站分鍾級請求數統計 220
12.4.5 網站訪問來源IP統計 221
12.4.6 網站文件訪問統計 222
第三部分 案例篇
第13章 從零開始打造B/S自動化運維平颱 226
13.1 平颱功能介紹 226
13.2 係統構架設計 227
13.3 數據庫結構設計 228
13.3.1 數據庫分析 228
13.3.2 數據字典 228
13.3.3 數據庫模型 229
13.4 係統環境部署 230
13.4.1 係統環境說明 230
13.4.2 係統平颱搭建 230
13.4.3 開發環境優化 233
13.5 係統功能模塊設計 235
13.5.1 前端數據加載模塊 235
13.5.2 數據傳輸模塊設計 237
13.5.3 平颱功能模塊擴展 240
第14章 打造Linux係統安全審計功能 245
14.1 平颱功能介紹 245
14.2 係統構架設計 246
14.3 數據庫結構設計 247
14.3.1 數據庫分析 247
14.3.2 數據字典 247
14.4 係統環境部署 248
14.4.1 係統環境說明 248
14.4.2 上報主機配置 248
14.5 服務器端功能設計 252
14.5.1 Django配置 252
14.5.2 功能實現方法 253
第15章 構建分布式質量監控平颱 256
15.1 平颱功能介紹 256
15.2 係統構架設計 257
15.3 數據庫結構設計 258
15.3.1 數據庫分析 258
15.3.2 數據字典 258
15.3.3 數據庫模型 259
15.4 係統環境部署 260
15.4.1 係統環境說明 260
15.4.2 數據采集角色 260
15.4.3 rrdtool作業 261
15.5 服務器端功能設計 263
15.5.1 Django配置 263
15.5.2 業務增加功能 264
15.5.3 業務報錶功能 266
第16章 構建桌麵版C/S自動化運維平颱 269
16.1 平颱功能介紹 269
16.2 係統構架設計 270
16.3 數據庫結構設計 271
16.3.1 數據庫分析 271
16.3.2 數據字典 272
16.3.3 數據庫模型 272
16.4 係統環境部署 273
16.4.1 係統環境說明 273
16.4.2 係統環境搭建 273
16.5 係統功能模塊設計 274
16.5.1 用戶登錄模塊 274
16.5.2 係統配置功能 275
16.5.3 服務器分類模塊 277
16.5.4 係統升級功能 280
16.5.5 客戶端模塊編寫 284
16.5.6 執行功能模塊 287
16.5.7 平颱程序發布 289
· · · · · · (
收起)