Python自動化運維:技術與最佳實踐 PDF高清完整版|網盤下載內附地址提取碼|

来源:https://www.cnblogs.com/nanyang1/archive/2020/07/28/13393838.html
-Advertisement-
Play Games

內容簡介: 《Python自動化運維:技術與最佳實踐》一書在中國運維領域將有“劃時代”的重要意義:一方面,這是國內第一本從縱、深和實踐角度探討Python在運維領域應用的著作;一方面本書的作者是中國運維領域的“偶像級”人物,本書是他在天涯社區和騰訊近10年工作經驗的結晶。因為作者實戰經驗豐富,所以能 ...


內容簡介:

《Python自動化運維:技術與最佳實踐》一書在中國運維領域將有“劃時代”的重要意義:一方面,這是國內第一本從縱、深和實踐角度探討Python在運維領域應用的著作;一方面本書的作者是中國運維領域的“偶像級”人物,本書是他在天涯社區和騰訊近10年工作經驗的結晶。因為作者實戰經驗豐富,所以能高屋建瓴、直指痛處,圍繞Python自動化運維這個主題,不僅詳細介紹了系統基礎信息、服務監控、數據報表、系統安全等基礎模塊,而且深入講解了自動化操作、系統管理、配置管理、集群管理及大數據應用等高級功能。最重要的是,完整重現了4個來自實際生產環境的不同功能運維平臺的綜合案例,展示了完整的平臺架構及開發流程。

 

全書一共16章:基礎篇(1-4章)詳細介紹了系統基礎信息、業務服務監控、定製業務質量報表、系統安全等基礎和常用模塊;高級篇(5-12章)深入講解了批量運維管理器pexpect、paramiko、Fabric,集中化管理平臺Ansible、Saltstack,統一網路控制器Func等高級功能,涵蓋自動化操作、系統管理、配置管理、集群管理及大數據應用等主題;案例篇(13-16章)詳細介紹了4個來自不同平臺的運維案例,如何從零開始打造一個B/S自動化運維平臺、如何打造Linux系統安全審計功能、如何構建分散式質量監控平臺、如何構建桌面版C/S自動化運維平臺,這4個案例均來自實際生產環境。

點擊此處獲取下載

提取碼:jl8j

 

目錄:
前  言
第一部分 基礎篇
第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


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、Nacos 介紹 Nacos 是 Alibaba 公司推出的開源工具,用於實現分散式系統的服務發現與配置管理。英文全稱 Dynamic Naming and Configuration Service,Na 為 Naming/NameServer 即註冊中心,co 為 Configuration ...
  • 特別註意:本代碼為 Springboot 工作流 前後分離 + 跨域 版本 (許可權控制到菜單和按鈕) 後臺框架:springboot2.3.0+ Flowable6.5.0+ mybaits+maven+介面 前端頁面:html +vue.js 形式 jquery ajax 非同步跨域 json 格式 ...
  • 徹底理解微商城多租戶Saas架構設計 原文鏈接:https://blog.csdn.net/haponchang/article/details/104246317,感謝作者提供這麼好的總結! 1.具體的SaaS架構必須 1.先仔細選擇最適合應用程式需求的租戶模型, 2.需要根據租戶模型來選定最終的 ...
  • 新的日期時間API 1 日期/時間 LocalDate:沒有時區的日期 LocalTime:沒有時區的時間 LocalDateTime:沒有時區的日期時間 ZonedDateTime:有時區的日期時間 時區/ZoneId ZoneId.getAvailableZoneIds()獲取所有可用的Zone ...
  • #include <iostream> using namespace std; template<typename T> class Complex { public : Complex() { } Complex(T a, T b) { this->a = a; this->b = b; } v ...
  • 今天使用mybatis開發公司中台項目踩的一個坑,分享並記錄一下 踩坑前因:因項目中比較多狀態欄位,用了大量的Integer 0和1進行判斷 在功能做完後只是粗略的點了下覺得沒多大問題(來自程式員強大的自信),便提交了代碼,很不巧的是剛好領導在做功能測試,發現了功能缺陷,主角來了: 在做牧戶查詢時所 ...
  • 假如,明天你財務自由了,你會想去做些什麼? 最近,他二哥坐電梯發現身邊的程式員們,除了交流各種棘手的Bug之外,還會討論股市大盤漲了還是跌了,自己買的股票賺了還是虧了。生活不易,猿猿嘆氣,誰又沒有做過一夜暴富的美夢呢? 待到春來時,洗手作羹湯。 拋棄java C,只把歌來唱。 這樣美麗如畫的場景在他 ...
  • 學習ruby中記錄下的一些要點和感悟,隨緣更新 內容來自 《“笨方法”學ruby》、https://www.runoob.com/ ,此處僅做記錄 #Ruby 數組(Array) Ruby 數組是任何對象的有序整數索引集合。數組中的每個元素都與一個索引相關,並可通過索引進行獲取。 數組的索引從 0 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...