인스턴스 및 노드 사양

이 페이지에서는 Memorystore for Valkey 인스턴스의 인스턴스 및 노드 사양을 설명합니다. 인스턴스를 만드는 방법은 인스턴스 만들기를 참조하세요.

노드 유형 선택

인스턴스의 노드는 모두 선택한 동일한 노드 유형을 사용합니다. 인스턴스에 가장 적합한 노드 유형은 가격, 성능, 키스페이스 용량 요구사항에 따라 다릅니다.

standard-small 노드 유형을 사용하면 작은 인스턴스를 프로비저닝할 수 있으며 다른 노드 유형보다 잠재적으로 더 낮은 비용으로 인스턴스를 작은 단위로 확장할 수 있습니다. 또한 standard-small은 총 vCPU 수를 늘려 더 많은 노드에 키스페이스를 분산할 수 있는 이점도 제공합니다. 작은 노드의 총 키스페이스 용량이 데이터 요구사항을 충족하는 데 충분하면 highmem-medium에 비해 향상된 가격 대비 성능을 제공합니다.

highmem-medium에서 제공하는 것보다 더 많은 인스턴스 용량이 필요한 경우에만 highmem-xlarge 노드 유형을 선택하는 것이 좋습니다. highmem-xlarge 노드 유형은 크기가 highmem-medium 유형보다 4배 더 크지만 vCPU가 더 큰 노드에 추가(수직 확장)될 때 Valkey 7.2 성능이 비례하여 확장되지 않으므로 성능이 4배 더 향상되지 않습니다. 대신 가격 성능을 개선하려면 인스턴스에 노드를 더 추가하여 확장해야 합니다.

노드 유형 사양

노드 용량 및 특성은 선택한 4가지 노드 유형에 따라 달라집니다.

키스페이스 용량 및 예약된 오버헤드

노드 유형 기본 쓰기 가능 키스페이스 용량 총 노드 용량
shared-core-nano 1.12GB 1.4GB
standard-small 5.2GB 6.5GB
highmem-medium 10.4GB 13GB
highmem-xlarge 46.4GB 58GB

Memorystore는 메모리 부족(OOM) 오류를 방지하기 위해 인스턴스 용량의 일부를 자동으로 따로 설정합니다. 따라서 키를 원활하게 읽고 쓸 수 있습니다. 메모리 한도 및 스토리지 세부정보는 다음과 같습니다.

  • 스토리지 맞춤설정: 기본 설정을 사용하는 것이 좋지만 maxmemory 구성을 사용하여 예약된 스토리지의 용량을 조정할 수도 있습니다. maxmemory에 대한 자세한 내용은 지원되는 인스턴스 구성을 참조하세요.

  • 저장용량은 얼마나 되나요? 이전 표의 기본 쓰기 가능 키스페이스 용량 열을 참조하세요. 기본적으로 키에 사용할 수 있는 저장용량을 보여줍니다.

  • 스토리지 극대화 가능한 최대 스토리지를 원하는 경우 maxmemory 구성을 100%로 설정하면 총 노드 용량 열에 스토리지 한도가 표시됩니다. 하지만 기본 설정보다 높은 maxmemory 값을 선택하지 않는 것이 좋습니다.

  • shared-core-nano 노드 유형에는 1.12GB의 엄격한 제한이 있으며 maxmemory 구성을 사용하여 변경할 수 없습니다.

노드 특성

노드 유형 vCPU 수 SLA 제공 여부 최대 클라이언트 클라이언트의 최대 메모리(maxmemory-clients 구성)
shared-core-nano 0.5 아니요 5,000 12%
standard-small 2 16,000(기본값). 최댓값은 32,000입니다. 7%
highmem-medium 2 32,000(기본값). 최댓값은 64,000입니다. 7%
highmem-xlarge 8 64,000 4%

인스턴스 사양

이 섹션에서는 인스턴스 유형, 노드 유형, 복제본 수를 고려하여 최소 및 최대 인스턴스 용량을 보여줍니다. Memorystore for Valkey는 클러스터 모드의 인스턴스만 지원합니다.

최소 인스턴스 유형에 따른 최소 쓰기 가능 용량

노드 유형 및 크기 노드 3개의 최소 인스턴스 유형을 사용하는 최소 쓰기 가능 용량1
shared-core-nano - 1.4GB 4.2GB
standard-small - 6.5GB 19.5GB
highmem-medium - 13GB 39GB
highmem-xlarge - 58GB 174GB

1 쓰기 가능한 용량은 키를 작성하는 데 사용할 수 있는 스토리지 용량입니다. 최소 쓰기 가능 용량은 선택한 복제본 수의 영향을 받지 않습니다.

인스턴스 유형에 따른 최대 쓰기 가능 용량

