Nous avons Postgres là-bas, mais je ne sais pas quoi en faire (c)

Ceci est une citation d'un de mes amis qui m'a posé une question sur Postgres. Ensuite, nous avons résolu son problème en quelques jours et, en me remerciant, il a ajouté : « C'est bien d'avoir un administrateur de base de données familier. »

Mais que faire si vous ne connaissez pas de DBA ? Il peut y avoir de nombreuses options de réponse, allant de la recherche d'amis entre amis à l'étude de la question par vous-même. Mais quelle que soit la réponse qui vous vient à l’esprit, j’ai une bonne nouvelle pour vous. En mode test, nous avons lancé un service de recommandation pour Postgres et tout ce qui l'entoure. Qu’est-ce que c’est et comment en sommes-nous arrivés à vivre ainsi ?

Pourquoi tout cela?

Postgres n'est en tout cas pas facile, et parfois très difficile. Cela dépend du degré d’implication et de responsabilité.

Ceux qui travaillent dans les opérations doivent s'assurer que Postgres en tant que service fonctionne correctement et de manière stable - surveiller l'utilisation des ressources, la disponibilité, l'adéquation de la configuration, effectuer périodiquement des mises à jour et des contrôles de santé réguliers. Ceux qui développent et écrivent des applications, en termes généraux, doivent surveiller la manière dont l'application interagit avec la base de données et éviter qu'elle ne crée des situations d'urgence susceptibles de faire tomber la base de données. Si une personne a la malchance d'être responsable technique/directeur technique, alors il est important pour elle que Postgres dans son ensemble fonctionne de manière fiable, prévisible et ne crée pas de problèmes, alors qu'il est conseillé de ne pas s'immerger profondément dans Postgres pendant une longue période. .

Dans tous ces cas, il y a vous et Postgres. Pour bien servir Postgres, vous devez en avoir une bonne compréhension et comprendre son fonctionnement. Si Postgres n'est pas une spécialisation directe, vous pouvez alors passer beaucoup de temps à l'apprendre. Idéalement, quand on a le temps et l’envie, il n’est pas toujours clair par où commencer, comment et où aller.

Même si un contrôle est introduit, ce qui devrait en théorie faciliter le fonctionnement, la question de l'expertise reste ouverte. Pour pouvoir lire et comprendre des graphiques, vous devez toujours avoir une bonne compréhension du fonctionnement de Postgres. Sinon, toute surveillance se transforme en images tristes et en spam provenant d'alertes à des moments aléatoires de la journée.

Armes juste conçu pour rendre Postgres plus facile à utiliser. Le service collecte et analyse des données sur Postgres et formule des recommandations sur ce qui peut être amélioré.

L'objectif principal du service est de fournir des recommandations claires qui donnent une idée de ce qui se passe et de ce qui doit être fait ensuite.

Pour les professionnels qui ne disposent pas de connaissances spécialisées, les recommandations constituent un point de départ pour une formation avancée. Pour les spécialistes avancés, les recommandations indiquent les points auxquels il convient de prêter attention. À cet égard, Weaponry agit comme un assistant qui effectue des tâches de routine pour détecter les problèmes ou les lacunes nécessitant une attention particulière. Les armes peuvent être comparées à un linter qui vérifie Postgres et signale les défauts.

Comment ça va maintenant ?

À l'heure actuelle, Armes est en mode test et gratuit, les inscriptions sont temporairement limitées. En collaboration avec plusieurs bénévoles, nous finalisons le moteur de recommandations dans les bases proches des combats, identifions les faux positifs et travaillons sur le texte des recommandations.

À propos, les recommandations sont toujours assez simples - elles disent simplement quoi faire et comment le faire, sans détails supplémentaires - vous devrez donc d'abord suivre les liens associés ou les rechercher sur Google. Les vérifications et recommandations couvrent les paramètres du système et du matériel, les paramètres de Postgres lui-même, le schéma interne et les ressources utilisées. Il reste encore beaucoup de choses à ajouter dans les plans.

Et bien sûr, nous recherchons des bénévoles prêts à essayer le service et à donner leur avis. Nous avons aussi démo, vous pouvez entrer et jeter un oeil. Si vous comprenez que vous en avez besoin et que vous êtes prêt à essayer, écrivez-nous à Courrier.

Mis à jour le 2020/09/16. Commencer.

Après l'enregistrement, l'utilisateur est invité à créer un projet, ce qui vous permet de combiner les instances de base de données en groupes. Après avoir créé un projet, l'utilisateur est dirigé vers les instructions de configuration et d'installation de l'agent. En un mot, vous devez créer des utilisateurs pour l'agent, puis télécharger le script d'installation de l'agent et l'exécuter. Dans les commandes shell, cela ressemble à ceci :

psql -c "CREATE ROLE pgscv WITH LOGIN SUPERUSER PASSWORD 'A7H8Wz6XFMh21pwA'"
export PGSCV_PG_PASSWORD=A7H8Wz6XFMh21pwA
curl -s https://dist.weaponry.io/pgscv/install.sh |sudo -E sh -s - 1 6ada7a04-a798-4415-9427-da23f72c14a5

Si l'hôte dispose de pgbouncer, vous devrez également créer un utilisateur pour connecter l'agent. La manière spécifique de configurer un utilisateur dans pgbouncer peut être très variable et fortement dépendante de la configuration utilisée. En termes généraux, la configuration se résume à ajouter un utilisateur à stats_utilisateurs fichier de configuration (généralement pgbouncer.ini) et écrire le mot de passe (ou son hachage) dans le fichier spécifié dans le paramètre fichier_auth. Si vous modifiez stats_users, vous devrez redémarrer pgbouncer.

Le script install.sh prend quelques arguments obligatoires qui sont uniques pour chaque projet et, via des variables d'environnement, il accepte les détails des utilisateurs créés. Ensuite, le script démarre l'agent en mode bootstrap - l'agent se copie dans PATH, crée une configuration avec des détails, une unité systemd et démarre en tant que service systemd.
Ceci termine l’installation. En quelques minutes, l'instance de base de données apparaîtra dans la liste des hôtes de l'interface et vous pourrez déjà consulter les premières recommandations. Mais un point important est que de nombreuses recommandations nécessitent un grand nombre de métriques accumulées (au moins par jour).

Source: habr.com

Ajouter un commentaire