Cette page explique comment créer un cluster AlloyDB et son instance principale.
Avant de commencer
- Le projet Google Cloud que vous utilisez doit être autorisé à accéder à AlloyDB.
- Un réseau VPC du projet Google Cloud que vous utilisez doit déjà être configuré pour l'accès aux services privés à AlloyDB.
- Vous devez disposer de l'un des rôles IAM suivants dans le projet Google Cloud que vous utilisez :
roles/alloydb.admin
(rôle IAM prédéfini "AlloyDB Admin")roles/owner
(rôle IAM de base Propriétaire)roles/editor
(rôle IAM de base Éditeur)
- Si vous ne disposez d'aucun de ces rôles, contactez l'administrateur de votre organisation pour demander l'accès.
- Vous devez également disposer de l'autorisation
compute.networks.list
dans le projet Google Cloud que vous utilisez. Pour obtenir cette autorisation tout en suivant le principe du moindre privilège, demandez à votre administrateur de vous accorder le rôle Utilisateur de réseau Compute (roles/compute.networkUser
). - Pour les charges de travail de développement et d'environnement de simulation, tenez compte de votre région et de votre type de machine. Si vous souhaitez utiliser la forme 1 vCPU, veillez à sélectionner une région compatible avec cette forme. Pour en savoir plus, consultez la section Éléments à prendre en compte lorsque vous utilisez un seul vCPU.
Créer un cluster
Console
Accédez à la page Clusters.
Cliquez sur Créer un cluster.
Choisissez une configuration de cluster. Pour en savoir plus sur la différence entre les configurations haute disponibilité et les configurations de base, consultez la section Nœuds et instances.
Si vous ne savez pas si votre nouveau cluster a besoin d'instances de pool de lecture, choisissez l'une des configurations sans pool de lecture. Vous pourrez ajouter des instances de pool de lecture au cluster ultérieurement, si nécessaire.
Cliquez sur Continuer.
Dans la section Configurer votre cluster, dans le champ ID du cluster, saisissez un ID pour votre cluster.
Dans le champ Password (Mot de passe), saisissez un mot de passe initial pour le nouveau cluster. AlloyDB attribue le mot de passe fourni à l'utilisateur de la base de données
postgres
lors de la création du cluster.Dans le champ Database version (Version de la base de données), sélectionnez la version majeure de PostgreSQL avec laquelle les serveurs de base de données du cluster doivent être compatibles.
Sélectionnez une région. Pour les charges de travail de développement et de bac à sable, envisagez la forme 1 vCPU (en preview), qui est disponible dans certaines régions. Pour en savoir plus, consultez la section Considérations à prendre en compte lorsque vous utilisez un seul vCPU.
Sélectionnez un chemin réseau.
Facultatif: Pour appliquer une plage d'adresses IP spécifique à ce cluster, au lieu d'autoriser AlloyDB à choisir une plage d'adresses IP, procédez comme suit:
Cliquez sur Afficher l'option de plage d'adresses IP allouée.
Dans la liste Plage d'adresses IP allouée, sélectionnez une plage d'adresses IP.
Pour en savoir plus sur cette option, consultez la section Créer un cluster avec une plage d'adresses IP spécifique.
Facultatif: Pour chiffrer ce cluster à l'aide d'une clé de chiffrement gérée par le client (CMEK) au lieu du chiffrement géré par Google, procédez comme suit:
Cliquez sur Options de chiffrement avancées.
Sélectionnez Clé de chiffrement gérée par le client (CMEK).
Dans le menu qui s'affiche, sélectionnez une clé gérée par le client.
La console Google Cloud limite cette liste aux clés du même projet et de la même région que le nouveau cluster. Google Cloud Pour utiliser une clé qui ne figure pas dans cette liste, cliquez sur Vous ne trouvez pas votre clé ? Saisissez un nom de ressource de clé, puis saisissez le nom de la ressource de la clé dans la boîte de dialogue qui s'affiche.
Notez que l'utilisation de CMEK avec AlloyDB nécessite une configuration supplémentaire. Pour en savoir plus, consultez Utiliser CMEK avec AlloyDB.
Cliquez sur Continuer.
Configurez votre instance principale:
- Dans le champ ID d'instance, saisissez un ID pour votre instance principale.
Sélectionnez l'une des séries de machines suivantes:
- C4A (série de machines Google Axion) (preview)
- N2 (série de machines x86) Il s'agit de la série de machines par défaut.
Sélectionnez un type de machine.
- C4A est compatible avec 1, 4, 8, 16, 32, 48, 64 et 72 types ou formes de machines.
- N2 est compatible avec 2, 4, 8, 16, 32, 64, 96 et 128 types ou formes de machines.
Pour en savoir plus sur l'utilisation des séries de machines basées sur Axion C4A, y compris le type de machine à un vCPU, consultez la section Considérations à prendre en compte lors de l'utilisation des séries de machines basées sur Axion C4A.
Facultatif: Définissez des indicateurs personnalisés pour votre instance. Pour chaque indicateur, procédez comme suit:
- Cliquez sur Ajouter une option.
- Dans la liste Nouveau flag de base de données, sélectionnez un flag.
- Indiquez une valeur pour l'indicateur.
- Cliquez sur OK.
Si vous avez choisi un type de cluster sans pools de lecture, cliquez sur Créer un cluster.
gcloud
Pour utiliser gcloud CLI, vous pouvez installer et initialiser Google Cloud CLI ou utiliser Cloud Shell.
Pour créer le cluster avec l'accès aux services privés ou Private Service Connect activé, utilisez la commande
gcloud alloydb clusters create
.Accès aux services privés
gcloud alloydb clusters create CLUSTER_ID \ --database-version=POSTGRES_VERSION \ --password=PASSWORD \ --region=REGION_ID \ --project=PROJECT_ID \ --network=NETWORK
Private Service Connect
gcloud alloydb clusters create CLUSTER_ID \ --database-version=POSTGRES_VERSION \ --password=PASSWORD \ --region=REGION_ID \ --project=PROJECT_ID \ --enable-private-service-connect
Remplacez les éléments suivants :
CLUSTER_ID
: ID du cluster que vous créez. Il doit commencer par une lettre minuscule et peut contenir des lettres minuscules, des chiffres et des traits d'union.VERSION
: version majeure de PostgreSQL avec laquelle vous souhaitez que les serveurs de base de données du cluster soient compatibles. Choisissez l'une des options suivantes :14
, pour la compatibilité avec PostgreSQL 1415
, pour la compatibilité avec PostgreSQL 15, qui est la version PostgreSQL par défaut prise en charge16
, pour la compatibilité avec PostgreSQL 16
PASSWORD
: mot de passe à utiliser pour l'utilisateurpostgres
par défaut.NETWORK
(facultatif): nom du réseau VPC que vous avez configuré pour l'accès aux services privés à AlloyDB. Si vous omettez l'option--network
, AlloyDB utilise le réseaudefault
.--enable-private-service-connect
(facultatif): défini pour activer Private Service Connect comme méthode de connectivité pour le cluster et ses instances.REGION_ID
: région dans laquelle vous souhaitez placer le cluster.PROJECT_ID
: ID du projet dans lequel vous souhaitez placer le cluster.
Cette commande lance une opération de longue durée et renvoie un ID d'opération.
Facultatif: Pour appliquer une plage d'adresses IP spécifique à ce cluster, au lieu d'autoriser AlloyDB à choisir une plage d'adresses IP, fournissez l'argument suivant:
--allocated-ip-range-name=RANGE
Remplacez
RANGE
par le nom de la plage d'adresses IP que vous souhaitez que ce cluster utilise pour l'accès aux services privés.Pour en savoir plus sur cette option, consultez la section Créer un cluster avec une plage d'adresses IP spécifique.
Facultatif: Pour chiffrer ce cluster à l'aide d'une clé de chiffrement gérée par le client (CMEK) au lieu du chiffrement géré par Google par défaut, fournissez les arguments suivants:
--kms-key=KEY_ID \ --kms-keyring=KEYRING_ID \ --kms-location=LOCATION_ID \ --kms-project=PROJECT_ID
Remplacez les éléments suivants :
KEY_ID
: ID de la clé CMEK à utiliser.KEYRING_ID
: ID du trousseau de clés de la clé.LOCATION_ID
: ID de la région du trousseau, qui doit être identique à celle du cluster.PROJECT_ID
: ID du projet du trousseau de clés.
Vérifiez que l'opération a réussi.
gcloud alloydb operations describe OPERATION_ID \ --region=REGION_ID \ --project=PROJECT_ID
Remplacez
OPERATION_ID
par l'ID d'opération renvoyé à l'étape précédente.
Après avoir créé le cluster principal, vous devez créer une instance principale.
Créer une instance principale
Pour créer une instance principale, utilisez la commande gcloud alloydb
instances create
.
gcloud alloydb instances create INSTANCE_ID \
--instance-type=PRIMARY \
--cpu-count=CPU_COUNT \
--machine-type=MACHINE_TYPE \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--allowed-psc-projects=ALLOWED_PROJECT_LIST
Remplacez les éléments suivants :
INSTANCE_ID
: ID de l'instance que vous créez. Il doit commencer par une lettre minuscule et peut contenir des lettres minuscules, des chiffres et des traits d'union.CPU_COUNT
: nombre de processeurs virtuels N2 que vous souhaitez pour l'instance. N2 est la valeur par défaut. Les valeurs valides sont les suivantes:2
: 2 vCPU, 16 Go de RAM4
: 4 vCPU, 32 Go de RAM8
: 8 vCPU, 64 Go de RAM16
: 16 vCPU, 128 Go de RAM32
: 32 processeurs virtuels, 256 Go de RAM64
: 64 vCPU, 512 Go de RAM96
: 96 vCPU, 768 Go de RAM128
: 128 vCPU, 864 Go de RAM
MACHINE_TYPE
: ce paramètre est facultatif lorsque vous déployez des machines N2. Pour déployer la série de machines C4A basée sur Axion (Preview) ou pour migrer entre les machines C4A et N2, choisissez ce paramètre avec les valeurs suivantes.Lorsque vous utilisez
MACHINE_TYPE
etCPU_COUNT
ensemble, les valeurs deCPU_COUNT
etMACHINE_TYPE
doivent correspondre, sinon une erreur s'affiche.Pour les séries de machines C4A basées sur Axion, choisissez le type de machine avec les valeurs suivantes:
c4a-highmem-1
c4a-highmem-4-lssd
c4a-highmem-8-lssd
c4a-highmem-16-lssd
c4a-highmem-32-lssd
c4a-highmem-48-lssd
c4a-highmem-64-lssd
c4a-highmem-72-lssd
Pour déployer C4A avec 4 vCPU ou plus, utilisez le suffixe
lssd
pour activer le cache ultra-rapide.Pour en savoir plus sur l'utilisation des séries de machines basées sur Axion C4A, y compris le type de machine à un vCPU, consultez la section Considérations à prendre en compte lors de l'utilisation des séries de machines basées sur Axion C4A.
Pour la série de machines N2 basées sur l'architecture x86, utilisez le type de machine avec les valeurs suivantes:
N2-highmem-2
N2-highmem-4
N2-highmem-8
N2-highmem-16
N2-highmem-32
N2-highmem-64
N2-highmem-96
N2-highmem-128
REGION_ID
: région dans laquelle vous souhaitez placer l'instance.CLUSTER_ID
: ID du cluster que vous avez créé précédemment.PROJECT_ID
: ID du projet dans lequel le clusterALLOWED_PROJECT_LIST
(facultatif): liste d'ID de projet ou de numéro de projet séparés par une virgule auxquels vous souhaitez autoriser l'accès à l'instance, si vous utilisez Private Service Connect.
Terraform
Pour créer un cluster, utilisez une ressource Terraform.
Voici un extrait de code permettant de créer un cluster basé sur l'exemple Cluster AlloyDB complet:
resource "google_alloydb_cluster" "cluster_abc" {
cluster_id = "alloydb-cluster"
location = "us-central1"
network_config {
network = google_compute_network.default.id
}
database_version = "POSTGRES_15"
initial_user {
user = "postgres"
password = "postgres"
}
continuous_backup_config {
enabled = true
recovery_window_days = 14
}
automated_backup_policy {
location = "us-central1"
backup_window = "1800s"
enabled = true
weekly_schedule {
days_of_week = ["MONDAY"]
start_times {
hours = 23
minutes = 0
seconds = 0
nanos = 0
}
}
quantity_based_retention {
count = 1
}
labels = {
test = "alloydb-cluster-backup-policy-labels"
}
}
labels = {
test = "alloydb-cluster-labels"
}
}
data "google_project" "project" {}
resource "google_compute_network" "default" {
name = "alloydb-cluster-network"
}
Préparer Cloud Shell
Pour appliquer votre configuration Terraform dans un projet Google Cloud, préparez Cloud Shell comme suit:
- Lancez Cloud Shell.
Définissez le projet Google Cloud par défaut dans lequel vous souhaitez appliquer vos configurations Terraform.
Vous n'avez besoin d'exécuter cette commande qu'une seule fois par projet et vous pouvez l'exécuter dans n'importe quel répertoire.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Les variables d'environnement sont remplacées si vous définissez des valeurs explicites dans le fichier de configuration Terraform.
Préparer le répertoire
Chaque fichier de configuration Terraform doit avoir son propre répertoire, également appelé module racine.
- Dans Cloud Shell, créez un répertoire et un nouveau fichier dans ce répertoire. Le nom de fichier doit être un fichier TF, par exemple
main.tf
. Dans ce document, le fichier est appelémain.tf
.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
- Copiez l'exemple de code dans le fichier
main.tf
que vous venez de créer. Vous pouvez également copier le code depuis GitHub. Cela est recommandé lorsque l'extrait Terraform fait partie d'une solution de bout en bout. - Examinez le fichier
main.tf
et modifiez les exemples de paramètres à appliquer à votre environnement. - Enregistrez les modifications.
- Initialisez Terraform. Cette opération n'est à effectuer qu'une seule fois par répertoire.
Facultatif: Pour utiliser la dernière version du fournisseur Google, incluez l'optionterraform init
-upgrade
:terraform init -upgrade
Appliquer les modifications
- Examinez la configuration pour vous assurer que les mises à jour Terraform correspondent à vos attentes:
Corrigez les modifications de la configuration si nécessaire.terraform plan
- Appliquez la configuration Terraform en exécutant la commande suivante et en saisissant
yes
lorsque vous y êtes invité: Attendez que Terraform affiche le messageterraform apply
Apply complete!
. - Ouvrez votre projet Google Cloud pour afficher les résultats. Dans la console Google Cloud, accédez à vos ressources dans l'interface utilisateur pour vous assurer que Terraform les a créées ou mises à jour.
REST v1
Cet exemple crée un cluster. Le paramètre network
est obligatoire.
Pour obtenir la liste complète des paramètres de cet appel, consultez Méthode: projects.locations.clusters.create. Pour en savoir plus sur les paramètres de cluster, consultez Voir les paramètres des clusters et des instances.
N'incluez pas d'informations sensibles ou permettant d'identifier personnellement l'utilisateur dans l'ID de cluster, car les utilisateurs externes peuvent le voir. Vous n'avez pas besoin d'indiquer l'ID du projet dans le nom du cluster. Cet ajout s'effectue automatiquement le cas échéant, par exemple dans les fichiers journaux.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
CLUSTER_ID
: ID du cluster que vous créez. Il doit commencer par une lettre minuscule et peut contenir des lettres minuscules, des chiffres et des traits d'union.PROJECT_ID
: ID du projet dans lequel vous souhaitez placer le cluster.LOCATION_ID
: ID de la région du cluster.NETWORK
: nom du réseau VPC que vous avez configuré pour l'accès aux services privés à AlloyDB.DATABASE_VERSION
: chaîne d'énumération de la version de base de données, par exemplePOSTGRES_15
.INITIAL_USERNAME
: nom d'utilisateur à utiliser pour l'utilisateurpostgres
par défaut.INITIAL_USER_PASSWORD
: mot de passe à utiliser pour l'utilisateurpostgres
par défaut.
Le corps de la requête JSON se présente comme suit:
{
clusterId = "CLUSTER_ID"
network = "projects/PROJECT_ID/global/networks/NETWORK"
databaseVersion = "DATABASE_VERSION"
initialUser {
user = "INITIAL_USERNAME"
password = "INITIAL_USER_PASSWORD"
}
continuousBackupConfig {
enabled = true
recoveryWindowDays = 14
}
weeklySchedule {
daysOfWeek = ["MONDAY"]
startTimes {
hours = 23
minutes = 0
seconds = 0
nanos = 0
}
}
quantityBasedRetention {
count = 1
}
labels = {
test = "alloydb-cluster-full"
}
}
}
Pour envoyer votre requête, enregistrez le corps de la requête dans un fichier nommé request.json
et utilisez la requête POST
suivante:
POST https://alloydb.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/clusters
Cloner un cluster actif
Pour créer un clone d'un cluster actif, contenant une copie de toutes les données du cluster source et exécuté dans la même région, effectuez une récupération au moment donné sur ce cluster. Vous pouvez spécifier un moment très récent, par exemple la première seconde de la minute en cours.
Ce processus ne copie que les données du cluster source dans le clone, et non la configuration du cluster source. Pour chiffrer les données du clone à l'aide de CMEK, vous devez spécifier les détails CMEK dans la commande de récupération au point d'inflexion, même si les données du cluster source sont déjà chiffrées par CMEK. Une fois le nouveau cluster créé, vous devez ajouter des instances, des indicateurs de base de données, des planifications de sauvegarde et toute autre configuration nécessaire pour répondre à vos besoins.
Un cluster créé de cette manière existe indépendamment de sa source, et ses données n'ont aucune relation avec celles du cluster source une fois la duplication initiale terminée. Si vous souhaitez créer des clusters secondaires qui suivent et répliquent automatiquement les modifications apportées aux données dans leurs clusters sources, consultez À propos de la réplication interrégionale.
Créer un cluster avec une plage d'adresses IP spécifique
AlloyDB utilise l'accès aux services privés pour permettre aux ressources internes d'un cluster de communiquer entre elles. Avant de pouvoir créer un cluster, votre réseau cloud privé virtuel (VPC) doit contenir au moins une plage d'adresses IP configurée avec une connexion d'accès aux services privés.
Si votre réseau VPC contient plusieurs plages d'adresses IP configurées avec l'accès aux services privés, vous pouvez spécifier la plage qu'AlloyDB attribue à un nouveau cluster.
Pour spécifier une plage d'adresses IP, consultez les étapes facultatives de la section Créer un cluster.
Si vous ne spécifiez pas de plage, AlloyDB effectue l'une des actions suivantes lors de la création d'un cluster:
Si plusieurs plages d'adresses IP avec accès aux services privés sont disponibles, AlloyDB en choisit une.
Si vous avez configuré exactement une plage d'adresses IP dans votre VPC avec un accès aux services privés, AlloyDB applique cette plage au nouveau cluster.
Pour en savoir plus sur la création de plages d'adresses IP à utiliser avec AlloyDB, consultez la section Activer l'accès aux services privés.
Éléments à prendre en compte lors de l'utilisation de la série de machines C4A Axion
AlloyDB propose une série de machines C4A basée sur Google Axion, le processeur personnalisé Arm de Google. Les machines virtuelles (VM) C4A sont disponibles en configurations prédéfinies pour 1, 4, 8, 16, 32, 48, 64 et 72 vCPU, avec jusqu'à 576 Go de mémoire DDR5 (Double Data Rate 5).
Lorsque vous choisissez C4A, tenez compte des points suivants:
- Pour déployer la série de machines C4A, vous devez utiliser
MACHINE_TYPE
etCPU_COUNT
, oùCPU_COUNT
doit correspondre à la valeur decpu-count
dansMACHINE_TYPE
. - Pour passer de N2 à C4A à l'aide de Google Cloud CLI, vous devez mettre à jour
MACHINE_TYPE
etCPU_COUNT
, oùCPU_COUNT
doit correspondre à la valeur decpu-count
dansMACHINE_TYPE
. - Pour passer de C4A à N2, vous devez mettre à jour
MACHINE_TYPE
etCPU_COUNT
, oùCPU_COUNT
doit correspondre à la valeur decpu-count
dansMACHINE_TYPE
.
C4A est disponible dans les régions suivantes:
asia-east1
asia-southeast1
europe-west1
europe-west2
europe-west3
europe-west4
us-central1
us-east1
us-east4
Considérations à prendre en compte lorsque vous utilisez le type de machine à un vCPU
AlloyDB propose une forme à 1 vCPU avec C4A et est destiné uniquement au développement et au bac à sable. Pour les charges de travail de production, choisissez au moins deux vCPU.
Lorsque vous choisissez un seul vCPU, tenez compte des limites suivantes:
- Un vCPU est proposé avec 8 Go de mémoire sans prise en charge du cache ultra-rapide.
- Une configuration avec un seul vCPU est recommandée pour les environnements de développement et de bac à sable avec des bases de données de taille inférieure à 10 Go. Pour les bases de données plus importantes et les charges de travail de production, envisagez d'utiliser au moins deux vCPU.
- Vous pouvez configurer avec la haute disponibilité (HA), mais aucun contrat de niveau de service garantissant le temps d'activité n'est proposé.
- Les mises à niveau de version majeure sur place ne sont pas compatibles avec les machines C4A à 1 vCPU, 48 vCPU et 72 vCPU. Envisagez d'autres approches de mise à niveau, comme le dump et la restauration, ou essayez d'augmenter la capacité avant de lancer une mise à niveau de version majeure sur place.
- Consultez les régions compatibles avec C4A dans lesquelles vous pouvez déployer un vCPU.