Esta página descreve como listar, criar, atualizar, excluir e mostrar os detalhes de uma configuração de instância do Spanner. Algumas funcionalidades de configuração de instâncias personalizadas não estão disponíveis na UI do Google Cloud . Nesses casos, use os comandos da Google Cloud CLI (gcloud) fornecidos.
Listar configurações de instância
É possível listar todas as configurações de instância do Spanner disponíveis com a Google Cloud CLI e as bibliotecas de cliente. Para encontrar uma lista de todas as configurações de instância do Spanner, consulte Configurações regionais e multirregionais.
gcloud
Execute o comando gcloud spanner instance-configs list
:
gcloud spanner instance-configs list
C++
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
C#
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Go
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Java
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Node.js
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
PHP
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Python
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Ruby
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Mostrar detalhes da configuração da instância
É possível mostrar os detalhes de qualquer configuração de instância com a
Google Cloud CLI e as bibliotecas de cliente. Ao criar uma configuração de instância personalizada, é possível adicionar qualquer local listado em optionalReplicas
como uma réplica opcional.
Se o local da réplica de leitura não estiver disponível, você poderá
solicitar uma nova região de réplica somente leitura opcional.
Para mais informações, consulte Criar uma configuração de instância personalizada.
gcloud
Execute o comando gcloud spanner instance-configs describe
:
gcloud spanner instance-configs describe INSTANCE-CONFIG
Forneça o seguinte valor:
INSTANCE-CONFIG
- A configuração da instância, que define a localização geográfica dela e afeta a maneira como os dados são replicados. Por exemplo,
eur6
ouus-central1
.
Para mostrar os detalhes da configuração de base eur6
, execute:
gcloud spanner instance-configs describe eur6
Confira um exemplo de saída para a configuração de base 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
Outras observações sobre o uso:
baseConfig
(somente para configurações personalizadas) aponta para a configuração de instância de base. Consulte as configurações regionais disponíveis e as configurações multirregionais disponíveis para conferir listas de configurações de instâncias básicas que podem ser usadas para criar uma configuração de instância personalizada.configType
indica se essa configuração de instância é uma configuração de instância básica ou personalizada.etag
(somente para configurações personalizadas) é uma representação de string codificada em base64 da configuração. Ele é usado para controle de simultaneidade otimista.
C++
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
C#
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Go
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Java
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Node.js
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
PHP
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Python
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Ruby
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Criar uma configuração de instância personalizada
É possível criar uma configuração de instância regional ou multirregional personalizada e adicionar réplicas somente leitura opcionais para dimensionar leituras e oferecer suporte a leituras desatualizadas de baixa latência. Consulte as listas de configurações regionais disponíveis e configurações multirregionais disponíveis para conferir as configurações de instâncias básicas que podem ser usadas para criar uma configuração de instância personalizada. Não é possível criar uma configuração de instância birregional personalizada. Para mais informações sobre a replicação e os tipos de réplica do Spanner, consulte Replicação.
Para criar uma configuração de instância personalizada, você precisa ter a
permissão spanner.instanceConfigs.create
. Por padrão, os papéis com a permissão
spanner.instances.create
também têm a
spanner.instanceConfigs.create
.
Console
Não é possível criar uma configuração de instância personalizada usando o console do Google Cloud . Para criar uma instância com réplicas somente leitura, use a CLI gcloud ou as bibliotecas de cliente.
gcloud
Use o comando 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[:...]
É possível usar a flag --clone-config
como uma maneira conveniente de clonar outra
configuração de instância personalizada ou de base, declarando o local e
o tipo de uma réplica personalizada específica.
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[:...]
Forneça os valores a seguir:
CUSTOM-INSTANCE-CONFIG-ID
- Um
identificador permanente exclusivo no projeto do Google Cloud . Não
será possível mudar o ID da configuração da instância depois. O prefixo
custom-
é necessário para evitar conflitos de nome com configurações de instância básica. DISPLAY-NAME
- O nome a ser exibido para a configuração da instância personalizada no console do Google Cloud . Se você optar por usar as flags `--base-config` e `--replicas`, forneça os seguintes valores:
BASE-CONFIG
- O nome da região da configuração de instância base em que a configuração de instância personalizada se baseia. Por exemplo,
eur6
ouregional-us-central1
. LOCATION
- O nome da região dos recursos de veiculação (cópias), por exemplo,
us-east1
. Para descobrir quais nomes de local são aceitos, executegcloud spanner instance-configs describe INSTANCE-CONFIG
e consulte as listasreplicas
eoptionalReplicas
. TYPE
- O tipo de réplica. Para descobrir quais locais e
tipos de réplica correspondentes são aceitos, execute
gcloud spanner instance-configs describe INSTANCE-CONFIG
e consulte as listasreplicas
eoptionalReplicas
. Os tipos são um dos seguintes:- READ_ONLY
- READ_WRITE
- FIRMEZA
- Os itens na lista são separados por ":".
- A menos que a flag
--[clone-config]
seja usada, todas as réplicasLOCATION
eTYPE
precisam ser especificadas ao criar uma configuração de instância personalizada, incluindo as predefinidas na configuração de base. Para mais informações, consulte o gcloud instance-configs describe help-text.
Se você optar por usar as flags --clone-config
e --add-replicas
(use --skip-replicas
apenas se houver réplicas que você queira pular a clonagem), forneça os seguintes valores:
--clone-config=INSTANCE-CONFIG
Use essa flag como uma maneira conveniente de clonar outra configuração de instância base ou personalizada, declarando o local e o tipo de uma réplica personalizada específica. Em seguida, use
--add-replicas=location=LOCATION,type=TYPE
para especificar onde você quer adicionar a réplica opcional.Por exemplo, para criar uma configuração de instância personalizada com duas réplicas somente leitura em
us-east1
enquanto copia todos os outros locais de réplica da configuração de instância de baseeur6
, execute: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
Use essa flag para pular a clonagem de qualquer réplica.
Por exemplo, para criar uma configuração de instância personalizada com uma réplica somente leitura em
us-east4
, copiando todos os outros locais de réplica da configuração de instância de basenam3
, exceto a réplica somente leitura emus-central1
, execute: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
As flags e os valores a seguir são opcionais:
--labels=KEY=VALUE,[...]
KEY
eVALUE
: uma lista de pares de chave-valor para adicionar à configuração da instância personalizada.As chaves precisam começar com um caractere minúsculo e conter apenas hifens (-), sublinhados (_), caracteres minúsculos e números. Os valores precisam conter apenas hifens (-), sublinhados (_), caracteres minúsculos e números.
--validate-only
Use essa flag para validar se a solicitação vai ser bem-sucedida antes de executá-la.
Por exemplo, para criar uma configuração de instância personalizada com a configuração de base eur6
com uma réplica somente leitura adicional em us-east1
, execute:
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --clone-config=eur6 \
--add-replicas=location=us-east1,type=READ_ONLY \
Também é possível criar uma configuração de instância personalizada sem a
flag --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
Você verá esta resposta:
Creating instance-config...done.
C++
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
C#
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Go
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Java
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Node.js
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
PHP
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Python
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Ruby
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Criar uma instância em uma configuração de instância personalizada
É possível criar uma instância em uma configuração personalizada.
Console
Para criar uma instância em uma configuração de instância personalizada, use a CLI gcloud ou as bibliotecas de cliente.
gcloud
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
C++
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
C#
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
Go
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
Java
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
Node.js
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
PHP
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
Python
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
Ruby
Depois de criar a configuração de instância personalizada, siga as instruções em Criar uma instância.
Atualizar uma configuração de instância personalizada
É possível mudar o nome de exibição e os rótulos de uma configuração de instância personalizada.
Não é possível mudar ou atualizar as réplicas da configuração da instância personalizada.
No entanto, é possível criar uma nova configuração de instância personalizada com réplicas
adicionais e mover a instância para a nova
configuração de instância personalizada com as réplicas adicionais escolhidas. Por exemplo,
se a instância estiver em us-central1
e você quiser adicionar uma réplica us-west1
somente leitura, crie uma nova configuração de instância personalizada com
us-central1
como configuração de base e adicione us-west1
como uma réplica somente leitura. Em seguida, mova sua instância para essa
nova configuração de instância personalizada.
gcloud
Use o comando 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
Forneça os valores a seguir:
CUSTOM-INSTANCE-CONFIG-ID
- Um identificador permanente da configuração da instância personalizada.
Ele vai começar com
custom-
. NEW-DISPLAY-NAME
- O novo nome a ser exibido para a configuração da instância no console do Google Cloud .
KEY
eVALUE
- Uma lista de pares de chave-valor a serem atualizados.
- As chaves precisam começar com um caractere minúsculo e conter apenas hifens (-), sublinhados (_), caracteres minúsculos e números. Os valores precisam conter apenas hifens (-), sublinhados (_), caracteres minúsculos e números.
As flags e os valores a seguir são opcionais:
--etag=ETAG
: o argumentoETAG
pode ser usado para selecionar e pular atualizações simultâneas em um cenário de leitura-modificação-gravação.--validate-only
: use essa flag para validar se a solicitação vai ser bem-sucedida antes da execução.
Exemplo:
gcloud spanner instance-configs update custom-eur6 \
--display-name="Customer managed europe replicas"
C++
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
C#
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Go
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Java
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Node.js
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
PHP
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Python
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Ruby
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Excluir uma configuração de instância personalizada
Para excluir uma configuração de instância personalizada, primeiro exclua qualquer instância na configuração.
gcloud
Use o comando gcloud spanner instance-configs delete
, substituindo
CUSTOM-INSTANCE-CONFIG-ID
pelo ID de configuração
da instância personalizada:
gcloud spanner instance-configs delete CUSTOM-INSTANCE-CONFIG-ID
C++
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
C#
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Go
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Java
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Node.js
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
PHP
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Python
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Ruby
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
A seguir
- Saiba como inserir, atualizar e excluir dados com a linguagem de manipulação de dados (DML) ou a CLI do gcloud.
- Conceda papéis do IAM para a instância e os bancos de dados.
- Saiba como projetar um esquema do Spanner.
- Cotas e limites do Spanner.