Redis 인스턴스에 연결

Compute Engine VM 인스턴스, Google Kubernetes Engine 클러스터, Cloud Functions, App Engine 가변형 환경, App Engine 표준 환경에서 Redis 인스턴스에 액세스할 수 있습니다.

Cloud Functions로 Memorystore에 액세스하려면 먼저 VPC 네트워크의 내부 리소스에 연결의 설정 안내를 따르세요.

또한 App Engine 표준 환경으로 Memorystore에 액세스하려면 먼저 VPC 네트워크의 내부 리소스에 연결 설정 안내를 따라야 합니다.

Compute Engine VM에서 Redis 인스턴스에 연결

Redis 인스턴스와 동일한 프로젝트, 지역, 네트워크에 있는 모든 Compute Engine VM 인스턴스에서 Redis 인스턴스에 연결할 수 있습니다.

  1. Linux VM을 사용한 빠른 시작의 안내에 따라 Compute Engine VM 인스턴스를 만들고 연결합니다. Redis 인스턴스와 동일한 리전에 Compute Engine VM 인스턴스를 만들어야 합니다. 빠른 시작에 설명된 대로 Debian 8 이미지를 사용하여 VM 인스턴스를 만든 경우 apt-get을 사용하여 telnet을 설치합니다.

    sudo apt-get install telnet
    
  2. 터미널에서 Redis 인스턴스의 IP 주소를 텔넷으로 연결하고 variables를 적절한 값으로 바꿉니다.

          telnet instance-ip-address 6379
    

    성공하면 명령어가 다음 결과를 반환합니다.

          Trying instance-ip-address…
          Connected to instance-ip-address
    
  3. 텔넷 세션에서 몇 가지 Redis 명령어를 입력합니다.

    다음을 입력합니다.

    PING
    

    Result:

    PONG
    

    입력

    SET HELLO WORLD
    

    Result:

    +OK
    

    다음을 입력합니다.

    GET HELLO
    

    Result:

    $5
    WORLD
    

Redis 클라이언트를 사용하여 Redis 인스턴스에 명령어를 실행할 수도 있습니다. Redis 클라이언트를 사용하는 방법에 대한 자세한 내용은 Redis 빠른 시작 가이드를 참조하세요.

Google Kubernetes Engine 클러스터에서 Redis 인스턴스에 연결

인스턴스와 동일한 지역에 있고 동일한 네트워크를 사용하는 Google Kubernetes Engine 클러스터에서 Redis 인스턴스에 연결할 수 있습니다.

Bash 셸을 실행하는 포드에서 연결

  1. Cloud Console에서 GKE 페이지로 이동합니다.
    GKE
  2. 연결하려는 GKE 클러스터를 클릭합니다. 클러스터가 없는 경우 IP 별칭을 사용하는 Redis 인스턴스와 동일한 영역 및 지역에 클러스터를 만듭니다. 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 셸에 연결합니다.
    kubectl run -i --tty busybox --image=busybox -- sh
  7. 호스트 주소 및 포트 번호를 사용하여 Redis 인스턴스에 텔넷으로 연결합니다.
    telnet HOST-IP PORT
  8. 기본 Redis 명령어를 입력하여 연결을 확인합니다.
    PING
    +PONG
  9. 텔넷 연결을 닫으려면 Control+C(Mac에서는 Command+C)를 누르면 됩니다. Pod에서 bash 셸을 종료하려면 return을 입력합니다. 작업이 완료되어 더 이상 Redis에 연결할 필요가 없으면 /k8s-custom-iptables/ 디렉터리에서 다음 명령어를 실행합니다.
    ./uninstall.sh

Google Kubernetes Engine 포드에서 Redis 인스턴스에 연결

시작하기 전에 GKE 클러스터가 필요합니다. 클러스터가 없는 경우 IP 별칭을 사용하는 Redis 인스턴스와 동일한 영역 및 지역에 클러스터를 만듭니다. IP 별칭이 사용 설정된 클러스터를 만드는 방법은 IP 별칭 문서를 참조하세요.

  1. 콘솔의 오른쪽 상단에서 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 인스턴스에 연결