Partager via


Révision d’Azure Well-Architected Framework - Azure Database pour PostgreSQL

Cet article fournit les meilleures pratiques architecturales pour Azure Database pour PostgreSQL.

L’orientation repose sur les cinq piliers de l’excellence architecturale :

  • Fiabilité
  • Sécurité
  • Optimisation des coûts
  • Excellence opérationnelle
  • Efficacité des performances

Prérequis

Comprendre les piliers Well-Architected Framework peut aider à produire une architecture cloud de haute qualité, stable et efficace. Nous vous recommandons de passer en revue votre charge de travail à l’aide de l’évaluation de révision d’Azure Well-Architected Framework .

Azure Database pour PostgreSQL est un service de base de données relationnelle dans Azure basé sur la base de données relationnelle open source PostgreSQL. Il s’agit d’un produit de base de données en tant que service complètement managé qui peut gérer des charges de travail critiques avec une sécurité, une haute disponibilité et des performances prévisibles, et une scalabilité dynamique. Azure Database pour PostgreSQL est basé sur l’édition community du moteur de base de données PostgreSQL. Il est compatible avec l’édition community du serveur PostgreSQL et prend en charge les fonctionnalités d’extension PostgreSQL telles que PostGIS et TimescaleDB.

Notes

Pour explorer une idée de solution légère qui utilise Azure Database pour PostgreSQL pour stocker les résultats analytiques de l’API Cognitive Services, consultez Applications intelligentes à l’aide de Azure Database pour PostgreSQL.

Fiabilité

Azure Database pour PostgreSQL - Serveur flexible offre une prise en charge de la haute disponibilité en approvisionnant des réplicas principaux et de secours physiquement distincts, soit dans la même zone de disponibilité (zonale) ou entre des zones de disponibilité (redondantes interzones). Ce modèle de haute disponibilité garantit que les données validées ne sont jamais perdues en cas de défaillance. Le modèle est également conçu pour que la base de données ne devienne pas un point de défaillance unique dans votre architecture logicielle. Azure Database pour PostgreSQL : le serveur flexible fournit des fonctionnalités qui protègent les données et atténuent les temps d’arrêt de vos bases de données stratégiques pendant les temps d’arrêt planifiés et non planifiés. Basé sur l’infrastructure Azure qui offre une résilience et une disponibilité robustes, le serveur flexible dispose de fonctionnalités de continuité d’activité qui fournissent une protection contre les pannes, répondent aux exigences de temps de récupération et réduisent l’exposition aux pertes de données.

Liste de vérification de la conception de la fiabilité

Vous devez passer en revue les principes de conception pour optimiser le coût de votre architecture.

  • Cibles définies pour le RPO (objectif de point de récupération) et le RTO (objectif de temps de récupération) pour les charges de travail.
  • Sélectionnez la configuration de haute disponibilité appropriée.
  • Configurer la sauvegarde de géoredondance.
  • Testez votre plan de récupération d’urgence pour garantir une restauration rapide des données en cas de défaillance.
  • Testez le basculement à la demande pour votre serveur à haute disponibilité afin de vous assurer que notre application se comporte comme prévu.
  • Surveillez votre serveur pour vous assurer qu’il est sain et performant comme prévu.

Recommandations en matière de fiabilité

Recommandation Avantage
Cibles définies pour le RPO (objectif de point de récupération) et le RTO (objectif de temps de récupération) pour les charges de travail. Dérivez ces valeurs en effectuant une évaluation des risques et en vous assurant de comprendre le coût et le risque de temps d’arrêt et de perte de données. Il s’agit d’exigences non opérationnelles d’un système qui doivent être définis selon les besoins de l’entreprise.
Sélectionnez la configuration de haute disponibilité appropriée. Azure Database pour PostgreSQL Server offre des configurations de haute disponibilité, garantissant que le service reste disponible en cas de panne de zone et qu’aucune donnée n’est perdue. Lorsque la haute disponibilité est configurée, le serveur Azure Database pour PostgreSQL provisionne et gère automatiquement un réplica de secours.
Configurer la sauvegarde de géoredondance. Des réplicas de lecture inter-régions peuvent être déployés pour protéger vos bases de données contre les défaillances au niveau de la région. Les sauvegardes géoredondantes sont activées dans certaines régions et facilitent la récupération d’urgence si la région du serveur principal est en panne.
Testez votre plan de récupération d’urgence pour garantir une restauration rapide des données en cas de défaillance. Les réplicas en lecture peuvent être déployés sur une autre région et promus en serveur en lecture-écriture si une récupération d’urgence est nécessaire.
Surveillez votre serveur pour vous assurer qu’il est sain et performant comme prévu. Nous avons mis en place une supervision de la base de données pour surveiller les défaillances au niveau de la base de données et générer des alertes.

