Memorystore for Valkey 인스턴스에 연결

이 페이지에서는 Memorystore for Valkey 인스턴스에 연결하는 방법을 설명합니다.

고객 지원

사용할 연결 클라이언트에 관한 예시와 안내는 클라이언트 라이브러리 코드 샘플을 참조하세요

방화벽에서 포트 허용

방화벽에서 올바른 포트를 허용하지 않으면 Memorystore for Valkey에서 사용하는 포트를 방화벽이 차단할 수 있으므로 인스턴스에 연결 오류가 발생할 수 있습니다.

인스턴스의 모든 Private Service Connect 엔드포인트에 대해 TCP 포트 6379와 TCP 포트 11000~13047을 허용해야 합니다. 자세한 내용은 문제 해결을 참조하세요.

리전 간 액세스

인스턴스가 있는 리전과 다른 리전에 있는 클라이언트에서 Memorystore for Valkey 인스턴스에 액세스할 수 있습니다.

클러스터 모드 사용 설정 인스턴스에 연결

이 섹션에서는 Memorystore for Valkey 클러스터 모드 사용 설정 인스턴스에 연결하는 방법을 설명합니다.

인스턴스의 검색 엔드포인트 보기

각 클러스터 모드 사용 설정 인스턴스에는 클라이언트가 연결하는 검색 엔드포인트가 있습니다. 이 엔드포인트는 IP 주소와 포트 번호의 조합입니다.

Google Cloud 콘솔 또는 gcloud CLI를 사용하여 Memorystore for Valkey 인스턴스의 검색 엔드포인트를 볼 수 있습니다.

gcloud

인스턴스의 검색 엔드포인트를 보려면 인스턴스 정보 보기에 설명된 대로 describe gcloud CLI를 실행합니다.

출력은 다음과 비슷하게 표시됩니다.

authorizationMode: AUTH_DISABLED
createTime: '2024-08-06T22:02:55.224704101Z'
deletionProtectionEnabled: false
engineVersion: VALKEY_7_2
name: projects/myproject/locations/us-central1/instances/my-instance
nodeConfig:
  sizeGb: 6.5
nodeType: STANDARD_SMALL
persistenceConfig:
  mode: DISABLED
endpoints:
- connections:
  - pscAutoConnection:
       connectionType: CONNECTION_TYPE_DISCOVERY
       forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-ec00907a-3ee3-4740-8092-ae832428f8e4
       ipAddress: 10.128.0.58
       network: projects/my-project/global/networks/default
       port: 6379
       projectId: my-project
       pscConnectionId: '38876592440606778'
       serviceAttachment: projects/129109085717/regions/us-east1/serviceAttachments/gcp-memorystore-auto-58e78f71-fdb7-48-psc-sa
    - pscAutoConnection:
       forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-5ce5518f-1c59-4b46-aa74-799fad70d7b1
       ipAddress: 10.128.0.59
       network: projects/my-project/global/networks/default
       port: 6379
       projectId: my-project
       pscConnectionId: '38876592440606779'
       serviceAttachment: projects/129109085717/regions/us-east1/serviceAttachments/gcp-memorystore-auto-58e78f71-fdb7-48-psc-sa-2
replicaCount: 2
shardCount: 5
state: ACTIVE
transitEncryptionMode: TRANSIT_ENCRYPTION_DISABLED
uid: 869f2d09-d20b-46d8-94ba-be83c48ceb54
updateTime: '2024-08-06T22:18:59.389980051Z'
zoneDistributionConfig:
  mode: MULTI_ZONE

connectionType: CONNECTION_TYPE_DISCOVERY 항목의 endpoints: 섹션에 나열된 엔드포인트 주소와 포트 번호를 기록해 둡니다. 이 두 값을 함께 사용하면 인스턴스의 검색 엔드포인트가 됩니다.

valkey-cli를 사용하여 Compute Engine VM에서 연결

Memorystore 인스턴스의 승인된 네트워크를 사용하는 모든 Compute Engine VM에서 Memorystore for Valkey 클러스터 인스턴스에 연결할 수 있습니다.

