Esta página se ha traducido con Cloud Translation API.
Switch to English

Conéctate a una instancia de Redis

En esta página, se describe cómo conectarse a tu instancia de Redis mediante Compute Engine y Google Kubernetes Engine. También se proporcionan instrucciones para probar comandos básicos de Redis con Telnet.

Si deseas obtener una lista de los entornos de Google Cloud compatibles con Memorystore para Redis, consulta Entornos compatibles. Algunos entornos sin servidores que admite Memorystore requieren un conector de Acceso a VPC sin servidores. Consulta el requisito del conector de Acceso a VPC sin servidores para obtener más detalles.

Conéctate a una instancia de Redis desde una VM de Compute Engine mediante telnet

Puedes conectarte a la instancia de Redis desde cualquier instancia de VM de Compute Engine ubicada dentro del mismo proyecto, región y red que la instancia de Redis.

  1. Si aún no tienes una VM de Compute Engine en el mismo proyecto, región y red que tu instancia de Redis, crea una y conéctate a ella mediante los siguientes pasos:Guía de inicio rápido para usar una VM de Linux para crear el adjunto de VLAN de supervisión.

  2. Instala telnet mediante apt-get:

    sudo apt-get install telnet
    
  3. Desde la terminal, ejecuta Telnet a la dirección IP de la instancia de Redis y reemplaza variables por los valores adecuados.

    telnet instance-ip-address 6379
    

    Si se ejecuta de forma correcta, el comando mostrará este resultado:

    Trying instance-ip-address…
    Connected to instance-ip-address
    
  4. En la sesión de telnet, ingresa algunos comandos de Redis:

    Ingresa:

    PING
    

    Resultado:

    PONG
    

    Ingresa:

    SET HELLO WORLD
    

    Resultado:

    +OK
    

    Ingresa:

    GET HELLO
    

    Resultado:

    $5
    WORLD
    

Conéctate a una instancia de Redis desde una VM de Compute Engine mediante redis-cli

Puedes conectarte a la instancia de Redis desde cualquier instancia de VM de Compute Engine ubicada dentro del mismo proyecto, región y red que la instancia de Redis.

  1. Si aún no tienes una VM de Compute Engine en el mismo proyecto, región y red que tu instancia de Redis, crea una y conéctate a ella mediante los siguientes pasos: Guía de inicio rápido sobre el uso de una VM de Linux.

  2. Para instalar redis-cli en la VM de Compute Engine, ejecuta el siguiente comando desde la terminal SSH de Compute Engine:

    sudo apt-get install redis-server
    
  3. Ejecuta el siguiente comando en la terminal de Compute Engine y reemplaza variables por los valores apropiados.

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

    Ahora estás conectado a tu instancia de Redis mediante redis-cli.

  4. Una vez que termines de probar tu conexión con la instancia de Redis, debes considerar borrar la VM de Compute Engine que usaste para conectarte a la instancia de Redis. Esto te ayuda a evitar que se generen cargos en tu cuenta de facturación de Cloud.

Conéctate a una instancia de Redis que usa AUTH

En esta sección se describe cómo conectarse a una instancia de Redis que tiene habilitada la función AUTH.

  1. Si aún no tienes una VM de Compute Engine en el mismo proyecto, región y red que tu instancia de Redis, crea una y conéctate a ella mediante los siguientes pasos: Guía de inicio rápido sobre el uso de una VM de Linux.

  2. Para instalar redis-cli en la VM de Compute Engine, ejecuta el siguiente comando desde la terminal SSH de Compute Engine:

    sudo apt-get install redis-server
    
  3. Obtén la string AUTH de la instancia

  4. Ejecuta el siguiente comando a fin de usar redis-cli para autenticar y conectarte a tu instancia, y reemplaza variables por los valores apropiados:

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

    O el siguiente:

    redis-cli -h instance-ip-address
    AUTH auth-string
    
  5. Ejecuta un comando SET y GET de Redis para verificar que estableciste una conexión autenticada a tu instancia.

  6. Una vez que termines de probar tu conexión con la instancia de Redis, debes considerar borrar la VM de Compute Engine que usaste para conectarte a la instancia de Redis. Esto te ayuda a evitar que se generen cargos en tu cuenta de facturación de Cloud.

