jenkins双向备份
方案是:1、通过keepalived实现jenkins主备,一个虚拟IP后面两个物理IP。
2、通过inotify+rsync实现master的jobs目录、workspace(可以不同步)同步到slave上的jobs、workspace,这样切换到slave的jenkins,才能保证任务是是相同的。
3、备机需要重启,以使从master同步过来的jobs内容在slave上的jenkins生效。
4、一旦切换到slave,应该立即停止master向slave的同步操作,即应该立即停止rsync同步进程,不然slave上新产生的内容会被删除掉
5、同时开启slave的rsync进程,开始反向同步
基本上有下面几个状态:
master的jenkins工作时,开启master的rsync进程,向slave同步
master的jenkins异常时,关闭master的rsync进程,关闭master的jenkins进程
slave的jenkins开始工作时,启动slave的jenkins,启动slave的rsync进程,开始向master同步
master异常恢复后,关闭slave的jenkins进程,关闭slave的rsync进程
注意这里异常判断条件是看虚拟IP指向那台物理IP,指向的认为是正常的
jenkins性能提升:http://discuss.greatops.net/t/jenkins/32
页:
[1]