인스턴스에 연결하려면 다음 단계를 따르세요.

  1. Memorystore for Valkey 인스턴스에 승인된 네트워크를 사용하는 Linux Compute Engine VM이 아직 없으면 VM을 만들고 빠른 시작: Linux VM 만들기를 따라 연결합니다.

  2. Valkey 설치 의 안내에 따라 Compute Engine VM에 valkey-cli을(를) 설치합니다.

  3. 인스턴스의 검색 엔드포인트를 보고 기록해 둡니다.

  4. 다음 명령어를 실행하여 인스턴스의 검색 엔드포인트에 연결합니다.

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c
    

    각 항목의 의미는 다음과 같습니다.

    • DISCOVERY_ENDPOINT_ADDRESS 및 PORT_NUMBER 은 이전 단계에서 기록한 값입니다.
  5. CLUSTER SHARDS 명령어를 실행하여 노드 토폴로지를 봅니다. 노드의 IP 주소와 포트 번호 중 하나를 기록해 둡니다.

  6. 다음 명령어를 실행하여 원하는 노드에 연결합니다.

    valkey-cli -h NODE_IP_ADDRESS -p NODE_PORT -c
    

    다음을 바꿉니다.

    • NODE_IP_ADDRESS는 이전 단계에서 찾은 노드의 IP 주소입니다.
    • NODE_PORT는 이전 단계에서 찾은 노드의 포트 번호입니다.
  7. 노드에 연결되면 일부 Valkey 명령어를 입력합니다.

    입력:

    PING
    

    결과:

    PONG
    

    입력

    SET HELLO WORLD
    

    결과:

    OK
    

    다음을 입력합니다.

    GET HELLO
    

    결과:

    "WORLD"
    
  8. Valkey 노드에 대한 연결 테스트를 완료한 후 Valkey 인스턴스에 연결하는 데 사용한 Compute Engine VM을 삭제하는 것을 고려해야 합니다. 이렇게 하면 Cloud Billing 계정에 비용이 청구되지 않습니다.

전송 중인 데이터 암호화가 사용 설정된 인스턴스에 연결

이 섹션에서는 전송 중인 데이터 암호화가 사용 설정된 Memorystore for Valkey 클러스터 모드 사용 설정 인스턴스에 연결하는 방법의 예시를 제공합니다.

  1. 이전 단계의 Valkey 인스턴스와 동일한 승인된 네트워크를 사용하는 Compute Engine VM이 아직 없으면 VM을 만들고 Linux VM을 사용한 빠른 시작에 따라 연결합니다.

    1. Compute Engine VM 에 valkey-cli 버전 6.0 이상을 설치하려면 Valkey 설치의 안내를 따르세요.
  2. 클라이언트에 CA 인증서 설치의 안내에 따라 Linux VM에 인스턴스의 인증 기관 (CA) 인증서를 설치합니다.

  3. 인스턴스의 검색 엔드포인트를 보고 엔드포인트의 IP 주소와 포트 번호를 기록해 둡니다.

  4. 다음 명령어를 실행하여 인스턴스의 검색 엔드포인트에 연결합니다.

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem
    

    다음을 바꿉니다.

    • DISCOVERY_ENDPOINT_ADDRESS: 이전 단계에서 기록한 검색 엔드포인트의 IP 주소
    • PORT_NUMBER: 이전 단계에서 기록한 포트 번호

    valkey-cli 지원 모드를 사용 설정하려면 -c 스위치를 사용합니다. 이 스위치를 제공하지 않으면 연결된 샤드와 다른 샤드의 키에 액세스하려고 할 때 인스턴스에서 MOVED 오류를 반환합니다. 하지만 스위치를 사용하면 클라이언트가 오류 응답에 제공된 주소에 자동으로 다시 연결됩니다.

    인스턴스에서 Identity and Access Management (IAM) 인증 또는 기본 토큰 기반 인증을 사용 설정하는 경우 전송 계층 보안 (TLS) 플래그와 함께 인증 사용자 인증 정보를 제공해야 합니다. 예를 들면 다음과 같습니다.

    valkey-cli -h DISCOVERY_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem --user USERNAME -a TOKEN
    

    다음을 바꿉니다.

    • USERNAME: 인스턴스의 사용자 이름
    • TOKEN: 인증 토큰

    인증 사용자 인증 정보 생성 또는 관리에 대한 자세한 내용은 IAM 인증 관리 및 기본 토큰 기반 인증을 사용하여 인스턴스에 대한 보안 액세스를 참조하세요.

  5. CLUSTER SHARDS 명령어를 실행하여 노드 토폴로지를 봅니다. 노드 중 하나의 IP 주소와 포트 번호를 기록해 둡니다.

  6. 다음 명령어를 실행하여 노드에 연결합니다.

    valkey-cli -h NODE_IP_ADDRESS -p NODE_PORT -c --tls --cacert /tmp/server_ca.pem
    

    다음을 바꿉니다.

    • NODE_IP_ADDRESS: 이전 단계에서 기록한 노드의 IP 주소
    • NODE_PORT: 이전 단계에서 기록한 노드의 포트 번호

    클러스터에서 IAM 또는 기본 토큰 기반 인증을 사용하는 경우 검색 엔드포인트 단계에서와 같이 --user 및 -a 플래그를 포함해야 합니다.

  7. 노드에 연결한 후 다음 Valkey 명령어를 입력합니다.

    입력:

    PING
    

    결과:

    PONG
    