Conéctate de forma segura a una instancia de Redis mediante Stunnel y Telnet

En esta sección, se proporciona un ejemplo de cómo usar Stunnel para conectarte a una instancia de Redis que tiene habilitada TLS.

  1. Si aún no tienes una instancia de Redis que tenga TLS habilitada, crea una con las instrucciones que se indican en Crea una instancia de Redis con TLS.

  2. Si aún no tienes una VM de Compute Engine en la misma región, proyecto y red que la instancia de Redis del paso anterior, crea una y conéctate a ella con la Guía de inicio rápido sobre cómo usar una VM de Linux.

    1. Instala las herramientas necesarias para esta guía con la ejecución de los siguientes comandos:

      sudo apt-get install stunnel4
      
      sudo apt-get install telnet
      
  3. Configura tu VM de Compute Engine para usarla con Stunnel:

    1. Crea un archivo nuevo para colocar la autoridad certificada (CA) mediante la ejecución del siguiente comando:

      sudo vim /tmp/server_ca.pem
      
    2. Para ver las autoridades certificadas de tu instancia de Redis, ejecuta el siguiente comando en la terminal estándar que utilizas para administrar los recursos de Google Cloud (no la terminal de Compute Engine):

      gcloud beta redis instances describe instance-id --region=region
      

      Puede haber hasta tres CA.

    3. Copia todas las autoridades certificadas visibles, incluidas la línea -----BEGIN CERTIFICATE----- y las líneas -----END CERTIFICATE-----, y pega y guarda el contenido en el archivo server_ca.pem que creaste antes.

    4. Crea un archivo nuevo para incluir la información de configuración de Stunnel mediante la ejecución del siguiente comando:

      sudo vim /etc/stunnel/redis-client.conf
      

      Pega el siguiente texto en el archivo y reemplaza redis-instance-ip por la dirección IP de la instancia de Redis:

      output=/tmp/stunnel.log
      CAfile=/tmp/server_ca.pem
      client=yes
      pid=/var/run/stunnel.pid
      verifyChain=yes
      sslVersion=TLSv1.2
      [redis]
      accept=127.0.0.1:6378
      connect=redis-instance-ip:6378
      
    5. Reinicia Stunnel con los siguientes comandos:

      sudo stunnel /etc/stunnel/redis-client.conf
      
      sudo systemctl restart stunnel4
      
  4. Para conectarte a tu instancia de Redis mediante Telnet, ejecuta el siguiente comando:

    telnet localhost 6378
    
  5. En la sesión de Telnet, haz ping a la instancia de Redis:

    Ingrese:

    PING
    

    Resultado:

    PONG
    

Conectarse a una instancia de Redis desde un clúster de Google Kubernetes Engine

Puedes conectarte a tu instancia de Redis desde los clústeres de Google Kubernetes Engine que se encuentran en la misma región y usan la misma red que tu instancia.

