连接到 Redis 实例

本页面介绍了如何使用 Compute Engine 和 Google Kubernetes Engine 连接到 Redis 实例。还介绍了如何使用 Telnet 测试基本 Redis 命令。

如需查看 Memorystore for Redis 支持的 Google Cloud 环境列表,请参阅支持的环境。Memorystore 支持的一些无服务器环境需要无服务器 VPC 访问通道连接器。如需了解详情,请参阅无服务器 VPC 访问通道连接器要求

使用 Telnet 从 Compute Engine 虚拟机连接到 Redis 实例

您可以从 Redis 实例所在的同一项目、区域和网络中的任何 Compute Engine 虚拟机实例连接到 Redis 实例。

  1. 如果您的 Redis 实例所在的项目、区域和网络中还没有 Compute Engine 虚拟机,请创建一个虚拟机并按照 Linux 虚拟机使用快速入门中的说明连接到该虚拟机。

  2. 使用 apt-get 安装 telnet

    sudo apt-get install telnet
    
  3. 从该终端通过 telnet 连接到 Redis 实例的 IP 地址,并将 variables 替换为适当的值。

    telnet instance-ip-address 6379
    

    如果成功,该命令将返回以下结果:

    Trying instance-ip-address…
    Connected to instance-ip-address
    
  4. 在 telnet 会话中,输入一些 Redis 命令:

    输入:

    PING
    

    Result:

    PONG
    

    输入

    SET HELLO WORLD
    

    Result:

    +OK
    

    输入:

    GET HELLO
    

    结果:

    $5
    WORLD
    

使用 redis-cli 从 Compute Engine 虚拟机连接到 Redis 实例

您可以从 Redis 实例所在的同一项目、区域和网络中的任何 Compute Engine 虚拟机实例连接到 Redis 实例。

  1. 如果您的 Redis 实例所在的项目、区域和网络中还没有 Compute Engine 虚拟机,请创建一个虚拟机并按照 Linux 虚拟机使用快速入门中的说明连接到该虚拟机。

  2. 从 Compute Engine SSH 终端运行以下命令,以在 Compute Engine 虚拟机上安装 redis-cli

    sudo apt-get install redis-server
    
  3. Compute Engine 终端中运行以下命令,将 variables 替换为适当的值。

    redis-cli -h redis-instance-ip-address
    

    您现在已使用 redis-cli 连接到 Redis 实例。

  4. 完成与 Redis 实例的连接测试后,您应该考虑删除用于连接到 Redis 实例的 Compute Engine 虚拟机。这样做可以避免您的 Google Cloud 帐号产生费用。

连接到使用 AUTH 的 Redis 实例

本部分介绍如何连接到启用了 AUTH 功能的 Redis 实例。

  1. 如果您的 Redis 实例所在的项目、区域和网络中还没有 Compute Engine 虚拟机,请创建一个虚拟机并按照 Linux 虚拟机使用快速入门中的说明连接到该虚拟机。

  2. 从 Compute Engine SSH 终端运行以下命令,以在 Compute Engine 虚拟机上安装 redis-cli

    sudo apt-get install redis-server
    
  3. 获取实例的 AUTH 字符串

  4. 运行以下命令以使用 redis-cli 进行身份验证并连接到您的实例,将 variables 替换为适当的值:

    redis-cli -h instance-ip-address -a auth-string
    

    或:

    redis-cli -h instance-ip-address
    AUTH auth-string
    
  5. 运行 Redis SETGET 命令以验证是否与实例建立了经过身份验证的连接。

  6. 完成与 Redis 实例的连接测试后,您应该考虑删除用于连接到 Redis 实例的 Compute Engine 虚拟机。这样做可以避免您的 Google Cloud 帐号产生费用。

从 Google Kubernetes Engine 集群连接到 Redis 实例

您可以从与实例位于同一区域并使用同一网络的 Google Kubernetes Engine 集群连接到 Redis 实例。

