mirror of
https://github.com/didi/KnowStreaming.git
synced 2025-12-24 03:42:07 +08:00
[Bugfix]修复zk standalone状态不兼容问题
This commit is contained in:
@@ -62,7 +62,8 @@ public class ClusterZookeepersManagerImpl implements ClusterZookeepersManager {
|
||||
vo.setTotalObserverCount(0);
|
||||
vo.setAliveServerCount(0);
|
||||
for (ZookeeperInfo info: infoList) {
|
||||
if (info.getRole().equals(ZKRoleEnum.LEADER.getRole())) {
|
||||
if (info.getRole().equals(ZKRoleEnum.LEADER.getRole()) || info.getRole().equals(ZKRoleEnum.STANDALONE.getRole())) {
|
||||
// leader 或者 standalone
|
||||
vo.setLeaderNode(info.getHost());
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,8 @@ public enum ZKRoleEnum {
|
||||
|
||||
OBSERVER("observer"),
|
||||
|
||||
STANDALONE("standalone"),
|
||||
|
||||
UNKNOWN("unknown"),
|
||||
|
||||
;
|
||||
|
||||
@@ -102,6 +102,10 @@ public class HealthCheckZookeeperService extends AbstractHealthCheckService {
|
||||
);
|
||||
|
||||
long value = infoList.stream().filter(elem -> ZKRoleEnum.LEADER.getRole().equals(elem.getRole())).count();
|
||||
if (value == 0) {
|
||||
// ZK 在单机模式下,leader角色就是standalone
|
||||
value = infoList.stream().filter(elem -> ZKRoleEnum.STANDALONE.getRole().equals(elem.getRole())).count();
|
||||
}
|
||||
|
||||
checkResult.setPassed(value == 1 ? Constant.YES : Constant.NO);
|
||||
return checkResult;
|
||||
|
||||
Reference in New Issue
Block a user