이 페이지에서는 Spanner 인스턴스 구성의 세부정보를 나열, 생성, 업데이트, 삭제, 표시하는 방법을 설명합니다. 일부 커스텀 인스턴스 구성 기능은 Google Cloud 콘솔 UI에서 사용할 수 없습니다. 이러한 경우 제공된 Google Cloud CLI(gcloud) 명령어를 사용합니다.
인스턴스 구성 나열
Google Cloud CLI 및 클라이언트 라이브러리를 사용하여 사용 가능한 모든 Spanner 인스턴스 구성을 나열할 수 있습니다. 모든 Spanner 인스턴스 구성 목록을 찾으려면 리전 및 멀티 리전 구성을 참조하세요.
gcloud
gcloud spanner instance-configs list
명령어를 실행합니다.
gcloud spanner instance-configs list
C++
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
C#
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Go
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
자바
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Node.js
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
PHP
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Python
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Ruby
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
인스턴스 구성 세부정보 표시
Google Cloud CLI 및 클라이언트 라이브러리로 인스턴스 구성의 세부정보를 표시할 수 있습니다. 새 커스텀 인스턴스 구성을 만들 때 optionalReplicas
아래에 나열된 모든 위치를 선택적 복제본으로 추가할 수 있습니다.
원하는 읽기 전용 복제본 위치가 표시되지 않으면 새로운 선택적 읽기 전용 복제본 리전을 요청할 수 있습니다.
자세한 내용은 커스텀 인스턴스 구성 만들기를 참조하세요.
gcloud
gcloud spanner instance-configs describe
명령어를 실행합니다.
gcloud spanner instance-configs describe INSTANCE-CONFIG
다음 값을 제공합니다.
INSTANCE-CONFIG
- 인스턴스의 지리적 위치를 정의하고 데이터 복제 방식에 영향을 주는 인스턴스 구성입니다. 예를 들면
eur6
또는us-central1
입니다.
eur6
기본 구성의 세부정보를 표시하려면 다음을 실행합니다.
gcloud spanner instance-configs describe eur6
다음은 eur6
기본 구성의 출력 예시입니다.
configType: GOOGLE_MANAGED
displayName: Europe (Netherlands, Frankfurt)
freeInstanceAvailability: UNSUPPORTED
leaderOptions:
- europe-west3
- europe-west4
name: projects/cloud-spanner-demo/instanceConfigs/eur6
optionalReplicas:
- displayName: South Carolina
labels:
cloud.googleapis.com/country: US
cloud.googleapis.com/location: us-east1
cloud.googleapis.com/region: us-east1
location: us-east1
type: READ_ONLY
- displayName: South Carolina
labels:
cloud.googleapis.com/country: US
cloud.googleapis.com/location: us-east1
cloud.googleapis.com/region: us-east1
location: us-east1
type: READ_ONLY
replicas:
- defaultLeaderLocation: true
location: europe-west4
type: READ_WRITE
- location: europe-west4
type: READ_WRITE
- location: europe-west3
type: READ_WRITE
- location: europe-west3
type: READ_WRITE
- location: europe-west6
type: WITNESS
추가 사용법 참고사항:
baseConfig
(커스텀 구성만 해당)는 기본 인스턴스 구성을 가리킵니다. 커스텀 인스턴스 구성을 만드는 데 사용할 수 있는 기본 인스턴스 구성의 목록은 사용 가능한 리전 구성과 사용 가능한 멀티 리전 구성을 참조하세요.configType
은 이 인스턴스 구성이 기본 인스턴스 구성인지 커스텀 인스턴스 구성인지를 나타냅니다.etag
(커스텀 구성에만 해당)는 구성을 base64로 인코딩된 문자열 표현입니다. 최적의 동시 실행 제어에 사용됩니다.
C++
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
C#
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Go
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
자바
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Node.js
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
PHP
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Python
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Ruby
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
커스텀 인스턴스 구성
커스텀 리전 또는 멀티 리전 인스턴스 구성을 만들고 선택적으로 읽기 전용 복제본을 추가하여 읽기를 확장하고 지연 시간이 짧은 비활성 읽기를 지원할 수 있습니다. 커스텀 인스턴스 구성을 만드는 데 사용할 수 있는 기본 인스턴스 구성의 목록은 사용 가능한 리전 구성과 사용 가능한 멀티 리전 구성을 참조하세요. 커스텀 이중 리전 인스턴스 구성을 만들 수 없습니다. Spanner 복제 및 복제본 유형에 대한 자세한 내용은 복제를 참조하세요.
커스텀 인스턴스 구성을 만들려면 spanner.instanceConfigs.create
권한이 있어야 합니다. 기본적으로 spanner.instances.create
권한이 있는 역할에는 spanner.instanceConfigs.create
권한도 포함됩니다.
콘솔
Google Cloud 콘솔을 사용하여 커스텀 인스턴스 구성을 만들 수 없습니다. 읽기 전용 복제본으로 인스턴스를 만들려면 gcloud CLI 또는 클라이언트 라이브러리를 사용합니다.
gcloud
gcloud spanner instance-configs create
명령어를 사용합니다.
gcloud spanner instance-configs create CUSTOM-INSTANCE-CONFIG-ID \
--display-name=DISPLAY-NAME \
--base-config=BASE-CONFIG \
--labels=KEY=VALUE,[...] \
--replicas=location=LOCATION, type=TYPE[:...]
--clone-config
플래그를 사용하여 기본 또는 커스텀 인스턴스 구성을 쉽게 복사하는 동시에 특정 커스텀 복제본의 위치와 유형을 선언할 수 있습니다.
gcloud spanner instance-configs create CUSTOM-INSTANCE-CONFIG-ID \
--display-name=DISPLAY-NAME \
--clone-config=INSTANCE-CONFIG \
--labels=KEY=VALUE,[...] \
--add-replicas=location=LOCATION, type=TYPE[:...] \
--skip-replicas=location=LOCATION, type=TYPE[:...]
다음 값을 제공합니다.
CUSTOM-INSTANCE-CONFIG-ID
- Google Cloud 프로젝트 내에서 고유한 영구 식별자입니다. 인스턴스 구성 ID는 나중에 변경할 수 없습니다.
custom-
프리픽스는 기본 인스턴스 구성과의 이름 충돌을 방지하기 위해 필요합니다. DISPLAY-NAME
- Google Cloud 콘솔에서 커스텀 인스턴스 구성에 표시할 이름입니다. `--base-config` 및 `--replicas` 플래그를 사용하려면 다음 값을 제공합니다.
BASE-CONFIG
- 커스텀 인스턴스 구성이 기반이 되는 기본 인스턴스 구성의 리전 이름입니다. 예를 들면
eur6
또는regional-us-central1
입니다. LOCATION
- 제공 리소스(복제본)의 리전 이름(예:
us-east1
)입니다. 허용되는 위치 이름을 확인하려면gcloud spanner instance-configs describe INSTANCE-CONFIG
를 실행하고replicas
및optionalReplicas
목록을 참조하세요. TYPE
- 복제본 유형입니다. 허용되는 해당 위치와 복제본 유형을 확인하려면
gcloud spanner instance-configs describe INSTANCE-CONFIG
를 실행하고replicas
및optionalReplicas
목록을 참조하세요. 유형은 다음 중 하나입니다.- READ_ONLY
- READ_WRITE
- WITNESS
- 목록의 항목은 ':'으로 구분됩니다.
--[clone-config]
플래그가 사용되지 않으면 기본 구성에 사전 정의된 항목을 포함하여 커스텀 인스턴스 구성을 만들 때 모든 복제본LOCATION
및TYPE
을 지정해야 합니다. 자세한 내용은 gcloud instance-configs describe help-text를 참조하세요.
--clone-config
및 --add-replicas
플래그를 사용하도록 선택한 경우(클론에서 건너뛸 복제본이 있는 경우에만 --skip-replicas
사용) 다음 값을 제공합니다.
--clone-config=INSTANCE-CONFIG
이 플래그를 사용하여 기본 또는 커스텀 인스턴스 구성을 쉽게 클론하는 동시에 특정 커스텀 복제본의 위치와 유형을 선언할 수 있습니다. 그런 다음
--add-replicas=location=LOCATION,type=TYPE
을 사용하여 선택적 복제본을 추가할 위치를 지정합니다.예를 들어
us-east1
에서 2개의 읽기 전용 복제본이 있는 커스텀 인스턴스 구성을 만드는 동시에eur6
기본 인스턴스 구성에서 다른 모든 복제본 위치를 복사하려면 다음을 실행합니다.gcloud spanner instance-configs create custom-eur6 --clone-config=eur6 \ --add-replicas=location=us-east1,type=READ_ONLY:location=us-east1,type=READ_ONLY
--skip-replicas=location=LOCATION,type=TYPE
이 플래그를 사용하여 클론 중 복제본이 포함되지 않도록 제외합니다.
예를 들어
us-central1
의 읽기 전용 복제본을 제외하고nam3
기본 인스턴스 구성의 다른 모든 복제본 위치를 복사하면서us-east4
에 읽기 전용 복제본이 하나 있는 커스텀 인스턴스 구성을 만드는 경우 다음을 실행합니다.gcloud spanner instance-configs create custom-nam3 --clone-config=nam3 \ --add-replicas=location=us-east4,type=READ_ONLY \ --skip-replicas=location=us-central1,type=READ_ONLY
다음 플래그와 값은 선택사항입니다.
--labels=KEY=VALUE,[...]
KEY
및VALUE
: 커스텀 인스턴스 구성에 추가할 키-값 쌍 목록입니다.키는 소문자로 시작해야 하고 하이픈(-), 밑줄(_), 소문자, 숫자만 포함할 수 있습니다. 값은 하이픈(-), 밑줄(_), 소문자, 숫자만 포함해야 합니다.
--validate-only
이 플래그를 사용하여 실행하기 전 요청이 성공할지 검증합니다.
예를 들어 us-east1
에서 읽기 전용 복제본이 하나 있는 eur6
기본 구성으로 커스텀 인스턴스 구성을 만들려면 다음을 실행합니다.
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --clone-config=eur6 \
--add-replicas=location=us-east1,type=READ_ONLY \
--clone-config
플래그 없이 커스텀 인스턴스 구성을 만들 수도 있습니다.
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --base-config=eur6 \
--replicas=location=europe-west4,type=READ_WRITE:location=europe-west3,type=READ_WRITE:location=europe-west4,type=READ_WRITE:location=europe-west3,type=READ_WRITE:location=europe-west6,type=WITNESS:location=us-east1,type=READ_ONLY
다음과 같은 출력이 표시됩니다.
Creating instance-config...done.
C++
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
C#
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Go
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
자바
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Node.js
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
PHP
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Python
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Ruby
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
커스텀 인스턴스 구성으로 인스턴스 만들기
커스텀 인스턴스 구성으로 인스턴스를 만들 수 있습니다.
콘솔
커스텀 인스턴스 구성으로 인스턴스를 만들려면 gcloud CLI 또는 클라이언트 라이브러리를 사용합니다.
gcloud
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
C++
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
C#
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
Go
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
자바
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
Node.js
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
PHP
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
Python
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
Ruby
커스텀 인스턴스 구성을 만든 후 인스턴스 만들기의 안내를 따르세요.
커스텀 인스턴스 구성 업데이트
커스텀 인스턴스 구성의 표시 이름과 라벨은 변경할 수 있습니다.
커스텀 인스턴스 구성의 복제본은 변경하거나 업데이트할 수 없습니다.
하지만 추가 복제본이 있는 새로운 커스텀 인스턴스 구성을 만든 다음 선택한 추가 복제본이 있는 새 커스텀 인스턴스 구성으로 인스턴스를 이동할 수 있습니다. 예를 들어 인스턴스가 us-central1
에 있고 읽기 전용 복제본 us-west1
을 추가하려는 경우 us-central1
을 기본 구성으로 사용하고 us-west1
을 읽기 전용 복제본으로 추가한 새로운 커스텀 인스턴스 구성을 만들어야 합니다. 그런 후 이 새로운 커스텀 인스턴스 구성으로 인스턴스를 이동합니다.
gcloud
gcloud spanner instance-configs update
명령어를 사용합니다.
gcloud spanner instance-configs update CUSTOM-INSTANCE-CONFIG-ID \
--display-name=NEW-DISPLAY-NAME \
--update-labels=KEY=VALUE,[...], \
--etag=ETAG
다음 값을 제공합니다.
CUSTOM-INSTANCE-CONFIG-ID
- 커스텀 인스턴스 구성의 영구 식별자입니다.
custom-
으로 시작합니다. NEW-DISPLAY-NAME
- Google Cloud 콘솔에서 인스턴스 구성에 표시할 새로운 이름입니다.
KEY
,VALUE
- 업데이트할 키-값 쌍 목록입니다.
- 키는 소문자로 시작해야 하고 하이픈(-), 밑줄(_), 소문자, 숫자만 포함할 수 있습니다. 값은 하이픈(-), 밑줄(_), 소문자, 숫자만 포함해야 합니다.
다음 플래그와 값은 선택사항입니다.
--etag=ETAG
:ETAG
인수를 사용하여 읽기-수정-쓰기 시나리오에서 동시 업데이트를 선택하고 건너뛸 수 있습니다.--validate-only
: 이 플래그를 사용하여 실행하기 전 요청이 성공할지 검증합니다.
예를 들면 다음과 같습니다.
gcloud spanner instance-configs update custom-eur6 \
--display-name="Customer managed europe replicas"
C++
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
C#
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Go
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
자바
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Node.js
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
PHP
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Python
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Ruby
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
커스텀 인스턴스 구성 삭제
커스텀 인스턴스 구성을 삭제하려면 먼저 인스턴스 구성에서 모든 인스턴스를 삭제합니다.
gcloud
gcloud spanner instance-configs delete
명령어를 사용하여 CUSTOM-INSTANCE-CONFIG-ID
를 커스텀 인스턴스 구성 ID로 바꿉니다.
gcloud spanner instance-configs delete CUSTOM-INSTANCE-CONFIG-ID
C++
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
C#
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Go
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
자바
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Node.js
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
PHP
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Python
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Ruby
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
다음 단계
- 데이터 조작 언어(DML) 또는 gcloud CLI를 사용하여 데이터를 삽입, 업데이트, 삭제하는 방법 알아보기
- 인스턴스 및 인스턴스 데이터베이스에 대한 IAM 역할 부여하기
- Spanner 스키마 설계 방법 이해하기
- Spanner 할당량 및 한도