Conseil

Pour plus d’informations sur les conseils de fiabilité pour Azure Database pour PostgreSQL, consultez Fiabilité avec Azure Database pour PostgreSQL.

Définitions de stratégies Azure

Azure Policy définitions vous aident à appliquer des règles et des configurations spécifiques pour les ressources au sein de votre environnement Azure. Pour garantir la fiabilité des Azure Database pour PostgreSQL, vous pouvez créer des définitions de Azure Policy personnalisées pour implémenter des configurations et des meilleures pratiques spécifiques. Voici un exemple de définitions de Azure Policy personnalisées que vous pouvez créer pour la fiabilité :

Sécurité

Pensez à la sécurité tout au long du cycle de vie d’une application, de la conception et de l’implémentation au déploiement et aux opérations. La plateforme Azure protège contre diverses menaces telles que l’intrusion réseau et les attaques DDoS. Vous devez toujours intégrer la sécurité à votre application et à vos processus DevOps.

Liste de contrôle de la conception de la sécurité

Vous devez passer en revue les principes de conception pour optimiser le coût de votre architecture.

  • SSL et appliquer le chiffrement pour sécuriser les données en transit.
  • Implémentez des groupes de sécurité réseau et des pare-feu pour contrôler l’accès à votre base de données.
  • Utilisez Azure Active Directory pour l’authentification et l’autorisation afin d’améliorer la gestion des identités.
  • Configurez la sécurité au niveau des lignes.

Recommandations de sécurité

Recommandation Avantage
SSL et appliquer le chiffrement pour sécuriser les données en transit. Déployez le certificat racine global DigiCert à partir d’un certificat d’autorité de certification approuvé nécessaire pour communiquer via SSL avec les applications clientes.
Implémentez des groupes de sécurité réseau et des pare-feu pour contrôler l’accès à votre base de données. Dans le cadre du modèle Confiance nulle pour la sécurité, la segmentation réseau est recommandée lorsque les chemins de communication entre les composants (dans ce cas, l’application et le serveur de base de données) sont limités à ce qui est nécessaire. Cela peut être implémenté à l’aide du groupe de sécurité réseau et des groupes de sécurité d’application.
Utilisez Azure Active Directory pour l’authentification et l’autorisation afin d’améliorer la gestion des identités. L’authentification Microsoft Azure Active Directory (Azure AD) est un mécanisme de connexion à Azure Database pour PostgreSQL à l’aide d’identités définies dans Azure AD.
Configurez la sécurité au niveau des lignes. La sécurité au niveau des lignes (SNL) est une fonctionnalité de sécurité PostgreSQL qui permet aux administrateurs de base de données de définir des stratégies pour contrôler la façon dont des lignes spécifiques de données s’affichent et fonctionnent pour un ou plusieurs rôles. La sécurité au niveau des lignes est un filtre supplémentaire que vous pouvez appliquer à une table de base de données PostgreSQL.

Optimisation des coûts

L’optimisation des coûts consiste à comprendre vos options de configuration et les meilleures pratiques recommandées pour réduire les dépenses inutiles et améliorer l’efficacité opérationnelle. Vous devez examiner votre charge de travail pour identifier les opportunités de réduction des coûts.

Liste de contrôle de la conception des coûts

