pexpect

Python自动化运维:技术与最佳实践 PDF高清完整版|网盘下载内附地址提取码|

夙愿已清 提交于 2020-08-11 21:00:38
内容简介: 《Python自动化运维:技术与最佳实践》一书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵、深和实践角度探讨Python在运维领域应用的著作;一方面本书的作者是中国运维领域的“偶像级”人物,本书是他在天涯社区和腾讯近10年工作经验的结晶。因为作者实战经验丰富,所以能高屋建瓴、直指痛处,围绕Python自动化运维这个主题,不仅详细介绍了系统基础信息、服务监控、数据报表、系统安全等基础模块,而且深入讲解了自动化操作、系统管理、配置管理、集群管理及大数据应用等高级功能。最重要的是,完整重现了4个来自实际生产环境的不同功能运维平台的综合案例,展示了完整的平台架构及开发流程。 全书一共16章:基础篇(1-4章)详细介绍了系统基础信息、业务服务监控、定制业务质量报表、系统安全等基础和常用模块;高级篇(5-12章)深入讲解了批量运维管理器pexpect、paramiko、Fabric,集中化管理平台Ansible、Saltstack,统一网络控制器Func等高级功能,涵盖自动化操作、系统管理、配置管理、集群管理及大数据应用等主题;案例篇(13-16章)详细介绍了4个来自不同平台的运维案例,如何从零开始打造一个B/S自动化运维平台、如何打造Linux系统安全审计功能、如何构建分布式质量监控平台、如何构建桌面版C/S自动化运维平台,这4个案例均来自实际生产环境。

Python自动化运维 技术与最佳实践PDF高清完整版免费下载|百度云盘

我与影子孤独终老i 提交于 2020-08-04 09:17:47
百度云盘:Python自动化运维 技术与最佳实践PDF高清完整版免费下载 提取码:l7cd 内容简介 本书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵、深和实践角度探讨Python在运维领域应用的著作;一方面本书的作者是中国运维领域的“偶像级”人物,本书是他在天涯社区和腾讯近10年工作经验的结晶。因为作者实战经验丰富,所以能高屋建瓴、直指痛处,围绕Python自动化运维这个主题,不仅详细介绍了系统基础信息、服务监控、数据报表、系统安全等基础模块,而且深入讲解了自动化操作、系统管理、配置管理、集群管理及大数据应用等高级功能。最重要的是,完整重现了4个来自实际生产环境的不同功能运维平台的综合案例,展示了完整的平台架构及开发流程。 全书一共16章:基础篇(1-4章)详细介绍了系统基础信息、业务服务监控、定制业务质量报表、系统安全等基础和常用模块;高级篇(5-12章)深入讲解了批量运维管理器pexpect、paramiko、Fabric,集中化管理平台Ansible、Saltstack,统一网络控制器Func等高级功能,涵盖自动化操作、系统管理、配置管理、集群管理及大数据应用等主题;案例篇(13-16章)详细介绍了4个来自不同平台的运维案例,如何从零开始打造一个B/S自动化运维平台、如何打造Linux系统安全审计功能、如何构建分布式质量监控平台、如何构建桌面版C

How to capture inputs and outputs of a child process?

让人想犯罪 __ 提交于 2020-07-08 04:58:40
问题 I'm trying to make a program which takes an executable name as an argument, runs the executable and reports the inputs and outputs for that run. For example consider a child program named "circle". The following would be desired run for my program: $ python3 capture_io.py ./circle Enter radius of circle: 10 Area: 314.158997 [('output', 'Enter radius of circle: '), ('input', '10\n'), ('output', 'Area: 314.158997\n')] I decided to use pexpect module for this job. It has a method called interact

python学习之自动化运维项目

