如何在k8s集群中做Redis slave repalication?
How to do Redis slave repalication in k8s cluster?
以这个著名的留言簿为例:
https://github.com/kubernetes/examples/tree/master/guestbook
它将创建 Redis master/slave 部署和服务。它还有一个名为 redis-slave
的子文件夹,用于创建 docker 图像和 运行 Redis 复制命令。
- Docker 文件
- run.sh
问题是,如果将Redis主从部署到k8s集群。那么如何运行那个命令呢?部署新容器?这与已经部署的从属容器无关。
在k8s集群中运行ning主从之间是否有更好的Redis复制方式?
您有一个选择是使用 helm
部署 redis-ha
应用程序。
关于头盔的信息:https://github.com/kubernetes/helm
redis-ha
helm 应用页面:https://hub.kubeapps.com/charts/stable/redis-ha
Redis Sentinel 通常被推荐用于简单的主从复制和高可用性。
不幸的是,Sentinel 并不适合 Kubernetes 世界,它还需要一个支持 Sentinel 的客户端才能与 Redis 通信。
您可以尝试 Redis operator,它可以被视为 Sentinel 的 Kubernetes 原生替代品,并允许创建无需人工干预即可抵抗大多数类型故障的 Redis 部署。
以下是如何在 Kubernetes/Openshift OKD
中设置 Redis HA 主从集群
基本上你必须使用 configMap,StatefulSet 与 VolumeClaims 协作
以这个著名的留言簿为例:
https://github.com/kubernetes/examples/tree/master/guestbook
它将创建 Redis master/slave 部署和服务。它还有一个名为 redis-slave
的子文件夹,用于创建 docker 图像和 运行 Redis 复制命令。
- Docker 文件
- run.sh
问题是,如果将Redis主从部署到k8s集群。那么如何运行那个命令呢?部署新容器?这与已经部署的从属容器无关。
在k8s集群中运行ning主从之间是否有更好的Redis复制方式?
您有一个选择是使用 helm
部署 redis-ha
应用程序。
关于头盔的信息:https://github.com/kubernetes/helm
redis-ha
helm 应用页面:https://hub.kubeapps.com/charts/stable/redis-ha
Redis Sentinel 通常被推荐用于简单的主从复制和高可用性。
不幸的是,Sentinel 并不适合 Kubernetes 世界,它还需要一个支持 Sentinel 的客户端才能与 Redis 通信。
您可以尝试 Redis operator,它可以被视为 Sentinel 的 Kubernetes 原生替代品,并允许创建无需人工干预即可抵抗大多数类型故障的 Redis 部署。
以下是如何在 Kubernetes/Openshift OKD
中设置 Redis HA 主从集群基本上你必须使用 configMap,StatefulSet 与 VolumeClaims 协作