redis - 访问 Google Kubernetes Engine 上的 Redis 集群

标签 redis kubernetes google-kubernetes-engine

我已经使用 Kubernetes 提供的 examplesGoogle Kubernetes Engine 上部署了一个 Redis 集群.它按预期工作。

我正在尝试从客户端应用程序连接到这个集群。我知道 Redis 不提供加密,也不推荐将集群公开给全世界,它旨在从私有(private)和受信任的网络访问。

如果默认情况下,redis 绑定(bind)到环回接口(interface),我如何将标准(Go 或 Python)客户端库连接到集群?

最佳答案

正如 Carlos 所描述的,kubectl proxy 可能是一种方法。这里有一些替代方案。

  1. 我想说看看提供 Redis 即服务的云服务是如何做到这一点的。他们有密码验证模型吗?他们有 TLS 证书吗?了解他们如何提供身份验证,您也可以那样配置它。

  2. 如果没有身份验证,kubectl proxykubectl port-forward 将为您提供进入集群的安全隧道,因此您不必公开公共(public)互联网的 redis 服务。

  3. 使用新功能内部负载均衡器 https://cloud.google.com/kubernetes-engine/docs/how-to/internal-load-balancing .这使您可以访问您的 Redis 集群(在具有非公共(public) IP 地址的 GKE 上运行)到您网络中的其他 GCE 虚拟机。这仍然不进行身份验证/授权,但至少它没有暴露在公共(public)互联网上。

关于redis - 访问 Google Kubernetes Engine 上的 Redis 集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47535040/

相关文章:

bash - Redis 多插入问题

kubernetes - 我们如何通过 BootstrapArguments 将多个标签传递给 EKS 节点组

ruby-on-rails - 如何在 Rails 和 actioncable 中为网页实现 "watching now"功能

kubernetes - 如何在负载下安全终止Pod

kubernetes - 部署 kube-dns : No configuration has been provided 时出错

google-cloud-platform - GCP 说 "Compute Engine API has not been used in project"但它已经启用

google-compute-engine - Google 容器引擎中的 HTTPS 负载均衡器

kubernetes - 在 LoadBalancer 上设置 HTTP+HTTPs 和 TCP 端口(想转发 GitLab SSH 和 Web)

python - Celery 无法连接到哨兵 : No master found for 'mymaster'

ruby-on-rails - Rails 5 - Resque 不处理排队作业