多台服务器进程查看脚本(pexpect+yaml)
####前言最近做自己开发用相关服务的一个checklist,就写了这个脚本,用来在跳板机去检查各个服务器上面的相关服务是否正常####思路使用expect登录每个机器(因为安全问题,不能直接使用ssh信任),然后根据yaml文件的配置读取服务名字以及启动的进程数量去检查每个服务是否正常PS:难点是没有用端口转发也只有普通用户权限####checklist.py
#coding=utf-8
import sys
#因为我这个脚本要让很多人能运行,但是不能给他们看见我的密码算法,所以是pyc
#我这个脚本要给很多其他普通用户去用,是用我的ssh登录操作,不能放在我的home目录,所以放在tmp
sys.path.append(‘/tmp/local/lib/python2.6/site-packages/PyYAML-3.10-py2.6-linux-x86_64.egg’) #依赖yaml
sys.path.append(‘/tmp/local/lib/python2.6/site-packages/pexpect-2.4-py2.6.egg’) #依赖pexpect
import yaml
import pexpect
dataDict = yaml.load(open(‘/tmp/config.yaml’)) #将我的yaml配置load进来
def myprint(color,mes): #以前写的一个终端彩色打印的函数
‘’’使用ANSI控制码终端显示彩色’’’
d = dict(r=31, g=32, gb=36, y=33, b=34, p=35, o=37)
color = “\x1B[%d;%dm” % (1, d[color])
print “%s%s\x1B[0m” %
...