Vous devez passer en revue les principes de conception pour optimiser le coût de votre architecture.

  • Choisissez le niveau et la référence SKU appropriés.
  • Comprendre le mode de haute disponibilité.
  • Mettre à l’échelle les niveaux de calcul et de stockage.
  • Considérez les instances réservées.
  • Utilisez votre stockage provisionné.
  • Comprendre les coûts de géoredondance.
  • Évaluer les décisions de scale-up du stockage.
  • Déployer dans la même région qu’une application.
  • Description des coûts orientés haute disponibilité.
  • Consolider les bases de données et les serveurs.

Recommandations en matière de coûts

Recommandations Avantages
Choisissez le niveau et la référence SKU appropriés. Choisissez le niveau tarifaire et les références SKU de calcul qui prennent en charge les besoins spécifiques de votre charge de travail. Azure Advisor vous donne des recommandations pour optimiser et réduire vos dépenses Azure globales. Les recommandations incluent le dimensionnement droit du serveur que vous devez suivre.
Comprendre le mode de haute disponibilité. La haute disponibilité rend un serveur de secours toujours disponible dans la même zone ou région. L’activation de la haute disponibilité double votre coût.
Ajustez les niveaux de calcul et de stockage. Vous devez ajuster manuellement les niveaux de calcul et de stockage pour répondre aux exigences de l’application au fil du temps.
Utilisez la fonctionnalité Démarrer/Arrêter. Le serveur flexible dispose d’une fonctionnalité Démarrer/Arrêter que vous pouvez utiliser pour arrêter l’exécution du serveur lorsque vous n’en avez pas besoin.
Considérez les instances réservées. Envisagez une réservation d’un ou trois ans pour recevoir des remises importantes sur le calcul. Utilisez ces réservations pour les charges de travail avec une utilisation cohérente du calcul pendant un an ou plus.
Utilisez votre stockage provisionné. Aucun frais supplémentaire n’est facturé pour le stockage de sauvegarde jusqu’à 100 % de votre stockage serveur provisionné total.
Comprendre les coûts de redondance. Le stockage géoredondant (GRS) coûte deux fois plus cher que le stockage redondant local (LRS). GRS nécessite le double de la capacité de stockage de LRS.
Évaluer les décisions de montée en puissance du stockage. Vous devez évaluer vos besoins de stockage actuels et futurs avant de procéder à un scale-up de votre stockage. Une fois que vous effectuez un scale-up du stockage, vous ne pouvez pas effectuer un scale-down.
Déployez dans la même région que l’application. Déployez dans la même région que les applications pour réduire les coûts de transfert. Lorsque vous utilisez l’intégration de réseau virtuel, les applications d’un autre réseau virtuel n’ont pas d’accès direct aux serveurs flexibles. Pour leur accorder l’accès, vous devez configurer le peering de réseaux virtuels. Le peering de réseaux virtuels a des coûts nominaux de transfert de données entrants et sortants.
Description des coûts orienté haute disponibilité. C’est un compromis entre la haute disponibilité et les coûts. La haute disponibilité est le double du coût pour la configuration non haute disponibilité, mais elle est nécessaire.
Consolider les bases de données et les serveurs. Vous pouvez consolider plusieurs bases de données et serveurs en un seul serveur pour réduire les coûts.

Définitions de stratégies Azure

Azure Policy définitions vous aident à appliquer des règles et des configurations spécifiques pour les ressources au sein de votre environnement Azure. Pour garantir l’optimisation des coûts pour Azure Database pour PostgreSQL, vous pouvez créer des définitions de Azure Policy personnalisées pour appliquer des configurations et des meilleures pratiques spécifiques. Voici un exemple de définitions de Azure Policy personnalisées que vous pouvez créer pour l’optimisation des coûts :

Excellence opérationnelle

Les principes de l’excellence opérationnelle sont une série de considérations qui peuvent vous aider à atteindre des pratiques opérationnelles supérieures.

Pour obtenir une compétence supérieure en opérations, examinez et améliorez la façon dont les logiciels sont développés, déployés, exploités et gérés.

Liste de contrôle de conception de l’excellence opérationnelle

