注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Python自動化運(yùn)維快速入門

Python自動化運(yùn)維快速入門

Python自動化運(yùn)維快速入門

定 價(jià):¥59.00

作 者: 鄭征 著
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302525806 出版時(shí)間: 2019-03-01 包裝: 平裝
開本: 16 頁數(shù): 270 字?jǐn)?shù):  

內(nèi)容簡介

  本書是一本從零開始、手把手教你運(yùn)維的書籍,通過上百個(gè)實(shí)際運(yùn)維場景案例,幫助讀者理解并掌握自動化運(yùn)維。 本書分為三篇共11章,第一篇是基礎(chǔ)運(yùn)維,介紹自動化運(yùn)維、Python基礎(chǔ)、文本處理、日志、FTP服務(wù)器、使用Python發(fā)郵件、微信等。通過本篇的學(xué)習(xí),可以達(dá)到編寫Python程序來解決基礎(chǔ)運(yùn)維問題的水平;第二篇是中級運(yùn)維,介紹自動化運(yùn)維工具(Ansible)、作業(yè)調(diào)度工具(APScheduler、Airflow)、分布式任務(wù)隊(duì)列(Celery),目的是為了讓運(yùn)維工作上一個(gè)新的臺階;第三篇是高級運(yùn)維,介紹Docker容器技術(shù),現(xiàn)現(xiàn)已成運(yùn)維人員必備的工具。 本書內(nèi)容詳盡、示例豐富,是廣大從事運(yùn)維開發(fā)的讀者必備參考書,同時(shí)也非常適合學(xué)習(xí)Python的讀者閱讀,也可作為高等院校計(jì)算機(jī)及相關(guān)專業(yè)作為教材使用。

作者簡介

  鄭征,計(jì)算機(jī)專業(yè)碩士,師從李云飛教授,曾發(fā)表兩篇論文,榮獲兩項(xiàng)實(shí)用新型專利。多年來一直致力于運(yùn)維開發(fā)及數(shù)據(jù)分析,從事銀行數(shù)據(jù)庫、操作系統(tǒng)、大型軟件系統(tǒng)相關(guān)的運(yùn)維及開發(fā)工作,擅長Python、Shell、SQL。對自動化運(yùn)維、監(jiān)控、調(diào)度工具、數(shù)據(jù)庫技術(shù)有過細(xì)致的研究,是Python語言的狂熱愛好者。長期專注于Python運(yùn)維程序開發(fā),解決了運(yùn)維工作過程中的一些實(shí)際問題,提高了運(yùn)維工作的效率。

圖書目錄

目 錄

第一篇 Python與基礎(chǔ)運(yùn)維
第1章 自動化運(yùn)維與Python 3
1.1 自動化運(yùn)維概述 3
1.1.1 自動化運(yùn)維勢在必行 3
1.1.2 什么是成熟的自動化運(yùn)維平臺 4
1.1.3 為什么選擇Python進(jìn)行運(yùn)維 4
1.2 初識Python 8
1.3 Python環(huán)境搭建 8
1.3.1 Windows系統(tǒng)下的Python安裝 8
1.3.2 Linux系統(tǒng)下的Python安裝 11
1.4 開發(fā)工具介紹 13
1.4.1 PyCharm 14
1.4.2 Vim 18
1.5 Python基礎(chǔ)語法 24
1.5.1 數(shù)字運(yùn)算 24
1.5.2 字符串 25
1.5.3 列表與元組 30
1.5.4 字典 33
1.5.5 集合 35
1.5.6 函數(shù) 36
1.5.7 條件控制與循環(huán)語句 38
1.5.8 可迭代對象、迭代器和生成器 42
1.5.9 對象賦值、淺復(fù)制、深復(fù)制 45
1.6 多個(gè)例子實(shí)戰(zhàn)Python編程 49
1.6.1 實(shí)戰(zhàn)1:九九乘法表 49
1.6.2 實(shí)戰(zhàn)2:發(fā)放獎金的梯度 50
1.6.3 實(shí)戰(zhàn)3:遞歸獲取目錄下文件的修改時(shí)間 51
1.6.4 實(shí)戰(zhàn)4:兩行代碼查找替換3或5的倍數(shù) 53
1.6.5 實(shí)戰(zhàn)5:一行代碼的實(shí)現(xiàn) 53
1.7 pip工具的使用 54

第2章 基礎(chǔ)運(yùn)維 57
2.1 文本處理 57
2.1.1 Python編碼解碼 57
2.1.2 文件操作 61
2.1.3 讀寫配置文件 68
2.1.4 解析XML文件 70
2.2 系統(tǒng)信息監(jiān)控 76
2.3 文件系統(tǒng)監(jiān)控 82
2.4 執(zhí)行外部命令subprocess 84
2.4.1 subprocess.run()方法 84
2.4.2 Popen類 86
2.4.3 其他方法 87
2.5 日志記錄 87
2.5.1 日志模塊簡介 88
2.5.2 logging模塊的配置與使用 89
2.6 搭建FTP服務(wù)器與客戶端 95
2.6.1 搭建FTP服務(wù)器 95
2.6.2 編寫FTP客戶端程序 99
2.7 郵件提醒 100
2.7.1 發(fā)送郵件 100
2.7.2 接收郵件 105
2.7.3 將報(bào)警信息實(shí)時(shí)發(fā)送至郵箱 107
2.8 微信提醒 112
2.8.1 處理微信消息 112
2.8.2 將警告信息發(fā)送至微信 116

