批量重载nginx配置

日常web维护中,修改nginx.conf配置文件是很正常的事,如果你只有几台,修改完直接reload重新加载配置就可以了,但是如果你维护多台nginx服务器(50+),要全部手工操作,那估计是手敲碎的节奏,所以要尽可能用自动化脚本来完成,今天我们就来分享一个完成批量配置文件加载脚本(在前人脚本上进行了修改,使变得更结构化和易读了),脚本的实现主要利用到了paramiko模块,脚本代码如下:

脚本解释,前几行定义了变量和要运行的命令,get_ip()函数得到要操作的ip列表,主函数中用循环在每台机器上执行cmd变量的命令,实际执行操作的命令行是stdin,stdout,stderr = ssh.exec_command(cmd),traceback是处理栈生成错误信息,这个模块会获取比较详细的异常信息,traceback.format_exc()是返回字符串形式的错误信息。