搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Python自动化运维快速入门
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787302525806
  • 作      者:
    郑征著
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2019
收藏
作者简介
郑征,计算机专业硕士,师从李云飞教授,曾发表两篇论文,荣获两项实用新型专利。多年来一直致力于运维开发及数据分析,从事银行数据库、操作系统、大型软件系统相关的运维及开发工作,擅长Python、Shell、SQL。对自动化运维、监控、调度工具、数据库技术有过细致的研究,是Python语言的狂热爱好者。长期专注于Python运维程序开发,解决了运维工作过程中的一些实际问题,提高了运维工作的效率。
展开
内容介绍
本书是一本从零开始、手把手教你运维的书籍,通过上百个实际运维场景案例,帮助读者理解并掌握自动化运维。
本书分为三篇共11章,第一篇是基础运维,介绍自动化运维、Python基础、文本处理、日志、FTP服务器、使用Python发邮件、微信等。通过本篇的学习,可以达到编写Python程序来解决基础运维问题的水平;第二篇是中级运维,介绍自动化运维工具(Ansible)、作业调度工具(APScheduler、Airflow)、分布式任务队列(Celery),目的是为了让运维工作上一个新的台阶;第三篇是高级运维,介绍Docker容器技术,现现已成运维人员必备的工具。
本书内容详尽、示例丰富,是广大从事运维开发的读者必备参考书,同时也非常适合学习Python的读者阅读,也可作为高等院校计算机及相关专业作为教材使用。
展开
目录
目  录

第一篇  Python与基础运维
第1章  自动化运维与Python    3
1.1  自动化运维概述    3
1.1.1  自动化运维势在必行    3
1.1.2  什么是成熟的自动化运维平台    4
1.1.3  为什么选择Python进行运维    4
1.2  初识Python    8
1.3  Python环境搭建    8
1.3.1  Windows系统下的Python安装    8
1.3.2  Linux系统下的Python安装    11
1.4  开发工具介绍    13
1.4.1  PyCharm    14
1.4.2  Vim    18
1.5  Python基础语法    24
1.5.1  数字运算    24
1.5.2  字符串    25
1.5.3  列表与元组    30
1.5.4  字典    33
1.5.5  集合    35
1.5.6  函数    36
1.5.7  条件控制与循环语句    38
1.5.8  可迭代对象、迭代器和生成器    42
1.5.9  对象赋值、浅复制、深复制    45
1.6  多个例子实战Python编程    49
1.6.1  实战1:九九乘法表    49
1.6.2  实战2:发放奖金的梯度    50
1.6.3  实战3:递归获取目录下文件的修改时间    51
1.6.4  实战4:两行代码查找替换3或5的倍数    53
1.6.5  实战5:一行代码的实现    53
1.7  pip工具的使用    54

第2章  基础运维    57
2.1  文本处理    57
2.1.1  Python编码解码    57
2.1.2  文件操作    61
2.1.3  读写配置文件    68
2.1.4  解析XML文件    70
2.2  系统信息监控    76
2.3  文件系统监控    82
2.4  执行外部命令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服务器与客户端    95
2.6.1  搭建FTP服务器    95
2.6.2  编写FTP客户端程序    99
2.7  邮件提醒    100
2.7.1  发送邮件    100
2.7.2  接收邮件    105
2.7.3  将报警信息实时发送至邮箱    107
2.8  微信提醒    112
2.8.1  处理微信消息    112
2.8.2  将警告信息发送至微信    116

第二篇  中级运维
第3章  实战多进程    121
3.1  创建进程的类Process    121
3.2  进程并发控制之Semaphore    125
3.3  进程同步之Lock    126
3.4  进程同步之Event    128
3.5  进程优先级队列Queue    130
3.6  多进程之进程池Pool    131
3.7  多进程之数据交换Pipe    132
第4章  实战多线程    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  线程优先级队列(queue)    148
4.8  多线程之线程池pool    149
第5章  实战协程    151
5.1  定义协程    151
5.2  并发    153
5.3  异步请求    154
第6章  自动化运维工具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章  定时任务模块APScheduler    175
7.1  安装及基本概念    175
7.1.1  APScheduler的安装    175
7.1.2  APScheduler涉及的几个概念    175
7.1.3  APScheduler的工作流程    176
7.2  配置调度器    178
7.3  启动调度器    181
7.4  调度器事件监听    185
第8章  执行远程命令(Paramiko)    188
8.1  介绍几个重要的类    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方式登录并实现上传与下载    192
8.2.4  基于公钥密钥的SSHClient方式登录    193
8.2.5  基于公钥密钥的Transport方式登录    194
第9章  分布式任务队列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  第一个Celey程序    200
9.5  第一个工程项目    203
9.6  Celery架构    207
9.7  Celery 队列    208
9.8  Celery Beat任务调度    211
9.9  Celery 远程调用    212
9.10  监控与管理    215
9.10.1  Celery命令行实用工具    215
9.10.2  Web实时监控工具Flower    218
9.10.3  Flower的使用方法    219
第10章  任务调度神器Airflow    223
10.1  Airflow简介    223
10.1.1  DAG    224
10.1.2  操作符——Operators    224
10.1.3  时区——timezone    225
10.1.4  Web服务器——webserver    225
10.1.5  调度器——schduler    226
10.1.6  工作节点——worker    226
10.1.7  执行器——Executor    226
10.2  Airflow安装与部署    226
10.2.1  在线安装    227
10.2.2  离线安装    229
10.2.3  部署与配置(以SQLite为知识库)    229
10.2.4  指定依赖关系    234
10.2.5  启动scheduler    234
10.3  Airflow配置MySQL知识库和LocalExecutor    235
10.4  Airflow配置Redis和CeleryExecutor    242
10.5  Airflow任务开发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的四大守护进程    250
10.6.2  Airflow的守护进程是如何一起工作的    251
10.6.3  Airflow单节点部署    252
10.6.4  Airflow多节点(集群)部署    252
10.6.5  扩展worker节点    253
10.6.6  扩展Master节点    253
10.6.7  Airflow集群部署的具体步骤    255

第三篇  高级运维
第11章  Docker容器技术介绍    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  数据卷共享    267
11.6  自制镜像并发布    267
11.7  Docker网络    268
11.7.1  Docker的网络模式    269
11.7.2  Docker网络端口映射    270
11.8  Docker小结    270


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证