Python自动化运维实战pdf下载pdf下载

Python自动化运维实战百度网盘pdf下载

作者:
简介:本篇主要提供Python自动化运维实战pdf下载
出版社:木垛图书旗舰店
出版时间:2020-04
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

  • 商品名称:Python自动化运维实战
  • 作者:[美] 巴塞姆· 阿利(Bassem Aly)|译者:王文峰 袁洪艳
  • 定价:79
  • 出版社:人民邮电
  • ISBN号:9787115530189

其他参考信息(以实物为准)

  • 出版时间:2020-04-01
  • 印刷时间:2020-04-01
  • 版次:1
  • 印次:1
  • 开本:16开
  • 包装:平装
  • 页数:310
  • 字数:408千字

编辑推荐语

本书旨在讲述通过Python简化运维、提升运维效率的方法和实践。 本书首先介绍如何开发Python程序 、创建Python模块,然后讲述如何使用Python工具获取重要的输出信息、生成通用的配置模板、自动安装操作系统、配置大量服务器, 后讨论如何创建和管理虚拟机,如何利用OpenStack、VMware、AWS自动执行管理任务等。 通过本书,你将掌握用Python实现自动化运维的各种方法和技巧。 本书主要内容: ·Python中常用模块的用法; ·通过Python脚本管理网络设备的方法; ·使用Ansible和Fabric自动执行常见的Linux管理任务的方法; ·管理Linu 程的方法; ·使用Python管理VMware、OpenStack和AWS实例的方法; ·基于Python的安全工具的用法。

内容提要

《Python自动化运维实战》介绍了如何通过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 安装Python4
1.2 安装PyCharm IDE6
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 自动化的两种方式——屏幕抓取与API31
3.4 使用Python进行网络自动化的原因31
3.5 网络自动化的未来33
3.6 搭建网络实验室34
3.7 准备工作——安装EVE-NG34
3.7.1 在VMware Workstation上安装35
3.7.2 通过VMware ESXi安装36
3.7.3 通过Red Hat KVM安装38
3.7.4 访问EVE-NG39
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和SSH49
4.1.2 Paramiko模块50
4.1.3 netmiko模块52
4.2 在Python中使用Telnet协议59
4.3 使用netaddr处理IP地址和网络64
4.3.1 安装netaddr65
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库可视化SNMP94
5.6 小结96
第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 下载CentOS129
8.1.2 下载Ubuntu130
8.2 在虚拟机管理程序上创建自动化虚拟机131
8.2.1 在VMware ESXi上创建Linux虚拟机131
8.2.2 使用KVM创建Linux虚拟机135
8.3 开始使用Cobbler139
8.3.1 Cobbler的工作原理139
8.3.2 在自动化服务器上安装Cobbler141
8.3.3 通过Cobbler检查服务器硬件144
8.4 小结149
第9章 使用subprocess库150
9.1 subprocess库中的Popen()151
9.2 stdin、stdout和stderr154
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 在自动化服务器上安装MySQL192
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系统上安装Ansible205
13.2.1 在RHEL系统和CentOS上安装Ansible205
13.2.2 在Ubuntu系统上安装Ansible205
13.3 在即席模式下使用Ansible206
13.4 创建第 一个playbook210
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 运行packstack255
15.2.5 访问OpenStack GUI255
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
playbook267
15.6 小结270
第 16章 使用Python和Boto3自动化AWS271
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 Scapy281
17.2 安装Scapy282
17.2.1 在基于UNIX的系统上安装Scapy282
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