Aller au contenu principal

Démarrage rapide

Prérequis pour suivre ce tutoriel

Afin de profiter des fonctionnalités de gestion de base de données PostgreSQL depuis la plateforme NumSpot, les prérequis sont :

  • Un compte utilisateur NumSpot actif et connecté détenant le rôle Postgres Admin.
  • Ce compte doit être rattaché à un espace NumSpot.

Créer mon premier service PostgreSQL managé

Pour commencer, nous allons créer une base de données PostgreSQL managée en utilisant l'API HTTP de NumSpot. Nous utiliserons la région SNC et nous allons configurer un cluster PostgreSQL basique adapté à un environnement de développement ou de prototypage.

Créer mon premier cluster PostgreSQL avec l'API NumSpot

Pour créer votre premier cluster PostgreSQL managé, requêtez le point d’accès : /postgresql/spaces/{{ _.spaceId }}/clusters

Puis personnalisez certains champs de la requête :

  • name : le nom du cluster
  • automaticBackup : les backups automatiques quotidiens (true/false)
  • user : le login admin
  • allowedIpRanges : le(s) masque(s) réseau(x) autorisés à accéder à la base PostgreSQL managée
info

Le mot de passe admin sera transmis dans la réponse à cette requête.

Exemple de requête : Création d'un cluster PostgreSQL managé

curl --request POST \
--url https://api.cloudgouv-eu-west-1.numspot.com/postgresql/postgresql/spaces/<SPACE_ID>/clusters \
--header 'Content-Type: application/json' \
--data '{
"name": "myfirstcluster",
"automaticBackup": true,
"user": "LOGINADMIN",
"nodeConfiguration": {
"vcpuCount": 2,
"performanceLevel": "MEDIUM",
"memorySizeGiB": 4
},
"volume": {
"type": "GP2",
"sizeGiB": 10
},
"tags": [
{"key": "Key2", "value": "Value3"}
],
"allowedIpRanges": ["X.X.X.X/X"]
}'

Cette commande crée un cluster PostgreSQL nommé “myfirstcluster” dans NumSpot avec les backups quotidiens automatiques, 10 Go de stockage, 4 Go de RAM, 2 vCPU en performance Medium et le login admin fourni.

Exemple de réponse : Création d'un cluster PostgreSQL managé

{
"allowedIpRanges": ["X.X.X.X/X"],
"automaticBackup": true,
"createdOn": "2024-10-17T08:26:32Z",
"id": "b95f6603-96f9-4c28-89c8-42555048afde",
"lastOperationName": "CREATE",
"lastOperationResult": "IN_PROGRESS",
"name": "myfirstcluster",
"nodeConfiguration": {
"memorySizeGiB": 4,
"performanceLevel": "MEDIUM",
"vcpuCount": 2
},
"password": "gOMsGFN~HdUuSCq9syfc.695Pao+H/}2",
"status": "CREATING",
"tags": [
{"key": "Key2", "value": "Value3"}
],
"user": "LOGINADMIN",
"volume": {
"sizeGiB": 10,
"type": "GP2"
}
}
  • Le champ status indique que l'état actuel de votre cluster est en cours de provisionnement.
  • Le champ lastOperationName indique que la dernière opération demandée est la création.
  • Le champ lastOperationResult indique que l’état actuel de la dernière opération demandée est en cours.
  • Le champ password est le mot de passe de l’utilisateur administrateur spécifié lors de la demande de création.
info

Veillez à bien enregistrer votre mot de passe administrateur, ce dernier est généré de manière automatique et sécurisée sans être stocké sur nos infrastructures.

Suivre l’état de provisionnement du cluster

L’état d’avancement de la création du cluster et les différentes informations relatives à ce dernier sont disponibles via le point d’accès : /postgresql/spaces/{{ _.spaceId }}/clusters/<CLUSTER_ID>

Exemple de requête : Suivre l’état de création d'un cluster PostgreSQL managé

curl --request GET \
--url https://api.cloudgouv-eu-west-1.numspot.com/postgresql/postgresql/spaces/<SPACE_ID>/clusters/<CLUSTER_ID>

Exemple de réponse : Suivre l’état de création d'un cluster PostgreSQL managé

{
"allowedIpRanges": ["X.X.X.X/X"],
"automaticBackup": true,
"createdOn": "2024-10-17T08:26:32Z",
"host": "b95f6603-96f9-4c28-89c8-42555048afde.cloud-api.cloudgouv-eu-west-1.numspot.com/postgresql",
"id": "b95f6603-96f9-4c28-89c8-42555048afde",
"lastOperationName": "CREATE",
"lastOperationResult": "SUCCEEDED",
"name": "mydatabase",
"nodeConfiguration": {
"memorySizeGiB": 4,
"performanceLevel": "MEDIUM",
"vcpuCount": 2
},
"port": 5432,
"status": "READY",
"tags": [
{"key": "Key2", "value": "Value3"}
],
"user": "LOGINADMIN",
"volume": {
"sizeGiB": 10,
"type": "GP2"
}
}
  • Le champ host est l'adresse de connexion du cluster.
  • Lorsque le champ status passe à READY, alors votre cluster est provisionné et prêt à être utilisé.

Se connecter à son cluster

Avec votre client PostgreSQL de prédilection, tapez la commande suivante pour vous connecter à votre cluster :

psql -h b95f6603-96f9-4c28-89c8-42555048afde.cloud-api.cloudgouv-eu-west-1.numspot.com/postgresql -p 5432 -U <LOGINADMIN> -W
  • -h <host> : le nom d'hôte ou l'adresse IP du cluster PostgreSQL managé
  • -p <port> : le port d'écoute du serveur PostgreSQL (par défaut 5432)
  • -U <username> : le login admin spécifié à la création du cluster
  • -W : cette option demandera d'entrer le mot de passe admin après avoir lancé la commande

Vous avez maintenant un cluster PostgreSQL managé sur NumSpot, prêt à l'emploi. Vous pouvez l'utiliser pour stocker et gérer les données de vos applications tout en bénéficiant des fonctionnalités de la plateforme NumSpot.

Pour aller plus loin, consultez notre section “Actions” ou notre contrat OpenAPI.