클러스터 모드 사용 중지 인스턴스에 연결

이 섹션에서는 Memorystore for Valkey 클러스터 모드 사용 중지 인스턴스에 연결하는 방법을 설명합니다.

인스턴스의 기본 및 리더 엔드포인트 보기

인스턴스의 기본 및 리더 엔드포인트를 보려면 다음 안내를 따르세요.

gcloud

인스턴스의 기본 및 리더 엔드포인트를 보려면 describe gcloud CLI를 실행합니다. 자세한 내용은 인스턴스 정보 보기를 참고하세요.

출력은 다음과 비슷하게 표시됩니다.

authorizationMode: AUTH_DISABLED
createTime: '2024-08-06T22:02:55.224704101Z'
deletionProtectionEnabled: false
engineVersion: VALKEY_7_2
name: projects/myproject/locations/us-central1/instances/my-instance
nodeConfig:
  sizeGb: 6.5
nodeType: STANDARD_SMALL
persistenceConfig:
  mode: DISABLED
endpoints:
- connections:
  - pscAutoConnection:
      connectionType: CONNECTION_TYPE_PRIMARY
      forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-ec00907a-3ee3-4740-8092-ae832428f8e4
      ipAddress: 10.128.0.124
      network: projects/my-project/global/networks/default
      port: 6379
      projectId: my-project
      pscConnectionId: '38876592440606778'
      serviceAttachment: projects/448055306617/regions/us-central1/serviceAttachments/gcp-memorystore-auto-b3c43536-4a77-40-psc-sa
  - pscAutoConnection:
      connectionType: CONNECTION_TYPE_READER
      forwardingRule: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/forwardingRules/sca-auto-fr-5ce5518f-1c59-4b46-aa74-799fad70d7b1
      ipAddress: 10.128.0.125
      network: projects/my-project/global/networks/default
      port: 6379
      projectId: my-project
      pscConnectionId: '38876592440606779'
      serviceAttachment: projects/448055306617/regions/us-central1/serviceAttachments/gcp-memorystore-auto-b3c43536-4a77-40-psc-sa-2
replicaCount: 2
shardCount: 1
mode: CLUSTER_DISABLED
state: ACTIVE
transitEncryptionMode: TRANSIT_ENCRYPTION_DISABLED
uid: 869f2d09-d20b-46d8-94ba-be83c48ceb54
updateTime: '2024-08-06T22:18:59.389980051Z'
zoneDistributionConfig:
  mode: MULTI_ZONE

기본 엔드포인트: endpoints: 섹션의 CONNECTION_TYPE_PRIMARY 아래에 나열된 엔드포인트 주소와 포트 번호를 기록해 둡니다. 이 두 값을 함께 사용하면 인스턴스의 기본 엔드포인트가 됩니다.

리더 엔드포인트: endpoints: 섹션의 CONNECTION_TYPE_READER 아래에 나열된 엔드포인트 주소와 포트 번호를 기록해 둡니다. 이 두 값을 함께 사용하면 인스턴스의 리더 엔드포인트가 됩니다.

valkey-cli를 사용하여 Compute Engine VM에서 연결

Memorystore 인스턴스의 승인된 네트워크를 사용하는 모든 Compute Engine VM에서 Memorystore for Valkey 클러스터 인스턴스에 연결할 수 있습니다.

