Memcached 인스턴스에 연결

이 페이지에서는 Memorystore for Memcached에 연결하는 방법을 설명합니다. Compute Engine VM 인스턴스, Google Kubernetes Engine 클러스터, Cloud Functions, App Engine 가변형 환경, App Engine 표준 환경에서 Memcached 인스턴스에 연결할 수 있습니다.

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

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

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

Memcached 인스턴스에 연결하려면 Compute Engine VM 인스턴스가 동일한 프로젝트 및 리전에 있어야 하며 Memcached 인스턴스와 동일한 네트워크 또는 VPC 네트워크에 연결되어 있어야 합니다.

  1. Linux VM에 연결합니다. Linux VM에 연결하는 단계는 Linux VM을 사용한 빠른 시작을 참조하세요. 빠른 시작에 설명된 대로 Debian 기반 이미지를 사용하여 VM 인스턴스를 만든 경우 apt-get을 사용하여 telnet을 설치합니다.

    sudo apt-get install telnet
    
  2. variables를 적절한 값으로 바꿔 터미널에서 Memcached 노드 중 하나의 IP 주소에 텔넷으로 연결합니다.

    telnet node-ip-address 11211
    

    올바르게 작동하면 프로젝트 변수로 바뀌는 [bracketed-variables]가 포함된 다음과 같은 출력이 표시됩니다.

    Trying [node-ip-address]
    Connected to [node-ip-address]
    
  3. 텔넷 세션에서 몇 가지 Memcached 명령어를 입력합니다.

    다음을 입력합니다.

    get greeting
    

    Result:

    END
    

    다음을 입력합니다.

    set greeting 1 0 11
    hello world
    

    Result:

    STORED
    

    다음을 입력합니다.

    get greeting
    

    Result:

    VALUE greeting 1 11
    hello world
    END
    

Memorystore for Memcached는 표준 오픈소스 Memcached 라이브러리를 지원합니다.

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

인스턴스와 동일한 리전에 있고 동일한 네트워크에 연결된 GKE 클러스터를 사용하여 Memcached 인스턴스에 연결할 수 있습니다.

  1. GCP Console에서 Google Kubernetes Engine 페이지로 이동합니다.
    Google Kubernetes Engine

  2. 연결하려는 GKE 클러스터를 클릭합니다. 클러스터가 없는 경우 IP 별칭을 사용하는 Memcached 인스턴스와 동일한 영역 및 리전에 클러스터를 만듭니다. IP 별칭이 사용 설정된 클러스터를 만드는 방법은 VPC 기반 클러스터 만들기를 참조하세요.

  3. 클러스터 이름 오른쪽에 있는 연결 버튼을 클릭한 다음 나타나는 창에서 Cloud Shell에서 실행 버튼을 클릭합니다.

  4. 다음 명령어를 실행하여 kubectl 명령줄 액세스를 구성합니다.

    gcloud beta container clusters get-credentials cluster-name --zone=cluster-zone --project=project-id
    
    • cluster-name은 클러스터 이름입니다.

    • cluster-zone은 클러스터가 있는 영역입니다. Memcached 인스턴스가 있는 영역이기도 합니다.

    • project-id는 클러스터와 Memcached 인스턴스가 있는 프로젝트입니다.

    명령어가 성공하면 다음 메시지가 표시됩니다.

    kubeconfig generated for cluster-name
    

    이 메시지가 표시되지 않으면 명령어에 올바른 클러스터 정보를 입력했는지 확인하세요.

  5. 클러스터의 버전이 1.8 이상이고 IP 별칭이 사용 설정된 경우 이 단계를 건너뜁니다. 클러스터의 버전이 1.7 이하거나, 버전이 1.8 이상이지만 IP 별칭을 사용 설정하지 않은 경우 인스턴스에 연결을 시도하기 전에 다음 해결 방법을 따르세요.

    해결 방법

    다음 명령어 3개를 실행합니다. 여기에서 reserved-ip-range를 인스턴스의 예약된 IP 범위로 바꿉니다.

    git clone https://github.com/bowei/k8s-custom-iptables.git
    
    cd k8s-custom-iptables/
    
    TARGETS="reserved-ip-range" ./install.sh
    
    gcloud beta memcache instances describe instance-id --region=region
    

    이 설정이 사용 설정된 클러스터를 만드는 방법을 비롯하여 IP 별칭에 대한 자세한 내용은 VPC 기반 클러스터 만들기를 참조하세요.

  6. 다음 명령어를 사용하여 bash 셸에 연결합니다.

    kubectl run -i --tty busybox --image=busybox -- sh
    
  7. 노드의 IP 주소 중 하나와 인스턴스의 포트 번호를 사용하여 Memacached 인스턴스에 텔넷으로 연결합니다.

    telnet node-ip-address 11211
    
  8. 텔넷 세션에서 몇 가지 Memcached 명령어를 입력합니다.

    다음을 입력합니다.

    get greeting
    

    Result:

    END
    

    다음을 입력합니다.

    set greeting 1 0 11
    hello world
    

    Result:

    STORED
    

    다음을 입력합니다.

    get greeting
    

    Result:

    VALUE greeting 1 11
    hello world
    END
    

Memorystore for Memcached는 표준 오픈소스 Memcached 라이브러리를 지원합니다.

다음 단계