如何在k8s集群中进行Redis slave repalication?

时间:2018-01-18 10:04:14

标签: redis kubernetes cluster-computing replication master-slave

通过这个着名的留言簿示例:

  

https://github.com/kubernetes/examples/tree/master/guestbook

它将创建Redis主/从部署和服务。它还有一个名为redis-slave的子文件夹,用于创建docker镜像并运行Redis复制命令。

  • Dockerfile
  • run.sh

问题是,如果将Redis主服务器和从服务器部署到k8s集群。然后如何运行该命令?部署一个新容器?这与已经部署的从属容器无关。

有没有更好的方法在k8s群集中运行主从服务器之间的Redis repliaciton?

3 个答案:

答案 0 :(得分:1)

您拥有的一个选项是使用helm部署redis-ha应用。

掌舵信息:https://github.com/kubernetes/helm

redis-ha掌舵应用页面:https://hub.kubeapps.com/charts/stable/redis-ha

答案 1 :(得分:0)

通常建议使用Redis Sentinel,以实现简单的主从复制和高可用性。

不幸的是,Sentinel不能很好地适应Kubernetes的世界,它还需要具有Sentinel意识的客户端才能与Redis对话。

您可以尝试使用Redis operator,它可以被视为Kubernetes的Sentinel替代品,并可以创建Redis部署,该部署可以在无需人工干预的情况下抵抗大多数故障。

答案 2 :(得分:0)

在这里,您可以在Kubernetes / Openshift OKD中设置Redis HA主从群集

基本上,您必须与VolumeClaims配合使用configMap,StatefulSet

https://reachmnadeem.wordpress.com/2020/10/01/redis-ha-master-slave-cluster-up-and-running-in-openshift-okd-kubernetes/