Conectarse desde un pod ejecutando un shell Bash

  1. Ve a la página de GKE en Cloud Console.
    GKE
  2. Haz clic en el clúster GKE desde el que deseas conectarte. Si aún no tienes un clúster, crea uno en la misma zona y región que tu instancia de Redis con los alias IP habilitados. Para obtener instrucciones sobre cómo crear un clúster con alias de IP habilitados, consulta la documentación de alias de IP.
  3. Haz clic en el botón Conectar a la derecha del nombre de tu clúster y haz clic en el botón Ejecutar en Cloud Shell en la ventana que aparece.
  4. Configura el acceso a la línea de comandos de kubectl mediante la ejecución del siguiente comando:
    gcloud container clusters get-credentials CLUSTER_NAME --zone=CLUSTER_ZONE --project=PROJECT_ID
    • CLUSTER_NAME es el nombre de tu clúster.
    • CLUSTER_ZONE es la zona en la que se encuentra tu clúster. También debe ser la zona en la que se encuentra tu instancia de Redis.
    • PROJECT_ID es el proyecto donde existen tu clúster y tus instancias de Redis.
    Deberías recibir el mensaje de éxito: kubeconfig generated for CLUSTER_NAME
  5. Si tu clúster es de la versión 1.8 o superior y tienes habilitados los alias de IP, omite este paso. Si tu clúster es de la versión 1.7 o inferior, o tu clúster de la versión 1.8 o superior no tiene habilitados los alias de IP, sigue estos pasos alternativos antes de intentar conectarte a tu instancia:Para obtener más información sobre los alias de IP, incluido cómo crear un clúster con esta configuración habilitada, consulta la documentación de los alias de IP.
  6. Usa el siguiente comando para conectarte a un shell Bash:
    kubectl run -i --tty busybox --image=busybox -- sh
  7. Ejecuta telnet a tu instancia de Redis mediante la dirección de host y el número de puerto:
    telnet HOST-IP PORT
  8. Ingresa un comando básico de Redis para verificar la conexión:
    PING
    +PONG
  9. Para cerrar la conexión telnet, presiona Control + C (o Comando + C en Mac). Para salir de un shell Bash en tu pod, ingresa mostrar. Si terminaste y ya no necesitas conectarte a Redis, ejecuta el siguiente comando desde el directorio /k8s-custom-iptables/:
    ./uninstall.sh

Conectarse a una instancia de Redis desde un pod de Google Kubernetes Engine

Antes de comenzar, necesitas un clúster GKE. Si aún no tienes un clúster, crea uno en la misma zona y región que tu instancia de Redis con los alias IP habilitados. Para obtener instrucciones sobre cómo crear un clúster con alias de IP habilitados, consulta la documentación de alias de IP.

  1. Desde la esquina superior derecha de la consola, haz clic en el botón Activar Cloud Shell Activar Cloud Shell.
  2. Configura el acceso a la línea de comandos de kubectl mediante la ejecución del siguiente comando:
    gcloud container clusters get-credentials CLUSTER_NAME --zone CLUSTER_ZONE --project PROJECT_ID
    • CLUSTER_NAME es el nombre de tu clúster.
    • CLUSTER_ZONE es la zona en la que se encuentra tu clúster. También debe ser la zona en la que se encuentra tu instancia de Redis.
    • PROJECT_ID es el proyecto donde existen tu clúster y tus instancias de Redis.
    Deberías recibir el mensaje de éxito: kubeconfig generated for CLUSTER_NAME
  3. Si tu clúster es de la versión 1.8 o superior y tienes habilitados los alias de IP, omite este paso. Si tu clúster es de la versión 1.7 o inferior, o tu clúster de la versión 1.8 o superior no tiene habilitados los alias de IP, sigue estos pasos alternativos antes de intentar conectarte a tu instancia:Para obtener más información sobre los alias de IP, incluido cómo crear un clúster con esta configuración habilitada, consulta la documentación de los alias de IP.
  4. Usa el siguiente comando para iniciar un pod Redis mediante la ejecución de redis-cli:
    kubectl run -i --tty redisbox --image=gcr.io/google_containers/redis:v1 -- sh
  5. Ejecuta un comando redis-cli y reemplaza HOST-IP por la dirección IP del host de tu instancia de Redis:
    redis-cli -h HOST-IP info
  6. Como opción, puedes ejecutar un comando de referencia de Redis, y reemplazar otra vez HOST-IP por la dirección IP del host de tu instancia de Redis:
    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. Para salir del Pod de Redis, ingresa return. Si terminaste y ya no necesitas conectarte a Redis, ejecuta el siguiente comando desde el directorio /k8s-custom-iptables/:
    ./uninstall.sh

Qué sigue

Conéctate a tu instancia de Redis mediante una aplicación de muestra que se ejecuta en: