前 言
为什么要写这本书
随着信息时代的迅速发展,尤其是互联网日益融入大众生活,作为这一切背后的IT服务支撑,运维角色的作用越来越大,传统的人工运维方式已经无法满足业务的发展需求,需要从流程化、标准化、自动化去构建运维体系,其中流程化与标准化是自动化的前提条件,自动化的最终目的是提高工作效率、释放人力资源、节约运营成本、提升业务服务质量等。我们该如何达成这个目标呢?运维自动化工具的建设是最重要的途径,具体包括监控、部署变更、安全保障、故障处理、运营数据报表等。本书介绍如何使用Python语言来实现这些功能点,以及Python在我们的自动化运维之路上发挥作用,解决了哪些运维问题等。
为什么是Python?Python是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年年底发明,具有简单易学、开发效率高、运行速度快、跨平台等特点,尤其是具有大量第三方模块的支持,其中不乏优秀的运维相关组件,例如Saltstack、Ansible、Func、Fabric等。大部分运维人员为非专业开发人士,对他们而言,选择一门上手快、技术门槛低的开发语言非常重要。由于Python具有脚本语言的特点,学习资源多,社区非常活跃,且在Linux平台默认已安装等优势。Python已经是当今运维领域最流行程的开发语言之一。
目 录
第1章 系统基础信息模块详解
1.1 系统性能信息模块psutil
1.2 实用的IP地址处理模块IPy
1.3 DNS处理模块dnspython
第2章 业务服务监控详解
2.1 文件内容差异对比方法
2.2 文件与目录差异对比方法
2.3 发送电子邮件模块smtplib
2.4 探测Web服务质量方法
第3章 定制业务质量报表详解
3.1 数据报表之Excel操作模块
3.2 Python与rrdtool的结合模块
3.3 生成动态路由轨迹图
第4章 Python与系统安全
4.1 构建集中式的病毒扫描机制
4.1.1 模块常用方法说明
4.1.2 实践:实现集中式的病毒扫描
4.2 实现高效的端口扫描器
4.2.1 模块常用方法说明
4.2.2 实践:实现高效的端口扫描