血红的双手。 提交于 2020-05-05 10:21:30
项目实战: CMDB自动化资产扫描 1. 项目介绍 本项目通过KVM虚拟化搭建Linux系统集群,使用 Ansible实现Linux集群下的批量部署与自动化管理, 实现Web形式的自动化运维系统,集中批量控制服务器, 最终实现能支撑1000台实例的环境提供管理和自 动化任务, 提高运维工程师的工作质量和效率。 项目基于HTTP实现自动化任务接受和响应接口设计, 基于MySQL用作的关系型数据存取, 基于Redis的任务锁机制和消息队列, 基于MongoDB的事件日志 记录, 最终实现邮件通知功能、敏感数据加密功能、日志事件记录功能。 这个文档主要目标是实现自动化资产扫描, 扫描指定网段的服务器资产信息。 互联网快速发展 网站用户规模、使用快速上升 要求庞大系统支撑能力 更加快速的运维效率应对突发流量 更加自动化的方式减少人工投入成本 更加可靠的技术手段,保障系统的稳定 云时代 腾讯云、阿里云、亚马逊云、青云等云厂商的市场份额不断增加 大部分技术架构设计不再以网络设计、IDC和系统硬件等方面作为重点 运维基础的、繁琐的工作逐步减少 小公司也不再需要一个运维工程师或者系统工程师 结论: 在这样的时代背景下, 大型互联网公司为了应对市场的快速变化,就需要运维自动化。 2. 项目技术分析 运维自动化难点和痛点 开发人员: 没有系统管理、网络管理等相关运维工作经验,项目设计往往是大打折扣的。

Method expect of pexpect python module breaks when matching a string in old output

戏子无情 提交于 2020-04-30 07:43:53
问题 I'm trying to work with gdb remotely, using pexpect. This is my current code: child = pexpect.spawn("ssh root@192.168.3.10 \"gdb\"") child.logfile = sys.stdout child.expect("password:") child.sendline("xxxx") child.expect("(gdb)") child.sendline("attach 9813") child.expect("(gdb)") child.sendline("info registers") child.expect("(gdb)") child.sendcontrol('c') And this is a part of my console output: (...) GNU gdb (GDB) 7.4.1-debian (...) For bug reporting instructions, please see: <http://www

python pexpect clearing or flushing the line

半腔热情 提交于 2020-04-08 09:14:30
问题 I am trying to clear any characters on the line after recovering from an unknown state, as in some cases they contain prompts and other keywords that I use in future expect method calls. I have tried multiple approaches with mixed results, as I keep running into non-expected behaviors. Seen unexpected behaviors (using pexpect V3.3 with Python 2.7.9): After performing the following code, when I subsequently try to read from the buffer, occasionally I see erratic behavior where only part of the

使用 Python 在 Linux 上实现一键回归测试

时间秒杀一切 提交于 2020-02-07 11:30:34
从代码库迁出代码 —- pexpect 的使用 测试人员从代码库(例如 CVS )迁出代码的过程中,需要手动输入访问密码,而 Python 提供了 Pexpect 模块则能够将手动输入密码这一过程自动化。当然 Pexpect 也可以用来和 ssh、ftp、passwd、telnet 等命令行进行自动化交互。这里我们以 CVS 为例展示如何利用 Pexpect 从代码库迁出代码。 清单 1. 用 pexpect 迁出代码库代码 try : chkout_cmd = 'cvs co project_code' #从代码库迁出 project_code 的内容 child = pexpect . spawn ( chkout_cmd ) child . expect ( 'password:' ) child . sendline ( 'your-password' ) #请替换"your-password"为真实密码 child . interact ( ) except : pass #忽略迁出代码中的错误 在清单 1 中,我们用命令”cvs co project_code”从代码库中迁出了 project_code 的内容,我们也可以用该命令来更新已经迁出的代码。只需要将命令”cvs update” 传给类 pexpect.spawn()即可,详细的实现请参考代码文件。这里

python常用模块及第三方库功能整理简介

谁说我不能喝 提交于 2020-01-28 17:06:41
前言:   Python吸引人的一个出众的优点就是它有众多的第三方库函数,可以更高效率的实现开发,经过整理与比对,整理了运维相关的常用模块,并将其功能简介,对其中重要的常用模块,接下来的博客会进行相应的详细介绍与功能使用介绍。 Python运维常用的20个库: 1、psutil是一个跨平台库(https://github.com/giampaolo/psutil) 能够实现获取系统运行的进程和系统利用率(内存,CPU,磁盘,网络等),主要用于系统监控,分析和系统资源及进程的管理。 2、IPy(http://github.com/haypo/python-ipy),辅助IP规划。 3、dnspython(http://dnspython.org)Python实现的一个DNS工具包。 4、difflib:difflib作为Python的标准模块,无需安装,作用是对比文本之间的差异。 5、filecmp:系统自带,可以实现文件,目录,遍历子目录的差异,对比功能。 6、smtplib:发送电子邮件模块 7、pycurl(http://pycurl.sourceforge.net)是一个用C语言写的libcurl Python实现,功能强大,支持的协议有:FTP,HTTP,HTTPS,TELNET等,可以理解为Linux下curl命令功能的Python封装。 8、XlsxWriter