展开全部

主编推荐语

本书带你掌握Python自动化运维的热门技术与主流开源工具。

内容简介

本书从零开始讲解Python自动化运维工具和及其使用,通过上百个实际运维场景案例,帮助读者理解并掌握自动化运维技术。

本书分为16章,内容包括Python自动化运维概述、Python基础运维技能、实战多进程、实战多线程、实战协程、自动化运维工具(Ansible)、定时任务模块(APScheduler)、执行远程命令的工具(Paramiko)、任务调度神器(Airflow)、分布式任务队列(Celery)、Docker容器技术、主流的自动化配置工具、开源配置管理平台搭建、统一监控平台Zabbix、运维开发技术、DevOps方法论等。

本书内容详尽、示例丰富,适合广大从事Python运维开发的初学者学习和参考,同时也可作为高等院校和培训机构计算机及其相关专业的教材使用。

目录

  • 版权信息
  • 内容简介
  • 前言
  • 第1章 自动化运维与Python
  • 1.1 自动化运维概述
  • 1.1.1 自动化运维势在必行
  • 1.1.2 什么是成熟的自动化运维平台
  • 1.1.3 为什么选择Python进行运维
  • 1.2 初识Python
  • 1.3 Python环境搭建
  • 1.3.1 Windows系统下的Python安装
  • 1.3.2 Linux系统下的Python安装
  • 1.4 开发工具介绍
  • 1.4.1 PyCharm
  • 1.4.2 vim
  • 1.5 Python基础语法
  • 1.5.1 数字运算
  • 1.5.2 字符串
  • 1.5.3 列表与元组
  • 1.5.4 字典
  • 1.5.5 集合
  • 1.5.6 函数
  • 1.5.7 条件控制与循环语句
  • 1.5.8 可迭代对象、迭代器和生成器
  • 1.5.9 对象赋值、浅复制、深复制
  • 1.6 多个例子实战Python编程
  • 1.6.1 实战1:九九乘法表
  • 1.6.2 实战2:发放奖金的梯度
  • 1.6.3 实战3:递归获取目录下文件的修改时间
  • 1.6.4 实战4:两行代码查找替换3或5的倍数
  • 1.6.5 实战5:一行代码的实现
  • 1.7 pip工具的使用
  • 第2章 基础运维技能
  • 2.1 文本处理
  • 2.1.1 Python编码解码
  • 2.1.2 文件操作
  • 2.1.3 读写配置文件
  • 2.1.4 解析XML文件
  • 2.2 系统信息监控
  • 2.3 文件系统监控
  • 2.4 执行外部命令subprocess
  • 2.4.1 subprocess.run()方法
  • 2.4.2 Popen类
  • 2.4.3 其他方法
  • 2.5 日志记录
  • 2.5.1 日志模块简介
  • 2.5.2 logging模块的配置与使用
  • 2.6 搭建FTP服务器与客户端
  • 2.6.1 搭建FTP服务器
  • 2.6.2 编写FTP客户端程序
  • 2.7 邮件提醒
  • 2.7.1 发送邮件
  • 2.7.2 接收邮件
  • 2.7.3 将报警信息实时发送至邮箱
  • 2.8 微信提醒
  • 2.8.1 处理微信消息
  • 2.8.2 将警告信息发送至微信
  • 第3章 实战多进程
  • 3.1 创建进程的类Process
  • 3.2 进程并发控制之Semaphore
  • 3.3 进程同步之Lock
  • 3.4 进程同步之Event
  • 3.5 进程优先级队列Queue
  • 3.6 多进程之进程池Pool
  • 3.7 多进程之数据交换Pipe
  • 第4章 实战多线程
  • 4.1 Python多线程简介
  • 4.2 多线程编程之threading模块
  • 4.3 多线程同步之Lock(互斥锁)
  • 4.4 多线程同步之Semaphore(信号量)
  • 4.5 多线程同步之Condition
  • 4.6 多线程同步之Event
  • 4.7 线程优先级队列(queue)
  • 4.8 多线程之线程池pool
  • 第5章 实战协程
  • 5.1 定义协程
  • 5.2 并发
  • 5.3 异步请求
  • 第6章 自动化运维工具Ansible
  • 6.1 Ansible的安装
  • 6.2 Ansible配置
  • 6.3 inventory文件
  • 6.4 Ansible ad-hoc模式
  • 6.5 Ansible playbooks模式
  • 第7章 定时任务模块APScheduler
  • 7.1 安装及基本概念
  • 7.1.1 APScheduler的安装
  • 7.1.2 APScheduler涉及的几个概念
  • 7.1.3 APScheduler的工作流程
  • 7.2 配置调度器
  • 7.3 启动调度器
  • 7.4 调度器事件监听
  • 第8章 执行远程命令的工具Paramiko
  • 8.1 介绍几个重要的类
  • 8.1.1 通道类
  • 8.1.2 传输类
  • 8.1.3 SSHClient类
  • 8.2 Paramiko的使用
  • 8.2.1 安装Paramiko
  • 8.2.2 基于用户名和密码的SSHClient方式登录
  • 8.2.3 基于用户名和密码的Transport方式登录并实现上传与下载
  • 8.2.4 基于公钥密钥的SSHClient方式登录
  • 8.2.5 基于公钥密钥的Transport方式登录
  • 第9章 分布式任务队列Celery
  • 9.1 Celery简介
  • 9.2 安装Celery
  • 9.3 安装RabbitMQ或Redis
  • 9.3.1 安装RabbitMQ
  • 9.3.2 安装Redis
  • 9.4 第一个Celey程序
  • 9.5 第一个工程项目
  • 9.6 Celery架构
  • 9.7 Celery队列
  • 9.8 Celery Beat任务调度
  • 9.9 Celery远程调用
  • 9.10 监控与管理
  • 9.10.1 Celery命令行实用工具
  • 9.10.2 Web实时监控工具Flower
  • 9.10.3 Flower的使用方法
  • 第10章 任务调度神器Airflow
  • 10.1 Airflow简介
  • 10.1.1 DAG
  • 10.1.2 操作符——Operators
  • 10.1.3 时区——timezone
  • 10.1.4 Web服务器——webschmerver
  • 10.1.5 调度器——schduler
  • 10.1.6 工作节点——worker
  • 10.1.7 执行器——Executor
  • 10.2 Airflow安装与部署
  • 10.2.1 在线安装
  • 10.2.2 离线安装
  • 10.2.3 部署与配置(以SQLite为知识库)
  • 10.2.4 指定依赖关系
  • 10.2.5 启动scheduler
  • 10.3 Airflow配置MySQL知识库和LocalExecutor
  • 10.4 Airflow配置Redis和CeleryExecutor
  • 10.5 Airflow任务开发Operators
  • 10.5.1 Operators简介
  • 10.5.2 BaseOperator简介
  • 10.5.3 BashOperator的使用
  • 10.5.4 PythonOperator的使用
  • 10.5.5 SSHOperator的使用
  • 10.5.6 HiveOperator的使用
  • 10.5.7 如何自定义Operator
  • 10.6 Airflow集群、高可用部署
  • 10.6.1 Airflow的四大守护进程
  • 10.6.2 Airflow的守护进程是如何一起工作的
  • 10.6.3 Airflow单节点部署
  • 10.6.4 Airflow多节点(集群)部署
  • 10.6.5 扩展worker节点
  • 10.6.6 扩展Master节点
  • 10.6.7 Airflow集群部署的具体步骤
  • 第11章 Docker容器技术介绍
  • 11.1 Docker概述
  • 11.2 Docker解决什么问题
  • 11.3 Docker的安装部署与使用
  • 11.3.1 安装Docker引擎
  • 11.3.2 使用Docker
  • 11.3.3 Docker命令的使用方法
  • 11.4 卷的概念
  • 11.5 数据卷共享
  • 11.6 自制镜像并发布
  • 11.7 Docker网络
  • 11.7.1 Docker的网络模式
  • 11.7.2 Docker网络端口映射
  • 11.8 Docker小结
  • 第12章 主流自动化配置工具
  • 12.1 配置引擎CFEngine
  • 12.1.1 使用CFEngine的四个理由
  • 12.1.2 CFEngine的安装
  • 12.1.3 CFEngine的配置
  • 12.1.4 CFEngine政策示例
  • 12.2 自动化运维工具Chef
  • 12.2.1 Chef简介
  • 12.2.2 Chef的安装
  • 12.2.3 Chef的使用
  • 12.3 Puppet
  • 12.3.1 Puppet简介
  • 12.3.2 Puppet安装和配置
  • 12.3.3 Puppet配置语言
  • 12.3.4 编写第一个配置文件
  • 12.4 SaltStack
  • 12.4.1 SaltStack的简介
  • 12.4.2 SaltStack的安装与配置
  • 12.4.3 SaltStack的使用
  • 第13章 开源配置管理平台搭建
  • 13.1 open-cmdb
  • 13.1.1 open-cmdb功能介绍
  • 13.1.2 open-cmdb开发环境部署
  • 13.1.3 open-cmdb生产环境部署
  • 13.2 蓝鲸配置平台
  • 13.2.1 蓝鲸配置平台系统架构
  • 13.2.2 蓝鲸配置平台环境快速部署
  • 第14章 统一监控平台Zabbix
  • 14.1 Zabbix主要功能
  • 14.2 Zabbix平台的技术术语
  • 14.3 Zabbix的主要模块
  • 14.4 Zabbix的安装要求
  • 14.5 Zabbix的安装:从安装包进行安装
  • 14.6 Zabbix的安装:从容器进行安装
  • 第15章 运维开发相关技术
  • 15.1 前端开发之Vue.js
  • 15.1.1 新手学习Vue.js的先后顺序
  • 15.1.2 使用Vue.js实现一个demo
  • 15.1.3 使用vue-cli创建工程并部署
  • 15.1.4 流行的Vue.js UI库
  • 15.1.5 几个开源的Vue.js管理项目
  • 15.2 后端接口开发之FastAPI
  • 15.2.1 FastAPI的安装
  • 15.2.2 编写一个demo
  • 15.2.3 安全与中间件
  • 15.2.4 SQL与数据库
  • 15.2.5 测试与调试
  • 15.3 WebSocket开发
  • 15.3.1 WebSocket client的实现
  • 15.3.2 WebSocket Server的实现
  • 15.3.3 实现一个安全的WebSocket
  • 15.3.4 基于WebSocket实现一个webshell
  • 15.3.5 与主流框架集成的WebSocket
  • 第16章 DevOps方法论
  • 16.1 什么是DevOps
  • 16.2 DevOps成功的关键
  • 16.3 DevOps最常用的10个工具
  • 16.4 DevOps能为企业带来哪些收益
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。