Cette page explique comment répertorier, créer, mettre à jour, supprimer et afficher les détails d'une configuration d'instance Spanner. Certaines fonctionnalités de configuration d'instances personnalisées ne sont pas disponibles dans l'interface utilisateur de la console Google Cloud. Dans ce cas, utilisez les commandes Google Cloud CLI (gcloud) fournies.
Afficher la liste des configurations d'instance
Vous pouvez répertorier toutes les configurations d'instances Spanner disponibles à l'aide de la Google Cloud CLI et des bibliothèques clientes. Pour obtenir la liste de toutes les configurations d'instances Spanner, consultez la page Configurations régionales et multirégionales.
gcloud
Exécutez la commande gcloud spanner instance-configs list
:
gcloud spanner instance-configs list
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
PHP
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Ruby
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Afficher les détails de la configuration de l'instance
Vous pouvez afficher les détails de n'importe quelle configuration d'instance à l'aide de Google Cloud CLI et des bibliothèques clientes. Lorsque vous créez une configuration d'instance personnalisée, vous pouvez ajouter n'importe quel emplacement répertorié sous optionalReplicas
en tant qu'instance répliquée facultative.
Si l'emplacement souhaité pour l'instance répliquée en lecture seule ne s'affiche pas, vous pouvez demander une nouvelle région facultative d'instance répliquée en lecture seule.
Pour en savoir plus, consultez la section Créer une configuration d'instance personnalisée.
gcloud
Exécutez la commande gcloud spanner instance-configs describe
:
gcloud spanner instance-configs describe INSTANCE-CONFIG
Indiquez la valeur suivante :
INSTANCE-CONFIG
- La configuration de l'instance, qui définit l'emplacement géographique de l'instance et affecte la réplication des données. Par exemple,
eur6
ouus-central1
.
Pour afficher les détails de la configuration de base eur6
, exécutez la commande suivante:
gcloud spanner instance-configs describe eur6
Voici un exemple de résultat pour la configuration 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
Autres remarques sur l'utilisation:
baseConfig
(pour les configurations personnalisées uniquement) pointe vers la configuration de base de l'instance. Consultez les pages Configurations régionales disponibles et Configurations multirégionales disponibles pour obtenir la liste des configurations d'instance de base pouvant être utilisées pour créer une configuration d'instance personnalisée.configType
indique si cette configuration d'instance est une configuration d'instance de base ou une configuration d'instance personnalisée.etag
(pour les configurations personnalisées uniquement) est une représentation de la configuration sous forme de chaîne encodée en base64. Elle est utilisée pour le contrôle de simultanéité optimiste.
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
PHP
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Ruby
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Créer une configuration d'instance personnalisée
Vous pouvez créer une configuration d'instance personnalisée régionale ou multirégionale, et ajouter éventuellement des instances dupliquées en lecture seule pour assurer le scaling des lectures et accepter les lectures obsolètes à faible latence. Consultez les pages Configurations régionales disponibles et Configurations multirégionales disponibles pour obtenir la liste des configurations d'instance de base pouvant être utilisées pour créer une configuration d'instance personnalisée. Vous ne pouvez pas créer de configuration d'instance birégionale personnalisée. Pour en savoir plus sur les types de réplication et d'instances dupliquées Spanner, consultez la page Réplication.
Pour créer une configuration d'instance personnalisée, vous devez disposer de l'autorisation spanner.instanceConfigs.create
. Par défaut, les rôles disposant de l'autorisation spanner.instances.create
disposent également de l'autorisation spanner.instanceConfigs.create
.
Console
Vous ne pouvez pas créer de configuration d'instance personnalisée autonome à l'aide de la console Google Cloud. Pour créer une instance avec des instances répliquées en lecture seule, reportez-vous aux instructions fournies dans la section Créer une instance avec la configuration d'instance personnalisée.
Vous pouvez utiliser la Google Cloud CLI et les bibliothèques clientes pour créer une configuration d'instance personnalisée autonome.
gcloud
Exécutez la commande 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[:...]
L'option --clone-config
constitue un moyen pratique de cloner une autre configuration de base ou une autre configuration d'instance personnalisée, tout en déclarant l'emplacement et le type d'une instance dupliquée personnalisée spécifique.
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[:...]
Indiquez les valeurs suivantes :
CUSTOM-INSTANCE-CONFIG-ID
- Identifiant permanent et unique au sein de votre projet Google Cloud. Vous ne pourrez pas modifier l'ID de configuration de l'instance par la suite. Le préfixe
custom-
est requis pour éviter les conflits de noms avec les configurations d'instance de base. DISPLAY-NAME
- Nom à afficher pour la configuration d'instance personnalisée dans la console Google Cloud. Si vous choisissez d'utiliser les options "--base-config" et "--replicas", indiquez les valeurs suivantes:
BASE-CONFIG
- Nom de la région de la configuration de base de l'instance sur laquelle votre configuration d'instance personnalisée est basée. Par exemple,
eur6
ouregional-us-central1
. LOCATION
- Nom de la région des ressources de diffusion (instances dupliquées), par exemple
us-east1
. Pour connaître les noms d'établissements acceptés, exécutezgcloud spanner instance-configs describe INSTANCE-CONFIG
, et consultez les listesreplicas
etoptionalReplicas
. TYPE
- Type d'instance répliquée. Pour savoir quels emplacements et types d'instances répliquées correspondants sont acceptés, exécutez
gcloud spanner instance-configs describe INSTANCE-CONFIG
, et reportez-vous aux listesreplicas
etoptionalReplicas
. Les types disponibles sont les suivants :- READ_ONLY
- READ_WRITE
- TÉMOIGNAGE
- Les éléments de la liste sont séparés par ":".
- À moins que l'option
--[clone-config]
ne soit utilisée, toutes les instances répliquéesLOCATION
etTYPE
doivent être spécifiées lors de la création d'une configuration d'instance personnalisée, y compris celles prédéfinies dans la configuration de base. Pour en savoir plus, consultez la section sur gcloud instance-configs describe help-text.
Si vous choisissez d'utiliser les options --clone-config
et --add-replicas
(n'utilisez --skip-replicas
que si vous souhaitez ignorer le clonage de certaines instances dupliquées), fournissez les valeurs suivantes:
--clone-config=INSTANCE-CONFIG
Utilisez cette option pour cloner une autre configuration de base ou une autre configuration d'instance personnalisée, tout en déclarant l'emplacement et le type d'une instance dupliquée personnalisée spécifique. Utilisez ensuite
--add-replicas=location=LOCATION,type=TYPE
pour indiquer où vous souhaitez ajouter votre instance répliquée facultative.Par exemple, pour créer une configuration d'instance personnalisée avec deux instances répliquées en lecture seule dans
us-east1
tout en copiant tous les autres emplacements d'instances dupliquées à partir de la configuration d'instance de baseeur6
, exécutez la commande suivante: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
Utilisez cet indicateur pour empêcher le clonage d'une instance répliquée.
Par exemple, pour créer une configuration d'instance personnalisée avec une instance répliquée en lecture seule dans
us-east4
tout en copiant tous les autres emplacements d'instance répliquée à partir de la configuration d'instance de basenam3
, à l'exception de l'instance répliquée en lecture seule dansus-central1
, exécutez la commande suivante: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
Les options et valeurs suivantes sont facultatives:
--labels=KEY=VALUE,[...]
KEY
etVALUE
: liste de paires clé/valeur à ajouter à votre configuration d'instance personnalisée.Les clés doivent commencer par une lettre minuscule et ne contenir que des traits d'union (-), des traits de soulignement (_), des minuscules et des chiffres. Les valeurs ne doivent contenir que des traits d'union (-), des traits de soulignement (_), des minuscules et des chiffres.
--validate-only
Utilisez cette option pour vérifier que la requête aboutit avant de l'exécuter.
Par exemple, pour créer une configuration d'instance personnalisée avec la configuration de base eur6
avec une instance dupliquée supplémentaire en lecture seule dans us-east1
, exécutez la commande suivante:
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --clone-config=eur6 \
--add-replicas=location=us-east1,type=READ_ONLY \
Vous pouvez également créer une configuration d'instance personnalisée sans l'option --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
Vous devriez obtenir le résultat suivant :
Creating instance-config...done.
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
PHP
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Ruby
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Créer une instance dans une configuration d'instance personnalisée
Vous pouvez créer une instance dans une configuration d'instance personnalisée.
Console
Pour créer une instance dans une configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Notez que vous n'avez pas besoin de créer une configuration d'instance personnalisée autonome dans la console Google Cloud. La configuration de l'instance est définie automatiquement lorsque vous créez l'instance.
gcloud
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
C++
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
C#
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Go
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Java
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Node.js
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
PHP
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Python
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Ruby
Après avoir créé la configuration d'instance personnalisée, suivez les instructions fournies dans la section Créer une instance.
Mettre à jour une configuration d'instance personnalisée
Vous pouvez modifier le nom à afficher et les libellés d'une configuration d'instance personnalisée.
Vous ne pouvez pas modifier ni mettre à jour les instances répliquées de la configuration de votre instance personnalisée.
Toutefois, vous pouvez créer une configuration d'instance personnalisée avec des instances répliquées supplémentaires, puis déplacer votre instance vers la nouvelle configuration d'instance personnalisée avec les instances répliquées supplémentaires de votre choix. Par exemple, si votre instance se trouve dans la région us-central1
et que vous souhaitez ajouter une instance dupliquée en lecture seule us-west1
, vous devez créer une configuration d'instance personnalisée avec us-central1
comme configuration de base et ajouter us-west1
en tant qu'instance dupliquée en lecture seule. Ensuite, déplacez votre instance vers cette nouvelle configuration d'instance personnalisée.
gcloud
Utilisez la commande 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
Indiquez les valeurs suivantes :
CUSTOM-INSTANCE-CONFIG-ID
- Identifiant permanent de votre configuration d'instance personnalisée.
Il commencera par
custom-
. NEW-DISPLAY-NAME
- Nouveau nom à afficher pour la configuration de l'instance dans la console Google Cloud.
KEY
etVALUE
- Liste des paires clé/valeur à mettre à jour.
- Les clés doivent commencer par une lettre minuscule et ne contenir que des traits d'union (-), des traits de soulignement (_), des minuscules et des chiffres. Les valeurs ne doivent contenir que des traits d'union (-), des traits de soulignement (_), des minuscules et des chiffres.
Les options et valeurs suivantes sont facultatives:
--etag=ETAG
: l'argumentETAG
permet de sélectionner et d'ignorer des mises à jour simultanées dans un scénario lecture-modification-écriture.--validate-only
: utilisez cette option pour vérifier que la requête aboutit avant de l'exécuter.
Exemple :
gcloud spanner instance-configs update custom-eur6 \
--display-name="Customer managed europe replicas"
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
PHP
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Ruby
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Supprimer une configuration d'instance personnalisée
Pour supprimer une configuration d'instance personnalisée, commencez par supprimer une instance dans la configuration d'instance.
gcloud
Exécutez la commande gcloud spanner instance-configs delete
, en remplaçant CUSTOM-INSTANCE-CONFIG-ID
par l'ID de configuration d'instance personnalisée:
gcloud spanner instance-configs delete CUSTOM-INSTANCE-CONFIG-ID
C++
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
C#
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Go
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Java
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Node.js
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
PHP
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Python
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Ruby
Pour savoir comment installer et utiliser la bibliothèque cliente pour Spanner, consultez la page Bibliothèques clientes Spanner.
Étapes suivantes
- Découvrez comment insérer, mettre à jour et supprimer des données à l'aide du langage de manipulation de données (LMD) ou de la gcloud CLI.
- Attribuez des rôles IAM pour l'instance et ses bases de données.
- Découvrez comment concevoir un schéma Spanner.
- Quotas et limites de Spanner.