Vous devez passer en revue les principes de conception pour optimiser le coût de votre architecture.

  • Configurez des sauvegardes automatisées et des stratégies de rétention pour maintenir la disponibilité des données et répondre aux exigences de conformité.
  • Implémentez des mises à jour et des mises à jour correctives automatisées pour assurer la sécurité et la mise à jour de vos instance PostgreSQL.
  • Surveillez l’intégrité et les performances de la base de données à l’aide d’Azure Monitor et configurez des alertes pour les métriques critiques.

Recommandations d’excellence opérationnelle

Recommandation Avantages
Configurez des sauvegardes automatisées et des stratégies de rétention pour maintenir la disponibilité des données et répondre aux exigences de conformité. Azure Database pour PostgreSQL fournit des sauvegardes automatisées et une restauration dans le temps pour votre base de données. Vous pouvez configurer la période de rétention pour les sauvegardes jusqu’à 35 jours.
Implémentez des mises à jour et des mises à jour correctives automatisées pour assurer la sécurité et la mise à jour de vos instance PostgreSQL. Azure Database pour PostgreSQL fournit des mises à jour et des mises à jour correctives automatisées pour votre base de données. Vous pouvez configurer la fenêtre de maintenance de votre serveur afin de réduire l’impact sur votre charge de travail.
Surveillez l’intégrité et les performances de la base de données à l’aide d’Azure Monitor et configurez des alertes pour les métriques critiques. Azure Database pour PostgreSQL fournit des fonctionnalités intégrées de surveillance et d’alerte. Vous pouvez surveiller l’intégrité et les performances de votre base de données à l’aide d’Azure Monitor. Vous pouvez également configurer des alertes pour les métriques critiques afin d’être averti lorsque votre base de données ne fonctionne pas comme prévu.

Définitions de la stratégie d’excellence opérationnelle

Azure Policy définitions vous aident à appliquer des règles et des configurations spécifiques pour les ressources au sein de votre environnement Azure. Pour garantir l’excellence opérationnelle pour Azure Database pour PostgreSQL, vous pouvez créer des définitions de Azure Policy personnalisées pour appliquer des configurations et des meilleures pratiques spécifiques. Voici un exemple de définitions de Azure Policy personnalisées que vous pouvez créer pour l’excellence opérationnelle :

Efficacité des performances

L’efficacité des performances est la capacité de votre charge de travail à s’adapter à la demande des utilisateurs de façon efficace. Nous vous recommandons de passer en revue les principes d’efficacité des performances.

Dans la liste de contrôle de conception et la liste des recommandations ci-dessous, les appels indiquent si chaque choix s’applique à l’architecture de cluster, à l’architecture de charge de travail ou aux deux.

Check-list de conception de l’efficacité des performances

Vous devez passer en revue les principes de conception pour optimiser le coût de votre architecture.

  • Concevez votre schéma et vos requêtes pour plus d’efficacité afin de réduire la consommation de ressources.
  • Implémentez des réplicas en lecture pour décharger le trafic de lecture et améliorer les performances globales.

Recommandations en matière d’efficacité des performances

Recommandation Avantages
Concevez votre schéma et vos requêtes pour plus d’efficacité afin de réduire la consommation de ressources. Vous devez concevoir votre schéma et vos requêtes pour plus d’efficacité afin de réduire la consommation de ressources.
Implémentez des réplicas en lecture pour décharger le trafic de lecture et améliorer les performances globales. Vous pouvez utiliser des réplicas en lecture pour décharger le trafic de lecture et améliorer les performances.

Définitions de stratégie d’efficacité des performances

Azure Policy définitions vous aident à appliquer des règles et des configurations spécifiques pour les ressources au sein de votre environnement Azure. Pour garantir l’efficacité des performances pour Azure Database pour PostgreSQL, vous pouvez créer des définitions de Azure Policy personnalisées pour appliquer des configurations et des meilleures pratiques spécifiques. Voici un exemple de définitions de Azure Policy personnalisées que vous pouvez créer pour l’efficacité des performances :

Ressources supplémentaires

Envisagez d’autres ressources liées à Azure Database pour PostgreSQL.

Aide du Centre d’architecture Azure

Guide du Cloud Adoption Framework

Étape suivante