【问题标题】:Redis Cluster data migration in two differnt Kubernetes Clusters两个不同 Kubernetes 集群中的 Redis 集群数据迁移
【发布时间】:2021-09-14 14:06:06
【问题描述】:

我们是否可以迁移在 2 个不同 Kubernetes 集群中运行的 Redis 集群数据?我们如何在两个不同 Kubernetes 集群上运行的 Redis 有状态 Pod 之间进行通信?

我们有两个 Redis 集群,它们在两个不同的 Kubernetes 集群 X 和 Y 上运行。我想将数据从 redis-X 传输到 redis-Y 集群。我们如何在 redis-X 和 redis-Y 集群之间建立连接,以便我们可以迁移数据?

感谢任何帮助或提示。

【问题讨论】:

  • 如何在 Kubernetes 集群中运行这个工具?我们在两个不同的 Kubernetes 集群上有私有 IP 范围。您将如何在两个不同的 Kubernetes 集群中运行的 Redis 集群之间建立连接?

标签: kubernetes redis redis-cluster


【解决方案1】:

在集群之间建立连接有两种可能的方法:

  1. 内置解决方案
  2. 第三方解决方案

内置解决方案

  • NodePort - 在每个节点的 IP 上的静态端口(@98​​7654331@)上公开服务。自动创建ClusterIP 服务路由到的ClusterIP 服务。您可以通过请求 <NodeIP>:<NodePort> 从集群外部联系 NodePort 服务
  • LoadBalancer - 使用云提供商的负载均衡器在外部公开服务。外部负载均衡器路由到的NodePortClusterIP 服务是自动创建的。
  • ingress(第一方和第三方实现)- 比前两个更灵活,但仅适用于 HTTP/HTTPS。

阅读更多:Kubernets servicesNGINX ingress

第三方解决方案

Istio 支持multi-cluster deployment 模型。但是,如果您没有部署服务网格,那么这样做对于单任务使用来说可能太多了。


在集群之间建立连接后,您可以使用 MIGRATE 命令或 cmets 中建议的 redis-migrate-tool 迁移 Redis。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-08
    • 1970-01-01
    • 1970-01-01
    • 2018-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-16
    相关资源
    最近更新 更多