公司接管的一个小项目,客户提出了一个运维方面的需求,就是通过一条命令,或一个脚本能够获取多台服务器的各项性能。
毫无疑问,我自然想到用Python来写一个满足上述的需求的小工具。以下是详细的操作流程。
-
搭建Python第三方模块paramiko 。
详见前面的博客
-
获取要所有服务器的IP地址,用户名和密码。
因为执行paramiko模块需要这些信息。
3.编写代码。
代码主要经历两个版本。
version 1.1.1
#安装paramiko module的主机ip是167,第一个版本,没有写进代码。
vision 1.1.2
上述的代码用localhost就可以把与本机进行通讯,而不需要另外调用的shell命令的Python模块。
到此为止,项目的所有主机的内存,磁盘等信息都执行一个脚本就可以全部获取到了。后续的版本是如何格式化输出,还有利用存储,在浏览器里展示,甚至是C/S架构。想想ansible 不就是整合各种资源了诞生的。
本文转自 运维天空 51CTO博客,原文链接:http://blog.51cto.com/jason83/1965769