我一直在尝试使用高可用性设置来设置 Enterprise Jenkins。当前的设置包括两个 jenkins master 共享同一个 jenkins home,比如 master1 和 master2,在这两个 master 上安装 jenkins-ha-monitor-1.1-1.1 rpm,比如 monitor1 和 monitor2。使用此设置,至少根据文档,HA 插件应该可以按预期工作。升级和降级脚本与文档中的类似(只是ip和接口不同,方法相同)。IE
降级
ifconfig eth0:2 关闭
用于促销
ifconfig eth0:2 the.floating.ip
现在要正确注册节点,我必须按顺序启动 master1、master2、monitor1 和 monitor2。跟踪两者的日志,我看到当服务以该顺序启动时,它们被两个监控服务正确注册为集群中的节点,并在 jenkins 控制台的 HA 状态 gui 中正确注册。
现在,当 master1 通过发送 KILL 信号被杀死时,monitor2 会识别到这一点并运行升级脚本。但是监视器一直在抛出:
2012 年 10 月 24 日下午 3:47:36 com.cloudbees.jenkins.ha.singleton.HASingleton$3 可疑信息:怀疑集群中的节点故障:jenkins-master-1-285 2012 年 10 月 24 日下午 3:47:39 com.cloudbees.jenkins.ha.singleton.HASingleton$3 可疑信息:怀疑集群中的节点故障:jenkins-master-1-285
连续不断地运行降级脚本。现在由于 master2 通过其提升脚本占用了浮动 ip,而 master1 仍然拥有该 ip,因为降级脚本未运行,因此设置最终会出现两个声称相同 ip 的框。此外,重启master1并没有做任何事情,即master1没有作为辅助节点添加到集群中,monitor1仍然不断吐出上述消息记录,浮动ip不断返回“无法连接”,master2和monitor2显示集群为master2、monitor2 和 monitor1。所以我的问题/问题是双重的 - 为什么 master1 没有被接受回集群?为什么降级脚本没有按应有的方式运行?
另外仅供参考我已经尝试过
詹金斯服务站
在这种情况下,降级脚本会运行,但是当
服务詹金斯开始
在之前停止的主服务器上运行,因为无论是否存在主 jenkins 都会运行升级脚本。在这种情况下,两个监视器注册不同的集群,例如 monitor1 : master1,monitor1 和 monitor2 : master2,monitor2。运行 ifconfig 显示此时两个 master 都占用了浮动 ip。
任何帮助表示赞赏!谢谢!