从运行 bash shell 的 pod 进行连接

  1. 转到 Cloud Console 中的 GKE 页面。
    GKE
  2. 点击要从其建立连接的 GKE 集群。如果您尚不具备集群,请在 Redis 实例所在的地区和区域中创建启用了 IP 别名的集群。要查看说明了解如何创建启用了 IP 别名的集群,请参阅 IP 别名文档
  3. 点击集群名称右侧的连接按钮,然后点击所显示的窗口中的在 Cloud Shell 中运行按钮。
  4. 通过运行以下命令来配置 kubectl 命令行访问权限:
    gcloud container clusters get-credentials CLUSTER_NAME --zone=CLUSTER_ZONE --project=PROJECT_ID
    • CLUSTER_NAME 是集群的名称。
    • CLUSTER_ZONE 是集群所在的地区。它还必须是 Redis 实例所在的地区。
    • PROJECT_ID 是集群和 Redis 实例所在的项目。
    您应该会收到成功消息:kubeconfig generated for CLUSTER_NAME
  5. 如果您的集群是版本 1.8 或更高版本启用了 IP 别名,请跳过此步骤。如果您的集群是版本 1.7 或更低版本,或者集群为版本 1.8 或更高版本但未启用 IP 别名,请在尝试连接到实例之前,按照以下解决方法步骤操作:如需详细了解 IP 别名(包括如何创建启用了此设置的集群),请参阅 IP 别名文档
  6. 使用以下命令连接到 bash shell:
    kubectl run -i --tty busybox --image=busybox -- sh
  7. 使用主机地址和端口号建立与 Redis 实例的 telnet 连接:
    telnet HOST-IP PORT
  8. 输入基本 Redis 命令来验证连接:
    PING
    +PONG
  9. 要关闭 telnet 连接,请按 Control+C(在 Mac 上按 Command+C)。要退出 pod 中的 bash shell,请输入 return。如果您已完成操作,不再需要连接到 Redis,请从 /k8s-custom-iptables/ 目录运行以下命令:
    ./uninstall.sh

从 Google Kubernetes Engine pod 连接到 Redis 实例

开始之前,您需要一个 GKE 集群。如果您尚不具备集群,请在 Redis 实例所在的地区和区域中创建启用了 IP 别名的集群。要查看说明了解如何创建启用了 IP 别名的集群,请参阅 IP 别名文档

  1. 在 Console 的右上角,点击激活 Cloud Shell 激活 Cloud Shell 按钮。
  2. 通过运行以下命令来配置 kubectl 命令行访问权限:
    gcloud container clusters get-credentials CLUSTER_NAME --zone CLUSTER_ZONE --project PROJECT_ID
    • CLUSTER_NAME 是集群的名称。
    • CLUSTER_ZONE 是集群所在的地区。它还必须是 Redis 实例所在的地区。
    • PROJECT_ID 是集群和 Redis 实例所在的项目。
    您应该会收到成功消息:kubeconfig generated for CLUSTER_NAME
  3. 如果您的集群是版本 1.8 或更高版本启用了 IP 别名,请跳过此步骤。如果您的集群是版本 1.7 或更低版本,或者集群为版本 1.8 或更高版本但未启用 IP 别名,请在尝试连接到实例之前,按照以下解决方法步骤操作:如需详细了解 IP 别名(包括如何创建启用了此设置的集群),请参阅 IP 别名文档
  4. 使用以下命令启动运行 redis-cli 的 Redis pod:
    kubectl run -i --tty redisbox --image=gcr.io/google_containers/redis:v1 -- sh
  5. 运行 redis-cli 命令,将 HOST-IP 替换为 Redis 实例的主机 IP 地址:
    redis-cli -h HOST-IP info
  6. (可选)运行 Redis benchmark 命令,再次将 HOST-IP 替换为 Redis 实例的主机 IP 地址:
    redis-benchmark -c 100 -n 100000 -d 1024 -r 100000 -t PING,SET,GET,INCR,LPUSH,RPUSH,LPOP,RPOP,SADD,SPOP,MSET -h HOST-IP -q
  7. 要退出 Redis pod,请输入 return。如果您已完成操作,不再需要连接到 Redis,请从 /k8s-custom-iptables/ 目录运行以下命令:
    ./uninstall.sh

后续步骤

使用在以下位置运行的示例应用连接到 Redis 实例: