En esta página se describe cómo enumerar, crear, actualizar, eliminar y mostrar los detalles de una configuración de instancia de Spanner. Algunas funciones de configuración de instancias personalizadas no están disponibles en la interfaz de usuario de la consola.Google Cloud En esos casos, usa los comandos de la CLI de Google Cloud (gcloud) que se proporcionan.
Mostrar lista de configuraciones de instancia
Puedes consultar todas las configuraciones de instancias de Spanner disponibles con la CLI de Google Cloud y las bibliotecas de cliente. Para ver una lista de todas las configuraciones de instancias de Spanner, consulta Configuraciones regionales y multirregionales.
gcloud
Ejecuta el comando gcloud spanner instance-configs list
:
gcloud spanner instance-configs list
C++
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
C#
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Go
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
PHP
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Ruby
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Mostrar los detalles de configuración de la instancia
Puede mostrar los detalles de cualquier configuración de instancia con la CLI de Google Cloud y las bibliotecas de cliente. Cuando creas una configuración de instancia personalizada, puedes añadir cualquier ubicación que aparezca en optionalReplicas
como réplica opcional.
Si no ves la ubicación de réplica de solo lectura que quieres, puedes solicitar una nueva región de réplica de solo lectura opcional.
Para obtener más información, consulta Crear una configuración de instancia personalizada.
gcloud
Ejecuta el comando gcloud spanner instance-configs describe
:
gcloud spanner instance-configs describe INSTANCE-CONFIG
Proporciona el siguiente valor:
INSTANCE-CONFIG
- La configuración de la instancia, que define la ubicación geográfica de la instancia y afecta a la forma en que se replican los datos. Por ejemplo,
eur6
oregional-us-central1
.
Para mostrar los detalles de la configuración base de eur6
, ejecuta el siguiente comando:
gcloud spanner instance-configs describe eur6
A continuación, se muestra un ejemplo de salida de la configuración base de 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
Notas de uso adicionales:
baseConfig
(solo para configuraciones personalizadas) apunta a la configuración de la instancia base. Consulta las configuraciones regionales disponibles y las configuraciones multirregionales disponibles para ver listas de configuraciones de instancias base que se pueden usar para crear una configuración de instancia personalizada.configType
indica si esta configuración de instancia es una configuración de instancia base o una configuración de instancia personalizada.etag
(solo para configuraciones personalizadas) es una cadena codificada en Base64 que representa la configuración. Se usa para el control de simultaneidad optimista.
C++
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
C#
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Go
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
PHP
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Ruby
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Crear una configuración de instancia personalizada
Puedes crear una configuración de instancia regional o multirregional personalizada y añadir réplicas de solo lectura opcionales para escalar las lecturas y admitir lecturas obsoletas de baja latencia. Consulta las configuraciones regionales disponibles y las configuraciones multirregionales disponibles para ver listas de configuraciones de instancias base que se pueden usar para crear una configuración de instancia personalizada. No puedes crear una configuración de instancia birregional personalizada. Para obtener más información sobre la replicación de Spanner y los tipos de réplicas, consulta el artículo Replicación.
Para crear una configuración de instancia personalizada, debes tener el permiso spanner.instanceConfigs.create
. De forma predeterminada, los roles que tienen el permiso spanner.instances.create
también tendrán el permiso spanner.instanceConfigs.create
.
Consola
No puedes crear una configuración de instancia personalizada con la consola deGoogle Cloud . Para crear una instancia con réplicas de solo lectura, usa la CLI de gcloud o las bibliotecas de cliente.
gcloud
Usa el 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[:...]
Puedes usar la marca --clone-config
para clonar fácilmente otra configuración de instancia base o personalizada, así como para declarar la ubicación y el tipo de una 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[:...]
Proporciona los siguientes valores:
CUSTOM-INSTANCE-CONFIG-ID
- Identificador permanente único en tu Google Cloud proyecto. No podrás cambiar el ID de configuración de la instancia más adelante. El prefijo
custom-
es obligatorio para evitar conflictos de nombres con las configuraciones de la instancia base. DISPLAY-NAME
- El nombre que se mostrará en la consola deGoogle Cloud para la configuración de instancia personalizada. Si decides usar las marcas `--base-config` y `--replicas`, proporciona los siguientes valores:
BASE-CONFIG
- Nombre de la región de la configuración de la instancia base en la que se basa tu configuración de instancia personalizada. Por ejemplo,
eur6
oregional-us-central1
. LOCATION
- Nombre de la región de los recursos de servicio (réplicas). Por ejemplo,
us-east1
. Para saber qué nombres de ubicaciones se aceptan, ejecutagcloud spanner instance-configs describe INSTANCE-CONFIG
y consulta las listasreplicas
yoptionalReplicas
. TYPE
- El tipo de réplica. Para saber qué ubicaciones y tipos de réplica correspondientes se aceptan, ejecuta
gcloud spanner instance-configs describe INSTANCE-CONFIG
y consulta las listasreplicas
yoptionalReplicas
. Los tipos pueden ser uno de los siguientes:- READ_ONLY
- READ_WRITE
- TESTIGO
- Los elementos de la lista están separados por ":".
- A menos que se use la marca
--[clone-config]
, se deben especificar todas las réplicasLOCATION
yTYPE
al crear una configuración de instancia personalizada, incluidas las predefinidas en la configuración base. Para obtener más información, consulta el texto de ayuda de gcloud instance-configs describe.
Si decide usar las marcas --clone-config
y --add-replicas
(solo use --skip-replicas
si hay réplicas que quiera omitir al clonar), proporcione los siguientes valores:
--clone-config=INSTANCE-CONFIG
Usa esta marca como una forma cómoda de clonar otra configuración de instancia base o personalizada, al tiempo que declaras la ubicación y el tipo de una réplica personalizada específica. A continuación, usa
--add-replicas=location=LOCATION,type=TYPE
para especificar dónde quieres añadir la réplica opcional.Por ejemplo, para crear una configuración de instancia personalizada con dos réplicas de solo lectura en
us-east1
y copiar todas las demás ubicaciones de réplica de la configuración de instancia baseeur6
, ejecuta el siguiente comando: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
Usa esta marca para evitar que se clone ninguna réplica.
Por ejemplo, para crear una configuración de instancia personalizada con una réplica de solo lectura en
us-east4
y copiar todas las demás ubicaciones de réplica de la configuración de instancia basenam3
, excepto la réplica de solo lectura enus-central1
, ejecuta el siguiente comando: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
Las siguientes marcas y valores son opcionales:
--labels=KEY=VALUE,[...]
KEY
yVALUE
: lista de pares clave-valor que se añadirán a la configuración de la instancia personalizada.Las claves deben empezar por un carácter en minúscula y solo pueden contener guiones (-), guiones bajos (_), caracteres en minúscula y números. Los valores solo pueden contener guiones (-), guiones bajos (_), caracteres en minúscula y números.
--validate-only
Usa esta marca para validar que la solicitud se completará correctamente antes de ejecutarla.
Por ejemplo, para crear una configuración de instancia personalizada con la configuración base eur6
con una réplica adicional de solo lectura en us-east1
, ejecuta el siguiente comando:
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --clone-config=eur6 \
--add-replicas=location=us-east1,type=READ_ONLY \
También puedes crear una configuración de instancia personalizada sin la marca --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
Deberías ver este resultado:
Creating instance-config...done.
C++
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
C#
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Go
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
PHP
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Ruby
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Crear una instancia en una configuración de instancia personalizada
Puedes crear una instancia en una configuración de instancia personalizada.
Consola
Para crear una instancia con una configuración de instancia personalizada, usa la CLI de gcloud o las bibliotecas de cliente.
gcloud
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
C++
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
C#
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
Go
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
Java
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
Node.js
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
PHP
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
Python
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
Ruby
Después de crear la configuración de instancia personalizada, sigue las instrucciones que se indican en Crear una instancia.
Actualizar una configuración de instancia personalizada
Puedes cambiar el nombre visible y las etiquetas de una configuración de instancia personalizada.
No puedes cambiar ni actualizar las réplicas de tu configuración de instancia personalizada.
Sin embargo, puedes crear una configuración de instancia personalizada con réplicas adicionales y, a continuación, mover tu instancia a la nueva configuración de instancia personalizada con las réplicas adicionales que hayas elegido. Por ejemplo, si tu instancia está en regional-us-central1
y quieres añadir una réplica de solo lectura us-west1
, debes crear una configuración de instancia personalizada con regional-us-central1
como configuración base y añadir us-west1
como réplica de solo lectura. A continuación, mueve tu instancia
a esta nueva configuración de instancia personalizada.
gcloud
Usa el 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
Proporciona los siguientes valores:
CUSTOM-INSTANCE-CONFIG-ID
- Identificador permanente de la configuración de tu instancia personalizada.
Empezará por
custom-
. NEW-DISPLAY-NAME
- El nuevo nombre que se mostrará en la configuración de la instancia en la consola de Google Cloud .
KEY
yVALUE
- Lista de pares clave-valor que se van a actualizar.
- Las claves deben empezar por un carácter en minúscula y solo pueden contener guiones (-), guiones bajos (_), caracteres en minúscula y números. Los valores solo pueden contener guiones (-), guiones bajos (_), caracteres en minúscula y números.
Las siguientes marcas y valores son opcionales:
--etag=ETAG
: el argumentoETAG
se puede usar para seleccionar y omitir actualizaciones simultáneas en un caso de lectura-modificación-escritura.--validate-only
: usa esta marca para validar que la solicitud se completará correctamente antes de ejecutarla.
Por ejemplo:
gcloud spanner instance-configs update custom-eur6 \
--display-name="Customer managed europe replicas"
C++
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
C#
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Go
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
PHP
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Ruby
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Eliminar una configuración de instancia personalizada
Para eliminar una configuración de instancia personalizada, primero debes eliminar cualquier instancia de la configuración de instancia.
gcloud
Usa el comando gcloud spanner instance-configs delete
y sustituye CUSTOM-INSTANCE-CONFIG-ID
por el ID de configuración de la instancia personalizada:
gcloud spanner instance-configs delete CUSTOM-INSTANCE-CONFIG-ID
C++
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
C#
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Go
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
PHP
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Ruby
Para saber cómo instalar y usar la biblioteca de cliente de Spanner, consulta el artículo Bibliotecas de cliente de Spanner.
Siguientes pasos
- Consulta cómo insertar, actualizar y eliminar datos con el lenguaje de manipulación de datos (DML) o la CLI de gcloud.
- Asigna roles de gestión de identidades y accesos a la instancia y a sus bases de datos.
- Consulta cómo diseñar un esquema de Spanner.
- Cuotas y límites de Spanner.