SVN化的WEB目录更新方案以及管理服务器群的PSSH并行工具的使用
1,Foreword--前言
对于系统管理员来说,大量服务器上操作相同的命令是不可避免的,但是这种工作重复枯燥,而且容易出错,尤其在文件同步问题上,对于网站系统来讲,一般往往是多机互备的模式,文件需要大量的同步工作,同时要控制版本问题,及时做好备份,我们目前初步定了一个方案,版本控制采用SVN的方式,分发工具我们采用pssh
2,Description--SVN以及PSSH介绍
SVN就不多说了,大家网上搜索资料,很多,这里面主要介绍PSSH工具,pssh是一个简单的字符界面并发向多个服务器发送指令进行执行的工具。适合一次性向集群大量服务器发送相同指令(并观察输出)。
如果需要图形界面的话,需要采用 ClusterSSH,比较简陋。同时提醒一下,PNUKE命令可是很强大的一个命令呢。
4.6 PSSH 命令格式pssh -h host.list -t 10000 -l root -P "svn update /web/path/ --username admin --password admin"再次执行就没有报错了,看了加上双引号,注意空格,尤其是运行有多个参数的命令时候,尤为要注意,多试一下,尤其是涉及文件路径的,往往容易出错,比较,有时候把路径放在命令最后,往往能解决一下意想不到的错误。
5.5 PSSH 执行报pssh Timed out, Killed by signal 9错误
分析:一看是看到这个错误,有点蒙,这是怎么回事?进程被杀了,命令好像没有执行完毕,后来在上面提及的官方文档中发现了问题的关键所在;
-t参数,这个参数是控制命令的运行时间的,正常情况下,如果省略这个参数,那么命令的默认超期时间是60S,所以如果你运行SVN CO这样的命令的话,很容易超出时间,加上-t参数就可了。
注意:PSSH命令有默认超期时间,但是PSCP是没有这个问题的。