Python 自動化運維實戰 (Hands-On Enterprise Automation with Python: Automate common administrative and security tasks with the most popular language Python)
[美] 巴塞姆· 阿利(Bassem Aly)
- 出版商: 人民郵電
- 出版日期: 2020-04-01
- 定價: $474
- 售價: 8.5 折 $403
- 語言: 簡體中文
- 頁數: 310
- 裝訂: 平裝
- ISBN: 7115530181
- ISBN-13: 9787115530189
- 此書翻譯自: Hands-On Enterprise Automation with Python: Automate common administrative and security tasks with the most popular language Python
立即出貨 (庫存 < 3)
買這商品的人也買了...
-
$500OpenDaylight 應用指南
-
$500$395 -
$650$585 -
$653深度學習之美 : AI時代的數據處理與最佳實踐
-
$454PostgreSQL 實戰
-
$505玩轉 EVE-NG 帶您潛入 IT虛擬世界
-
$380$296 -
$450$351 -
$505非常網管 IPv6 網絡部署實戰
-
$505內網安全攻防 : 滲透測試實戰指南
-
$980$774 -
$454Python 程序員面試筆試寶典
-
$550$429 -
$520$338 -
$454人工智能開發實踐:雲端機器學習導論
-
$407AWS 解決方案架構師學習指南 (第2版·SAA-C01)
-
$690$587 -
$680$510 -
$237網絡工程師的 Python 之路:網絡運維自動化實戰
-
$690$587 -
$839$797 -
$285Linux 系統配置及運維項目化教程 (工作手冊式)
-
$580$435 -
$505華為網絡技術系列 SD-WAN 架構與技術, 2/e
-
$600$474
相關主題
商品描述
本書介紹瞭如何通過Python來自動完成服務器的配置與管理,自動完成系統的管理任務
(如用戶管理、數據庫管理和進程管理),以及完成這些工作所需的模塊、庫和工具。
此外,本書還講述瞭如何使用Python腳本自動執行測試,
如何通過Python在雲基礎設施和虛擬機上自動執行任務,
如何使用基於Python的安全工具自動完成與安全相關的任務。
本書適合運維人員和開發人員閱讀,也可作為相關專業人士的參考書。
作者簡介
Bassem Aly
是Juniper Networks公司經驗豐富的SDN/NFV解決方案顧問,過去9年來一直在電信行業工作。
他擅長使用不同的自動化工具以及DevOps框架設計和實現下一代自動化解決方案。
此外,他在使用OpenStack構建和部署電信應用程序方面擁有豐富的經驗,
同時他還負責網絡自動化和網絡編程方面的企業培訓。
目錄大綱
目錄:
第1章搭建Python環境1
1.1 Python簡介2
1.1.1 Python版本3
1.1.2安裝Python 4
1.2安裝PyCharm IDE 6
1.3 PyCharm的*級功能12
1.3.1調試代碼13
1.3.2重構代碼14
1.3.3從GUI安裝包16
1.4小結17
第2章常用的自動化庫18
2.1 Python包19
2.2常用Python庫20
2.2.1與網絡相關的Python庫21
2.2.2與系統和雲相關的Python庫22
2.3查看模塊源代碼23
2.4小結28
第3章搭建網絡實驗室環境29
3.1技術要求30
3.2需要自動化網絡的時間和原因30
3.3自動化的兩種方式——屏幕抓取與API 31
3.4使用Python進行網絡自動化的原因31
3.5網絡自動化的未來33
3.6搭建網絡實驗室34
3.7準備工作——安裝EVE-NG 34
3.7.1在VMware Workstation上安裝35
3.7.2通過VMware ESXi安裝36
3.7.3通過Red Hat KVM安裝38
3.7.4訪問EVE-NG 39
3.7.5安裝EVE-NG客戶端工具包42
3.7.6在EVE-NG中加載網絡鏡像43
3.8創建企業網絡拓撲43
3.8.1添加新節點44
3.8.2連接節點45
3.9小結47
第4章使用Python管理網絡設備48
4.1技術要求49
4.1.1 Python和SSH 49
4.1.2 Paramiko模塊50
4.1.3 netmiko模塊52
4.2在Python中使用Telnet協議59
4.3使用netaddr處理IP地址和網絡64
4.3.1安裝netaddr 65
4.3.2使用netaddr的方法65
4.4簡單的用例67
4.4.1備份設備配置68
4.4.2創建訪問終端70
4.4. 3從Excel工作表中讀取數據72
4.4.4其他用例75
4.5小結75
第5章從網絡設備中提取數據76
5.1技術要求77
5.2解釋器77
5.3正則表達式78
5.4使用CiscoConfParse庫校驗配置86
5.4.1 CiscoConfParse庫86
5.4.2支持的供應商87
5.4.3安裝CiscoConfParse庫88
5.4.4使用CiscoConfParse庫88
5.5使用Matplotlib庫可視化返回的數據91
5.5.1安裝Matplotlib庫91
5.5.2使用Matplotlib庫92
5.5.3使用Matplotlib庫可視化SNMP 94
5.6小結9
第6章使用Python和Jinja2配置生成器97
6.1 YAML簡介98
6.2使用Jinja2建立配置模板102
6.2.1從文件系統中讀取模板109
6.2.2在Jinja2中使用循環和條件111
6.3小結119
第7章並行執行Python腳本120
7.1 Python腳本在計算機中運行的方式121
7.2 multiprocessing庫123
7.2.1開始使用multiprocessing庫123
7.2.2進程間的相互通信126
7.3小結127
第8章準備實驗室環境128
8.1獲取Linux操作系統129
8.1.1下載CentOS 129
8.1.2下載Ubuntu 130
8.2在虛擬機管理程序上創建自動化虛擬機131
8.2.1在VMware ESXi上創建Linux虛擬機131
8.2.2使用KVM創建Linux虛擬機135
8.3開始使用Cobbler 139
8.3.1 Cobbler的工作原理139
8.3.2在自動化服務器上安裝Cobbler 141
8.3.3通過Cobbler檢查服務器硬件144
8.4小結149
第9章使用subprocess庫150
9.1 subprocess庫中的Popen() 151
9.2 stdin、stdout和stderr 154
9.3 subprocess庫中的call()函數156
9.4小結157
第10章使用Fabric運行系統管理任務158
10.1技術要求159
10.2 Fabric庫159
10.2.1安裝Fabric庫160
10.2.2 Fabric庫中的操作161
10.3運行第一個Fabric文件164
10.3.1有關fab工具的更多信息167
10.3.2使用Fabric檢查系統健康狀態168
10.4其他有用的Fabric特性173
10.4.1 Fabric角色173
10.4.2 Fabric上下文管理器175
10.5小結176
第11章生成系統報告和監控系統177
11.1從Linux系統中收集數據178
11.1.1通過郵件發送收集的數據183
11.1.2使用time和date模塊186
11.1. 3定期運行腳本187
11.2在Ansible中管理用戶188
11.2.1在Linux系統中通過Ansible管理用戶188
11.2.2在Windows系統中通過Ansible管理用戶190
11.3小結190
第12章與數據庫交互191
12.1在自動化服務器上安裝MySQL 192
12.1.1安裝後的安全問題193
12.1.2驗證數據庫的安裝194
12.2從Python中訪問MySQL數據庫195
12.2.1查詢數據庫197
12.2.2向數據庫中插入數據198
12.3小結201
第13章使用Ansible管理系統202
13.1 Ansible術語203
13.2在Linux系統上安裝Ansible 205
13.2.1在RHEL系統和CentOS上安裝Ansible 205
13.2.2在Ubuntu系統上安裝Ansible 205
13.3在即席模式下使用Ansible 206
13.4創建第一個playbook 210
13.5 Ansible的條件、處理程序和循環212
13.5.1設計條件213
13.5.2在Ansible中創建循環215
13.5.3使用處理程序觸發任務216
13.6使用事實數據218
13.7使用Ansible模板219
13.8小結221
第14章創建和管理VMware虛擬機222
14.1設置環境223
14.2使用Jinja2生成VMX文件225
14.2.1創建VMX模板226
14.2.2處理Excel工作表中的數據229
14.2.3生成VMX文件231
14.3 VMware Python客戶端238
14.3.1安裝PyVmomi庫239
14.3.2使用PyVmomi庫的第一步240
14.3.3更改虛擬機的狀態244
14.3.4更多內容246
14.4使用playbook管理實例246
14.5小結249
第15章和OpenStack API交互250
15.1 RESTful Web服務251
15.2設置環境253
15.2.1安裝rdo-OpenStack包253
15.2.2生成answer文件254
15.2.3編輯answer文件254
15.2 .4運行packstack 255
15.2.5訪問OpenStack GUI 255
15.3向OpenStack keystone發送請求256
15.4用Python創建實例259
15.4.1創建鏡像259
15.4.2分配類型模板261
15.4.3創建網絡和子網262
15.4.4啟動實例265
15.5使用Ansible管理OpenStack實例266
15.5.1 Shade和Ansible的安裝266
15.5.2創建Ansible
playbook 267
15.6小結270
第16章使用Python和Boto3自動化AWS 271
16.1 AWS Python模塊272
16.2管理AWS實例274
16.3自動化AWS S3服務277
16.3.1創建存儲桶277
16.3.2上傳文件到存儲桶278
16.3.3刪除存儲桶278
16.4小結279
第17章使用Scapy框架280
17.1 Scapy 281
17.2安裝Scapy 282
17.2.1在基於UNIX的系統上安裝Scapy 282
17.2.2 Windows系統和macOS對Scapy的支持情況283
17.3使用Scapy生成報文和網絡流283
17.4抓取和重播報文288
17.4.1向報文注入數據290
17.4.2報文嗅探292
17.4.3將報文寫入pcap文件294
17.5小結294
第18章使用Python編寫網絡掃描程序295
18.1網絡掃描程序296
18.2使用Python編寫網絡掃描程序296
18.2. 1增加功能297
18.2.2掃描服務300
18.3在GitHub上共享代碼303
18.3.1創建GitHub賬戶304
18.3.2創建和推送代碼304
18.4小結310