如何在k8s集群中重新应用Redis从机?

如何在k8s集群中重新应用Redis从机?,redis,kubernetes,cluster-computing,replication,master-slave,Redis,Kubernetes,Cluster Computing,Replication,Master Slave,通过这个著名的留言簿示例: 它将创建Redis主/从部署和服务。它还有一个子文件夹,名为redis slave,用于创建docker映像并运行redis复制命令 Dockerfile run.sh 问题是,如果将Redis主设备和从设备部署到k8s集群。那么如何运行该命令呢?部署新容器?这与已部署的从属容器无关 是否有更好的方法在k8s集群中运行的主设备和从设备之间进行Redis Repliation?您可以选择使用helm部署Redis ha应用程序 有关舵手的信息: redis-hah

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

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

  • Dockerfile
  • run.sh
问题是,如果将Redis主设备和从设备部署到k8s集群。那么如何运行该命令呢?部署新容器?这与已部署的从属容器无关


是否有更好的方法在k8s集群中运行的主设备和从设备之间进行Redis Repliation?

您可以选择使用
helm
部署
Redis ha
应用程序

有关舵手的信息:

redis-ha
helm-app页面:

redis通常用于简单的主从复制和高可用性

不幸的是,Sentinel并不适合Kubernetes world,它还需要一个支持Sentinel的客户端与Redis进行对话


您可以尝试将其视为Kubernetes对Sentinel的本机替代,并允许创建一个Redis部署,该部署可以在没有人为干预的情况下抵抗大多数类型的故障。

以下是如何在Kubernetes/Openshift OKD中设置Redis HA主从群集

基本上,您必须与VolumeClaims协作使用configMap、StatefulSet


您指的是哪个命令?run.sh命令是redis slave容器的入口点,因此当您在kubernetes上创建redis slave部署时,该命令将运行。@Fiunchino我发现使用
redis slave部署。yaml
已经包含该shell命令。因此,只要部署该清单就足够了。我还有一个问题,如果使用这种方式安装redis,如何找到
主机
端口
?因为我应该从应用程序连接到redis主机。客户端应用程序在kubernetes内部还是外部?在kubernetes集群内部。它将连接到同一集群中的redis。很好,您必须使用服务端点。运行
kubectl-n获取svc
。从这个列表中,应该有一个服务指向您的redis集群。您可以使用
格式的服务名称作为主机名,以访问您的redis clusterMy乐意为您提供帮助