Nesta página, descrevemos como criar, listar, editar e excluir instâncias do Spanner.
Criar uma instância
É possível criar uma instância com o console do Google Cloud, a Google Cloud CLI ou as bibliotecas de cliente. Também é possível criar uma instância com uma configuração de instância personalizada. Para isso, adicione réplicas somente leitura opcionais.
Console
Acesse a página Criar instância no console do Google Cloud.
Insira um nome de instância para ser exibido no console do Google Cloud. O nome da instância precisa ser exclusivo no projeto do Google Cloud.
Insira um ID da instância para identificá-la permanentemente. O ID da instância também precisa ser exclusivo no projeto do Google Cloud. Não será possível alterá-lo depois.
Clique em Continuar.
Na seção Configurar sua instância, em Escolher uma configuração, selecione Regional, Birregional ou Multirregional. Como alternativa, se você quiser comparar as especificações entre as três configurações, clique em Comparar configurações de região.
Selecione uma configuração na lista suspensa.
Opcional: para adicionar uma réplica somente leitura a uma configuração base do Spanner, primeiro crie uma configuração de instância personalizada usando a Google Cloud CLI.
Clique em Continuar.
Na seção Alocar capacidade de computação, em Selecionar unidade, clique em uma das seguintes opções:
- Unidades de processamento para instâncias pequenas.
- Nós para instâncias grandes. Um nó tem 1.000 unidades de processamento.
Para mais informações, consulte Capacidade de computação, nós e unidades de processamento.
Em Escolha um modo de escalonamento, clique em uma das seguintes opções:
Alocação manual se você quiser definir manualmente a capacidade de computação para custos e recursos fixos de computação.
- Quantidade indica o número de nós ou unidades de processamento a serem usados para essa instância.
Escalonamento automático (Pré-lançamento) para permitir que o Spanner adicione e remova automaticamente a capacidade de computação. Para mais informações sobre o escalonador automático gerenciado, consulte Escalonador automático gerenciado para o Spanner. Configure as seguintes opções do escalonador automático gerenciado:
- Mínimo: indica o limite mínimo de redução, dependendo da unidade de medida escolhida em Capacidade de computação. Para mais informações, consulte Determinar o limite mínimo.
- Máximo indica o limite máximo para escalonar verticalmente, dependendo da unidade de medida escolhida para Capacidade de computação. Para mais informações, consulte Determinar o limite máximo.
- Meta de utilização de CPU de alta prioridade indica a porcentagem desejada de CPU de alta prioridade a ser usada. Para mais informações, consulte Determinar a meta de utilização da CPU.
- A meta de utilização do armazenamento indica a porcentagem de armazenamento que será usada. Para mais informações, consulte Determinar a meta de utilização do armazenamento.
Clique em Criar para gerar a instância.
gcloud
Use o comando gcloud spanner instances create
para criar uma instância. Especifique a capacidade de computação
como o número de nós ou unidades de processamento que você quer na instância.
gcloud spanner instances create INSTANCE-ID \ --config=INSTANCE-CONFIG \ --description=INSTANCE-DESCRIPTION \ --nodes=NODE-COUNT
ou
gcloud spanner instances create INSTANCE-ID \ --config=INSTANCE-CONFIG \ --description=INSTANCE-DESCRIPTION \ --processing-units=PROCESSING-UNIT-COUNT
Substitua:
- INSTANCE-ID: um identificador permanente exclusivo no projeto do Google Cloud. Não será possível alterá-lo depois.
- INSTANCE-CONFIG: um identificador permanente da configuração da instância, que define a localização geográfica dela e afeta a replicação dos dados. Para configurações de instância personalizadas, ele
começa com
custom-
. Para mais informações, consulte as configurações de instância. - INSTANCE-DESCRIPTION: o nome a ser exibido para a instância no console do Google Cloud. O nome da instância precisa ser exclusivo no projeto do Google Cloud.
NODE-COUNT: a capacidade de computação da instância, expressa como um número de nós. Cada nó é igual a 1.000 unidades de processamento.
PROCESSING-UNIT-COUNT: a capacidade de computação da instância, definida como um número de unidades de processamento. Insira quantidades de até 1.000 em múltiplos de 100 (100, 200, 300 e assim por diante) e insira quantidades maiores em múltiplos de 1.000 (1.000, 2000, 3.000 e assim por diante). Observação: não use esse parâmetro se você estiver criando uma instância que pretende ativar com o escalonador automático gerenciado posteriormente.
Adicionar escalonamento automático gerenciado (prévia)
Também é possível configurar novas instâncias para usar o escalonamento automático gerenciado com o comando gcloud beta spanner instances create
. Para mais informações, consulte Escalonador automático gerenciado para o Spanner.
Use o comando a seguir para criar uma instância com o escalonador automático gerenciado.
gcloud beta spanner instances create INSTANCE-ID \ --config=INSTANCE-CONFIG \ --description=INSTANCE-DESCRIPTION \ --autoscaling-min-processing-units=MINIMUM_PROCESSING_UNITS \ --autoscaling-max-processing-units=MAXIMUM_PROCESSING_UNITS \ --autoscaling-high-priority-cpu-target=CPU_PERCENTAGE \ --autoscaling-storage-target=STORAGE_PERCENTAGE
ou
gcloud beta spanner instances create INSTANCE-ID \ --config=INSTANCE-CONFIG \ --description=INSTANCE-DESCRIPTION \ --autoscaling-min-nodes=MINIMUM_NODES \ --autoscaling-max-nodes=MAXIMUM_NODES \ --autoscaling-high-priority-cpu-target=CPU_PERCENTAGE \ --autoscaling-storage-target=STORAGE_PERCENTAGE
Substitua:
- INSTANCE-ID: um identificador permanente exclusivo no projeto do Google Cloud. Não será possível alterá-lo depois.
- INSTANCE-CONFIG: um identificador permanente da configuração da instância, que define a localização geográfica dela e afeta a replicação dos dados. Para configurações de instância personalizadas, ele
começa com
custom-
. Para mais informações, consulte as configurações de instância. - INSTANCE-DESCRIPTION: o nome a ser exibido para a instância no console do Google Cloud. O nome da instância precisa ser exclusivo no projeto do Google Cloud.
- MINIMUM_PROCESSING_UNITS, MINIMUM_NODES: o número mínimo de unidades de processamento ou nós ao reduzir. Para mais informações, consulte Determinar o limite mínimo.
- MAXIMUM_PROCESSING_UNITS, MAXIMUM_NODES: o número máximo de unidades de processamento ou nós ao escalonar verticalmente. Para mais informações, consulte Determinar o limite máximo.
- CPU_PERCENTAGE: a porcentagem desejada de CPU de alta prioridade a ser usada, de 10 a 90%. Se você estiver otimizando custos, use uma porcentagem maior. Para mais informações, consulte Determinar a meta de utilização da CPU.
- STORAGE_PERCENTAGE: a porcentagem desejada de armazenamento a ser usada, de 10 a 99%. Para mais informações, consulte Determinar a meta de utilização do armazenamento.
Exemplos de uso de configurações personalizadas
Para criar uma instância test-instance
na configuração de instância regional de base us-central1
, execute:
gcloud spanner instances create test-instance --config=regional-us-central1 \
--description="Test Instance" --nodes=1
Para criar uma instância custom-eur6-instance
na configuração de instância multirregional personalizada custom-eur6
, primeiro crie uma configuração de instância personalizada.
Depois, execute:
gcloud spanner instances create custom-eur6-instance --config=custom-eur6 \
--description="Instance with custom read-only" --nodes=1
Você verá uma mensagem semelhante ao exemplo a seguir depois de executar um dos comandos anteriores:
Creating instance...done.
C++
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
C#
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Go
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Criar uma instância com escalonamento automático gerenciado usando Go (Pré-lançamento)
Java
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Criar uma instância com escalonamento automático gerenciado usando Java (Pré-lançamento)
Node.js
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
PHP
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Ruby
Para saber como instalar e usar a biblioteca de cliente do Spanner, consulte Bibliotecas de cliente do Spanner.
Para autenticar no Spanner, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Listar instâncias
É possível mostrar uma lista das suas instâncias do Spanner.
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
O console do Google Cloud mostra uma lista das instâncias do Spanner, junto com o ID, nome de exibição, configuração e capacidade de computação de cada instância expressos em unidades de processamento e em nós.
gcloud
Use o comando gcloud spanner instances list
:
gcloud spanner instances list
A CLI gcloud imprime uma lista das instâncias do Spanner, com ID, nome de exibição, configuração e capacidade de computação de cada instância.
Editar uma instância
As seções a seguir explicam como alterar o nome de exibição e a capacidade de computação de uma instância. Não é possível alterar o código ou a configuração da instância.
Mudar o nome de exibição
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
Para renomear, clique no nome da instância.
Clique em Editar instância.
Insira um novo nome de instância. Esse nome precisa ser exclusivo no projeto do Google Cloud.
Clique em Salvar.
gcloud
Use o comando gcloud spanner instances update
:
gcloud spanner instances update INSTANCE_ID --description=INSTANCE_NAME
Substitua:
- INSTANCE_ID: o identificador permanente da instância.
- INSTANCE_NAME: o nome a ser exibido para a instância no console do Google Cloud. O nome da instância precisa ser exclusivo no projeto do Google Cloud.
Alterar a capacidade de computação
É preciso provisionar capacidade de computação suficiente para manter a utilização da CPU e a utilização de armazenamento abaixo do máximo recomendado. Para mais informações, consulte as cotas e limites do Spanner.
Em alguns casos, não é possível reduzir a capacidade de computação de uma instância atual:
- A remoção da capacidade de computação exigiria que sua instância armazenasse mais de 4 TB de dados por 1.000 unidades de processamento (1 nó).
- Com base nos padrões históricos de uso, o Spanner criou um grande número de divisões para os dados da instância e, em alguns casos raros, o Spanner não poderia gerenciar as divisões depois de remover a capacidade de computação.
No último caso, tente reduzir a capacidade de computação por quantidades progressivamente menores até encontrar a capacidade mínima que o Spanner precisa para gerenciar todas as divisões da instância. Se a instância não exigir mais tantas divisões devido a uma mudança nos padrões de uso, o Spanner poderá mesclar algumas divisões e permitir que você tente reduzir a capacidade de computação da instância depois de uma ou duas semanas.
Ao remover a capacidade de computação, monitore a utilização da CPU e as latências de solicitação no Cloud Monitoring para garantir que a utilização da CPU permaneça abaixo de 65% para instâncias regionais e 45% para cada região em instâncias multirregionais. Pode ocorrer um aumento temporário nas latências de solicitações ao remover a capacidade de computação.
Se você quiser aumentar a capacidade de computação de uma instância, seu projeto do Google Cloud precisa ter cota suficiente para adicionar a capacidade de computação. O tempo necessário para que a solicitação de aumento seja concluída depende do tamanho dela. Na maioria dos casos, as solicitações são concluídas em alguns minutos. Em raras ocasiões, um escalonar verticalmente pode levar até uma hora para ser concluído.
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
Clique no nome da instância a ser modificada.
Clique em Editar instância.
Altere a capacidade de computação escolhendo as unidades de medida (unidades de processamento ou nós) e inserindo uma quantidade. Ao usar unidades de processamento, insira quantidades de até 1.000 em múltiplos de 100 (100, 200, 300 e assim por diante) e insira quantidades maiores em múltiplos de 1.000 (1.000, 2.000, 3.000 e assim por diante). Cada nó é igual a 1.000 unidades de processamento.
Clique em Salvar.
Se for exibida uma caixa de diálogo informando que sua cota é insuficiente para adicionar nós neste local, siga as instruções para solicitar uma cota maior.
gcloud
Use o comando gcloud spanner instances update
. Ao usar esse comando, especifique a capacidade de computação como um
número de nós ou unidades de processamento.
gcloud spanner instances update INSTANCE_ID --nodes=NODE_COUNT [--async]
ou
gcloud spanner instances update INSTANCE_ID --processing-units=PROCESSING_UNIT_COUNT [--async]
Substitua:
- INSTANCE_ID: o identificador permanente da instância.
- NODE_COUNT: a capacidade de computação da instância, expressa como um número de nós. Cada nó é igual a 1.000 unidades de processamento.
- PROCESSING_UNIT_COUNT: a capacidade de computação da instância, definida como um número de unidades de processamento. Insira quantidades de até 1.000 em múltiplos de 100 (100, 200, 300 e assim por diante) e insira quantidades maiores em múltiplos de 1.000 (1.000, 2000, 3.000 e assim por diante).
Sinalizações opcionais:
--async
: use essa sinalização se quiser que sua solicitação retorne imediatamente, sem aguardar a conclusão da operação em andamento. Para verificar o status da sua solicitação, executegcloud spanner operations describe
.
Ativar ou modificar o escalonador automático gerenciado em uma instância
As limitações a seguir se aplicam quando você adiciona ou altera o recurso de escalonamento automático gerenciado em uma instância atual:
- Não é possível ativar o escalonador automático gerenciado em uma instância que está sendo movida.
Não é possível mover uma instância enquanto o escalonador automático gerenciado estiver ativado.
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
Clique no nome da instância em que você quer ativar o escalonador automático gerenciado.
Clique em Editar instância.
Em Configurar capacidade de computação, clique em Escalonamento automático.
Em Mínimo, selecione o limite mínimo a ser usado ao reduzir a escala vertical. Para mais informações, consulte Determinar o limite mínimo.
Em Máximo, selecione o limite máximo a ser usado ao escalonar verticalmente. Para mais informações, consulte Determinar o limite máximo.
Em Meta de utilização de CPU de alta prioridade, selecione a porcentagem de CPU de alta prioridade a ser usada. Para mais informações, consulte Determinar a meta de utilização da CPU.
Em Meta de utilização do armazenamento, selecione a porcentagem de armazenamento a ser usada. Para mais informações, consulte Determinar a meta de utilização do armazenamento.
Clique em Salvar.
gcloud
Use o comando gcloud beta spanner instances update
para adicionar o escalonador automático gerenciado a uma instância. Para mais informações e
limitações, consulte sinalizações e limitações do Google Cloud CLI
.
É possível adicionar o escalonador automático gerenciado com o seguinte comando:
gcloud beta spanner instances update INSTANCE_ID \ --autoscaling-min-processing-units=MINIMUM_PROCESSING_UNITS \ --autoscaling-max-processing-units=MAXIMUM_PROCESSING_UNITS \ --autoscaling-high-priority-cpu-target=CPU_PERCENTAGE \ --autoscaling-storage-target=STORAGE_PERCENTAGE
ou
gcloud beta spanner instances update INSTANCE_ID \ --autoscaling-min-processing-units=MINIMUM_NODES \ --autoscaling-max-processing-units=MAXIMUM_NODES \ --autoscaling-high-priority-cpu-target=CPU_PERCENTAGE \ --autoscaling-storage-target=STORAGE_PERCENTAGE
Substitua:
- INSTANCE_ID: o identificador permanente da instância.
- MINIMUM_PROCESSING_UNITS, MINIMUM_NODES: o número mínimo de unidades de processamento ou nós a serem usados ao reduzir. Para mais informações, consulte Determinar o limite mínimo.
- MAXIMUM_PROCESSING_UNITS, MAXIMUM_NODES: o número máximo de unidades de processamento ou nós a serem usados ao escalonar verticalmente. Para mais informações, consulte Determinar o limite máximo.
- CPU_PERCENTAGE: a porcentagem desejada de CPU de alta prioridade a ser usada, de 10% a 90%. Se você estiver otimizando o custo e não exigir baixa latência em todas as solicitações, use uma porcentagem mais alta. Para mais informações, consulte Determinar a meta de utilização da CPU.
- STORAGE_PERCENTAGE: a porcentagem desejada de armazenamento a ser usada, de 10% a 99%. Para mais informações, consulte Determinar a meta de utilização do armazenamento.
Depois de adicionar o escalonador automático gerenciado a uma instância, também é possível modificar as configurações do escalonador automático gerenciado. Por exemplo, se você quiser aumentar o número máximo de unidades de processamento para 10.000, execute o seguinte comando:
gcloud beta spanner instances update test-instance \
--autoscaling-max-processing-units=10000
Alterar o uso do escalonador automático gerenciado em uma instância para o escalonamento manual
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
Clique no nome da instância em que você quer desativar o escalonador automático gerenciado.
Em Escolha um modo de escalonamento, clique em Alocação manual.
Clique em Salvar.
gcloud
Use o comando gcloud beta spanner instances update
para atualizar a instância.
Use o comando a seguir para alterar uma instância do uso do escalonador automático gerenciado para o escalonamento manual:
gcloud beta spanner instances update INSTANCE_ID \ --processing-units=PROCESSING_UNIT_COUNT
ou
gcloud beta spanner instances update INSTANCE_ID \ --nodes=NODE_COUNT
Substitua:
- INSTANCE_ID: o identificador permanente da instância.
- NODE_COUNT: a capacidade de computação da instância, expressa como um número de nós. Cada nó é igual a 1.000 unidades de processamento.
- PROCESSING_UNIT_COUNT: a capacidade de computação da instância, definida como um número de unidades de processamento. Insira quantidades de até 1.000 em múltiplos de 100 (100, 200, 300 e assim por diante) e insira quantidades maiores em múltiplos de 1.000 (1.000, 2000, 3.000 e assim por diante).
Rotular uma instância
Os rótulos ajudam a organizar os recursos.
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
Marque a caixa de seleção da instância. O Painel de informações aparece no lado direito da página.
Clique na guia Permissões no painel de informações. Depois disso, é possível adicionar, excluir ou atualizar os rótulos da instância do Spanner.
Mover uma instância
Para instruções sobre como mover sua instância de qualquer configuração para outra configuração, inclusive entre configurações regionais e multirregionais, consulte Mover uma instância.
Excluir uma instância
É possível excluir uma instância com o console do Google Cloud ou a Google Cloud CLI.
Se quiser excluir uma instância que tenha um ou mais bancos de dados com a proteção contra exclusão ativada, primeiro é necessário desativar a proteção em todos os bancos de dados nessa instância antes de excluir a instância.
Console
Acesse a página Instâncias do Spanner no console do Google Cloud.
Clique no nome da instância a ser excluída.
Clique em Excluir instância.
Siga as instruções para confirmar a exclusão da instância.
Clique em Excluir.
gcloud
Use o comando gcloud spanner instances delete
, substituindo INSTANCE-ID pelo ID da instância:
gcloud spanner instances delete INSTANCE-ID
Interromper ou reiniciar uma instância
O Spanner é um serviço de banco de dados totalmente gerenciado que supervisiona as próprias tarefas e recursos subjacentes, incluindo monitoramento e reinicialização de processos quando necessário, sem inatividade. Como não é necessário interromper ou reiniciar manualmente uma determinada instância, o Spanner não oferece uma maneira de fazer isso.
A seguir
- Saiba como inserir, atualizar e excluir dados com a linguagem de manipulação de dados (DML, na sigla em inglês) ou a CLI gcloud.
- Conceda papéis de gerenciamento de identidade e acesso para a instância e os bancos de dados dela.
- Entenda como projetar um esquema do Spanner.