Sites web

Managed Addons: Postgres et Redis

The Addons tab lets you attach a managed PostgreSQL database or a managed Redis instance to a site without building or maintaining a server for it. Kapsule provisions it, gives you a connection…

L'onglet Addons vous permet d'attacher une base de données PostgreSQL gérée ou une instance Redis gérée à un site sans construire ni maintenir un serveur pour cela. Kapsule l'approvisionne, vous donne une chaîne de connexion, et le démantèle proprement quand vous le supprimez.

Où se trouvent les Addons

Ouvrez Websites, cliquez sur le site, ouvrez le menu Settings dans la bande d'onglets du site, et choisissez Addons. La page s'intitule Managed addons.

Deux options se trouvent dans le catalogue:

AddonUtilisation typique
PostgreSQLL'entrepôt de données principal pour une application qui n'est pas sur MySQL
RedisMise en cache, stockage de session et files d'attente de travaux en arrière-plan

Ceux-ci sont distincts de la base de données MySQL qui accompagne un site d'hébergement standard. Celle-ci se trouve dans l'onglet Files, puis Database et ne nécessite aucun approvisionnement: voir Connecting To Your Database Over an SSH Tunnel.

Managed addons page for a site in KPanel

Demander un Addon

  1. Trouvez l'addon dans la section Add a managed database.
  2. Cliquez sur Add to site.

La demande est enregistrée immédiatement et l'addon apparaît dans Your addons avec un badge PENDING et la note Waiting for provisioner. La page se rafraîchit automatiquement toutes les quinze secondes, vous pouvez donc la laisser ouverte.

Un travail en arrière-plan récupère les demandes en attente toutes les quelques minutes, crée une base de données dédiée et un utilisateur dédié pour votre site, et écrit une chaîne de connexion chiffrée. Le statut passe alors à ACTIVE.

La demande ou la suppression d'un addon nécessite la permission sites:write. Les membres de l'équipe en lecture seule peuvent voir quels addons existent et leur statut, mais les boutons sont masqués.

Un de Chaque, par Site

Un site peut contenir un addon PostgreSQL et un addon Redis. Demander un deuxième du même type est refusé avec un message indiquant qu'il est déjà approvisionné, et le catalogue masque une option une fois qu'elle est installée. Quand les deux sont installés, la section du catalogue se lit All available addons are installed.

Lire le Statut

StatutSignification
PENDINGDemandé, en attente pour l'approvisionneur
PROVISIONINGEn cours de création maintenant
ACTIVEPrêt à être utilisé
FAILEDL'approvisionnement n'a pas été complété; la raison est affichée sur la ligne
DELETEDSupprimé, ne figure plus dans la liste

Une ligne FAILED affiche le texte d'erreur réel en dessous au lieu d'un message générique. Si la raison n'est pas quelque chose sur laquelle vous pouvez agir, citez-la textuellement dans un ticket d'assistance: voir Opening a Support Ticket.

Obtenir la Chaîne de Connexion

Une fois qu'un addon est ACTIVE, sa ligne affiche une chaîne de connexion masquée avec le mot de passe remplacé par des points, vous permettant de confirmer l'hôte et le nom de la base de données en un coup d'œil sans exposer les identifiants.

Cliquez sur Copy connection pour mettre la chaîne de connexion complète dans votre presse-papiers. Elle est déchiffrée côté serveur pour cette seule demande et n'est jamais imprimée sur la page, les partages d'écran et les captures d'écran ne la divulguent donc pas. Chaque révélation est écrite dans la piste d'audit du site et apparaît dans le Site Activity Log.

La chaîne est sous la forme URL habituelle pour chaque moteur, contenant l'hôte, le port, l'utilisateur, le mot de passe et le nom de la base de données qui ont été créés pour ce site.

L'Utiliser dans Votre Application

Collez la chaîne de connexion partout où votre application lit sa configuration. Sur un site Node.js, le bon endroit pour cela est l'onglet Secrets, sous une clé telle que DATABASE_URL ou REDIS_URL, dans l'environnement production.

Ne codez pas en dur la chaîne de connexion dans un fichier que vous validez. Elle contient un mot de passe actif. Si elle atteint un dépôt git, elle doit être traitée comme divulguée, et la seule vrai solution est de supprimer l'addon et d'en demander un nouveau, car les identifiants ne peuvent pas être tournés en place depuis le panneau.

Supprimer un Addon

Cliquez sur Delete sur la ligne. KPanel vous demande de confirmer et est brutal à propos de ce qui se passe: cela supprime la base de données gérée, et les données sont irrécupérables.

La ligne est marquée comme supprimée immédiatement et l'approvisionneur démantèle la base de données et l'utilisateur sous-jacents lors de son passage suivant. Les connexions existantes sont terminées dans le cadre de ce démantèlement.

Aucune sauvegarde n'est effectuée d'un addon géré lors de la suppression, et il n'y a pas d'annulation. S'il y a quelque chose dedans que vous voulez conserver, videz-le d'abord avec pg_dump ou redis-cli --rdb pendant que l'addon est encore actif et que la chaîne de connexion fonctionne toujours.

Choisir Entre les Options

Utilisez PostgreSQL quand votre application a besoin d'une base de données relationnelle et est écrite pour Postgres: contraintes fortes, transactions, colonnes JSON, et recherche en texte intégral que vous auriez autrement dû ajouter.

Utilisez Redis pour les choses qui sont autorisées à disparaître: fragments en cache, compteurs de limite de débit, stockage de session et files d'attente de travaux. Traitez-le comme rapide et volatil, pas comme un système de référence.

Utilisez la base de données MySQL intégrée pour WordPress et pour tout ce qui est déjà écrit pour MySQL. L'ajout d'un addon Postgres à un site WordPress ne fait rien d'utile, car WordPress ne peut pas communiquer avec lui.

Dépannage

L'addon est resté PENDING longtemps. L'approvisionneur s'exécute selon un calendrier plutôt qu'instantanément. Laissez la page ouverte, puisqu'elle se rafraîchit elle-même, et revenez vérifier. S'il n'a pas progressé après quelques passages, ouvrez un ticket d'assistance avec le domaine du site et le type d'addon.

L'approvisionnement a ÉCHOUÉ. Lisez l'erreur sur la ligne. Supprimez l'addon en échec et demandez-le à nouveau, c'est sans risque: une ligne en échec n'a jamais eu de base de données active derrière elle.

Copy connection ne fait rien. Certains navigateurs bloquent les écritures dans le presse-papiers quand l'onglet n'est pas au premier plan. Cliquez d'abord sur la page, puis cliquez de nouveau sur le bouton.

L'application ne peut pas se connecter. Vérifiez trois choses dans l'ordre: que le statut de l'addon soit ACTIVE, que vous ayez copié la chaîne plutôt que de la retaper, et que votre application lit la valeur que vous avez réellement définie plutôt qu'une valeur obsolète d'un déploiement précédent. Un redémarrage est généralement nécessaire avant que la nouvelle configuration soit prise en compte.

Les connexions sont refusées après un redéploiement. Confirmez que la chaîne de connexion dans votre configuration correspond toujours à celle de cette page. Supprimer et demander à nouveau un addon crée un nouvel utilisateur et un nouveau mot de passe, donc une ancienne chaîne ne fonctionnera pas.

Où Aller Ensuite

Vous avez besoin d'aide?

Envoyez-nous un email à support@kapsulehost.com ou ouvrez un chat dans KPanel.

Ouvrir KPanel
Managed Addons: Postgres et Redis