第二篇 中級運(yùn)維
第3章 實(shí)戰(zhàn)多進(jìn)程 121
3.1 創(chuàng)建進(jìn)程的類Process 121
3.2 進(jìn)程并發(fā)控制之Semaphore 125
3.3 進(jìn)程同步之Lock 126
3.4 進(jìn)程同步之Event 128
3.5 進(jìn)程優(yōu)先級隊(duì)列Queue 130
3.6 多進(jìn)程之進(jìn)程池Pool 131
3.7 多進(jìn)程之?dāng)?shù)據(jù)交換Pipe 132
第4章 實(shí)戰(zhàn)多線程 135
4.1 Python多線程簡介 135
4.2 多線程編程之threading模塊 139
4.3 多線程同步之Lock(互斥鎖) 142
4.4 多線程同步之Semaphore(信號量) 144
4.5 多線程同步之Condition 145
4.6 多線程同步之Event 146
4.7 線程優(yōu)先級隊(duì)列(queue) 148
4.8 多線程之線程池pool 149
第5章 實(shí)戰(zhàn)協(xié)程 151
5.1 定義協(xié)程 151
5.2 并發(fā) 153
5.3 異步請求 154
第6章 自動化運(yùn)維工具Ansible 159
6.1 Ansible安裝 159
6.2 Ansible配置 160
6.3 inventory文件 161
6.4 ansible ad-hoc模式 163
6.5 Ansible Playbooks模式 171
第7章 定時(shí)任務(wù)模塊APScheduler 175
7.1 安裝及基本概念 175
7.1.1 APScheduler的安裝 175
7.1.2 APScheduler涉及的幾個(gè)概念 175
7.1.3 APScheduler的工作流程 176
7.2 配置調(diào)度器 178
7.3 啟動調(diào)度器 181
7.4 調(diào)度器事件監(jiān)聽 185
第8章 執(zhí)行遠(yuǎn)程命令(Paramiko) 188
8.1 介紹幾個(gè)重要的類 188
8.1.1 通道(Channel)類 188
8.1.2 傳輸(Transport)類 189
8.1.3 SSHClient類 190
8.2 Paramiko的使用 191
8.2.1 安裝 191
8.2.2 基于用戶名和密碼的SSHClient方式登錄 191
8.2.3 基于用戶名和密碼的Transport方式登錄并實(shí)現(xiàn)上傳與下載 192
8.2.4 基于公鑰密鑰的SSHClient方式登錄 193
8.2.5 基于公鑰密鑰的Transport方式登錄 194
第9章 分布式任務(wù)隊(duì)列Celery 195
9.1 Celery簡介 195
9.2 安裝Celery 197
9.3 安裝RabbitMQ或Redis 198
9.3.1 安裝RabbitMQ 198
9.3.2 安裝Redis 199
9.4 第一個(gè)Celey程序 200
9.5 第一個(gè)工程項(xiàng)目 203
9.6 Celery架構(gòu) 207
9.7 Celery 隊(duì)列 208
9.8 Celery Beat任務(wù)調(diào)度 211
9.9 Celery 遠(yuǎn)程調(diào)用 212
9.10 監(jiān)控與管理 215
9.10.1 Celery命令行實(shí)用工具 215
9.10.2 Web實(shí)時(shí)監(jiān)控工具Flower 218
9.10.3 Flower的使用方法 219
第10章 任務(wù)調(diào)度神器Airflow 223
10.1 Airflow簡介 223
10.1.1 DAG 224
10.1.2 操作符——Operators 224
10.1.3 時(shí)區(qū)——timezone 225
10.1.4 Web服務(wù)器——webserver 225
10.1.5 調(diào)度器——schduler 226
10.1.6 工作節(jié)點(diǎn)——worker 226
10.1.7 執(zhí)行器——Executor 226
10.2 Airflow安裝與部署 226
10.2.1 在線安裝 227
10.2.2 離線安裝 229
10.2.3 部署與配置(以SQLite為知識庫) 229
10.2.4 指定依賴關(guān)系 234
10.2.5 啟動scheduler 234
10.3 Airflow配置MySQL知識庫和LocalExecutor 235
10.4 Airflow配置Redis和CeleryExecutor 242
10.5 Airflow任務(wù)開發(fā)Operators 244
10.5.1 Operators簡介 245
10.5.2 BaseOperator 簡介 245
10.5.3 BashOperator的使用 245
10.5.4 PythonOperator的使用 247
10.5.5 SSHOperator的使用 248
10.5.6 HiveOperator的使用 249
10.5.7 如何自定義Operator 250
10.6 Airflow集群、高可用部署 250
10.6.1 Airflow的四大守護(hù)進(jìn)程 250
10.6.2 Airflow的守護(hù)進(jìn)程是如何一起工作的 251
10.6.3 Airflow單節(jié)點(diǎn)部署 252
10.6.4 Airflow多節(jié)點(diǎn)(集群)部署 252
10.6.5 擴(kuò)展worker節(jié)點(diǎn) 253
10.6.6 擴(kuò)展Master節(jié)點(diǎn) 253
10.6.7 Airflow集群部署的具體步驟 255

第三篇 高級運(yùn)維
第11章 Docker容器技術(shù)介紹 259
11.1 Docker概述 259
11.2 Docker解決什么問題 260
11.3 Docker的安裝部署與使用 261
11.3.1 安裝Docker引擎 261
11.3.2 使用Docker 262
11.3.3 Docker命令的使用方法 263
11.4 卷的概念 266
11.5 數(shù)據(jù)卷共享 267
11.6 自制鏡像并發(fā)布 267
11.7 Docker網(wǎng)絡(luò) 268
11.7.1 Docker的網(wǎng)絡(luò)模式 269
11.7.2 Docker網(wǎng)絡(luò)端口映射 270
11.8 Docker小結(jié) 270


本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號