大家知道,nexus3只有收费版才有高可用。

这里,我做了一个oss版的高可用版本。

部署是在k8s(k3s)里面,通过helm charts部署。

基本逻辑是:

1、首次启动后,0号StatefulSet POD作为主,其他作为从
2、从POD监控主POD,并且通过rsync从主POD同步数据
3、当主POD挂掉,从POD通过一个健康度监测算法,以最小号的POD作为主启动,其他从POD重新从新的主POD同步数据
4、POD会根据自己的情况,给自己打上UP或STANDBY标签,Service监听标签为UP的POD

git传送门

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