노드 유형 및 크기 인스턴스 유형이 기본 노드 250개 및 노드당 복제본 0개인 경우 최대 용량 인스턴스 유형이 기본 노드 125개 및 노드당 복제본 1개인 경우 최대 용량 인스턴스 유형이 기본 노드 83개 및 노드당 복제본 2개인 경우 최대 용량
shared-core-nano - 1.4GB 350GB 175GB 116.2GB
standard-small - 6.5GB 1,625GB 812.5GB 539.5GB
highmem-medium - 13GB 3,250GB 1,625GB 1,079GB
highmem-xlarge - 58GB 14,500GB 7,250GB 4,814GB

샤드가 1개, 2개 또는 4개인 인스턴스 유형 선택

미리보기 상태이므로 샤드가 1개, 2개 또는 4개인 인스턴스를 만들 때 다음과 같은 요구사항과 동작이 적용됩니다.

  • 샤드 1개, 2개 또는 4개를 사용하려면 샤드 1개, 2개 또는 4개로 인스턴스를 만들어야 합니다.

  • 샤드가 1, 2 또는 4개인 인스턴스를 만들려면 gcloud CLI를 사용해야 합니다.

  • 샤드가 3개 또는 5개 이상으로 생성된 인스턴스는 샤드 1개, 2개 또는 4개로 확장할 수 없습니다.

  • 샤드 1개, 2개 또는 4개로 생성된 인스턴스는 미리보기 출시 단계에 있으며 미리보기 출시 단계 제한사항이 적용됩니다.

  • 샤드 1개, 2개 또는 4개로 만든 인스턴스는 원하는 횟수만큼 다른 인스턴스 유형으로 확장할 수 있습니다. 예를 들어 샤드가 4개인 인스턴스를 샤드 8개로 확장한 다음 다시 4개의 샤드로 축소할 수 있습니다.

성능

us-central1 리전에서 OSS memtier 벤치마킹 도구를 사용하면 마이크로초 지연 시간과 1KiB 데이터 크기로 vCPU 노드 2개(standard-smallhighmem-medium)당 초당 120,000~130,000개의 작업이 생성되었습니다.

실제 워크로드 또는 프로덕션 트래픽과 유사한 합성 워크로드를 사용하여 자체 벤치마킹을 수행하는 것이 좋습니다. 또한 워크로드 급증이나 예기치 않은 트래픽에 대비해 버퍼(또는 '여유 공간')를 고려해 인스턴스 크기를 조정하는 것이 좋습니다. 자세한 안내는 권장사항을 참조하세요.

인스턴스 엔드포인트

이 섹션에서는 각 인스턴스에 있는 2개의 엔드포인트에 대해 설명합니다.

탐색 엔드포인트

각 인스턴스에는 클라이언트가 연결되는 검색 엔드포인트가 있습니다. IP 주소와 포트 번호의 조합입니다. 인스턴스의 검색 엔드포인트를 찾는 방법은 인스턴스의 검색 엔드포인트 보기를 참조하세요.

클라이언트가 이를 노드 검색에도 사용합니다. 클라이언트는 검색 엔드포인트를 사용하여 인스턴스의 노드 토폴로지를 검색하여 서드 파티 클라이언트를 부트스트랩하고 안정적인 상태로 업데이트된 상태로 유지합니다. 결과 노드 토폴로지는 서드 파티 클라이언트가 메모리에 캐시할 노드 엔드포인트(IP 및 포트 조합)를 제공합니다. 그러면 다른 애플리케이션 변경 없이 클라이언트에서 자동으로 업데이트와 리디렉션이 처리됩니다. 클라이언트 검색 동작 및 권장사항에 대한 자세한 내용은 클라이언트 검색을 참조하세요.

검색 엔드포인트는 노드 토폴로지를 제공하기 위해 여러 영역의 여러 노드로 지원되므로 가용성이 높습니다. 엔드포인트를 통한 토폴로지 제공은 백엔드 노드 장애 또는 노드 업데이트가 발생하더라도 강력한 기능을 제공합니다.

검색 엔드포인트는 다음과 같이 동작합니다.

  1. 인스턴스의 검색 엔드포인트는 유지보수 중에도 또는 수평 축소, 수평 확장, 복제본 수 변경과 같은 다른 작업을 하는 경우에도 인스턴스의 수명 주기 동안 변경되지 않습니다.

  2. 노드 엔드포인트는 변경될 수 있으며, 시간이 지나면서 노드가 추가 및 삭제됨에 따라 재활용할 수 있습니다. 이상적으로는 토폴로지 새로고침 및 리디렉션을 통해 이러한 변경사항을 자동으로 처리할 수 있는 서드 파티 클라이언트를 사용하는 것이 좋습니다. 클라이언트 라이브러리 코드 샘플에서 타사 클라이언트 예시를 확인할 수 있습니다. 애플리케이션에 종속 항목이 없거나 특정 인스턴스에서 노드 엔드포인트가 변경되지 않을 것이라는 가정을 하지 않아야 합니다.

데이터 엔드포인트

또한 각 인스턴스에는 Memorystore for Valkey가 클라이언트 연결에 사용하는 Private Service Connect 데이터 엔드포인트도 있습니다. 여기에 직접 연결하면 안 되지만 Memorystore for Valkey가 이 엔드포인트를 사용하여 클라이언트를 인스턴스의 노드에 연결합니다.