인스턴스에 연결하려면 다음 단계를 따르세요.

  1. Memorystore for Valkey 인스턴스에 승인된 네트워크를 사용하는 Linux Compute Engine VM이 아직 없으면 VM을 만들고 빠른 시작: Linux VM 만들기를 따라 연결합니다.

  2. Valkey 설치의 안내에 따라 Compute Engine VM에 valkey-cli을(를) 설치합니다.

  3. 인스턴스의 기본 및 리더 엔드포인트를 보고 기록해 둡니다.

  4. 다음 명령어를 실행하여 인스턴스의 기본 엔드포인트에 연결합니다.

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER
    

    각 항목의 의미는 다음과 같습니다.

    • PRIMARY_ENDPOINT_ADDRESS 및 PORT_NUMBER 은 이전 단계에서 기록한 값입니다.
  5. 기본 노드에 연결한 후 다음 Valkey 명령어를 입력합니다.

    입력:

    PING
    

    결과:

    PONG
    

    입력

    SET HELLO WORLD
    

    결과:

    OK
    

    다음을 입력합니다.

    GET HELLO
    

    결과:

    "WORLD"
    
  6. 다음 명령어를 실행하여 인스턴스의 리더 엔드포인트에 연결합니다.

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER
    

    각 항목의 의미는 다음과 같습니다.

    • READER_ENDPOINT_ADDRESS 및 PORT_NUMBER 는 이전 단계에서 기록한 값입니다.
  7. 기본 노드에 연결한 후 다음 Valkey Get 명령어를 입력합니다.

    입력:

    PING
    

    결과:

    PONG
    

    다음을 입력합니다.

    GET HELLO
    

    결과:

    "WORLD"
    
  8. Valkey 노드에 대한 연결을 테스트한 후 Valkey 인스턴스에 연결하는 데 사용한 Compute Engine VM을 삭제해야 합니다. 이렇게 하면 Cloud Billing 계정에 비용이 청구되지 않습니다.

전송 중인 데이터 암호화가 사용 설정된 인스턴스에 연결

이 섹션에서는 전송 중인 데이터 암호화가 사용 설정된 Memorystore for Valkey 클러스터 모드 사용 중지 인스턴스에 연결하는 방법의 예시를 제공합니다.

  1. 이전 단계의 Valkey 인스턴스와 동일한 승인된 네트워크를 사용하는 Compute Engine VM이 아직 없으면 VM을 만들고 Linux VM을 사용한 빠른 시작에 따라 연결합니다.

    1. Compute Engine VM 에 valkey-cli 버전 6.0 이상을 설치하려면 Valkey 설치의 안내를 따르세요.
  2. 인스턴스에 사용 중인 인증 기관 (CA) 모드를 확인합니다.

    • CA 모드가 인스턴스별인 경우, 클라이언트에 CA 인증서 설치의 안내에 따라 인스턴스의 CA 인증서를 설치합니다.

    • CA 모드가 공유인 경우클라이언트에 CA 인증서 번들 설치 의 안내에 따라 인스턴스의 CA 인증서 번들을 설치합니다.

    • CA 모드가 고객 관리인 경우 추가 CA 인증서를 다운로드하고 설치하지 않아도 애플리케이션이 인스턴스에 연결할 수 있습니다. 따라서 이 단계를 건너뛸 수 있습니다.

  3. 인스턴스의 기본 및 리더 엔드포인트를 보고 각 엔드포인트의 IP 주소와 포트 번호를 기록해 둡니다.

  4. 다음 명령어를 실행하여 인스턴스의 기본 엔드포인트에 연결합니다.

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER --tls --cacert /tmp/server_ca.pem
    

    다음을 바꿉니다.

    • PRIMARY_ENDPOINT_ADDRESS: 이전 단계에서 기록한 기본 엔드포인트의 IP 주소
    • PORT_NUMBER: 이전 단계에서 기록한 이 엔드포인트의 포트 번호
  5. 다음 명령어를 실행하여 인스턴스의 리더 엔드포인트에 연결합니다.

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER --tls --cacert /tmp/server_ca.pem
    

    다음을 바꿉니다.

    • READER_ENDPOINT_ADDRESS: 기록한 리더 엔드포인트의 IP 주소
    • PORT_NUMBER: 기록한 이 엔드포인트의 포트 번호

    인스턴스에서 IAM 인증 또는 기본 토큰 기반 인증을 사용 설정하는 경우 기본 및 리더 엔드포인트 모두에 대해 TLS 플래그와 함께 인증 사용자 인증 정보를 제공해야 합니다.

    예를 들면 다음과 같습니다.

    valkey-cli -h PRIMARY_ENDPOINT_ADDRESS -p PORT_NUMBER --tls --cacert /tmp/server_ca.pem --user USERNAME -a TOKEN
    

    및

    valkey-cli -h READER_ENDPOINT_ADDRESS -p PORT_NUMBER -c --tls --cacert /tmp/server_ca.pem --user USERNAME -a TOKEN
    

    다음을 바꿉니다.

    • USERNAME: 인스턴스의 사용자 이름
    • TOKEN: 인증 토큰

    인증 사용자 인증 정보 생성 또는 관리에 대한 자세한 내용은 IAM 인증 관리 및 기본 토큰 기반 인증을 사용하여 인스턴스에 대한 보안 액세스를 참조하세요.

  6. 노드에 연결되면 일부 Valkey 명령어를 입력합니다.

    입력:

    PING
    

    결과:

    PONG