Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Pilier d'excellence opérationnelle
Le pilier de l'excellence opérationnelle du AWS Well-Architected Framework se concentre sur le fonctionnement et le suivi des systèmes, ainsi que sur l'amélioration continue des processus et des procédures. Cela inclut la capacité de soutenir le développement et d'exécuter efficacement les charges de travail, de mieux comprendre leur fonctionnement et d'améliorer en permanence les processus et procédures de support afin de créer de la valeur commerciale. Vous pouvez réduire la complexité opérationnelle grâce à des charges de travail autoréparables, qui détectent et corrigent la plupart des problèmes sans intervention humaine. Vous pouvez atteindre cet objectif en suivant les meilleures pratiques décrites dans cette section et en utilisant les métriques et les mécanismes d'Amazon Neptune Analytics pour réagir correctement lorsque votre charge de travail s'écarte du comportement attendu. APIs
Cette discussion sur le pilier de l'excellence opérationnelle met l'accent sur les domaines clés suivants :
-
Infrastructure en tant que code (IaC)
-
Gestion des modifications
-
Stratégies de résilience
-
Gestion des incidents
-
Rapports d'audit pour la conformité
-
Journalisation et surveillance
Automatisez le déploiement à l'aide d'une approche iAC
Les meilleures pratiques pour automatiser le déploiement sur Neptune à l'aide d'IaC sont les suivantes :
-
Appliquez IaC pour déployer les graphiques de Neptune Analytics et les ressources associées. Pour une configuration cohérente de l'environnement, utilisez le support de Neptune Analytics fourni par pour fournir des graphiques et AWS CloudFormationdes points de terminaison privés.
-
CloudFormation À utiliser pour approvisionner des instances de blocs-notes Neptune sur Amazon SageMaker AI. Vous pouvez utiliser des blocs-notes pour interroger et visualiser des données dans un graphe Neptune Analytics.
-
Automatisez les procédures opérationnelles de Neptune Analytics, telles que le redimensionnement du graphique, sa suppression et sa capture instantanée, la restauration du graphique à partir d'un instantané, ainsi que la réinitialisation et le rechargement du graphique. Utilisez l'API Neptune Analytics, disponible via le AWS Command Line Interface (AWS CLI)
ou les SDK . -
Évaluez le temps de disponibilité requis pour votre graphe. Les analyses sont souvent éphémères ; le graphique n'est nécessaire que pendant le temps nécessaire à l'exécution des algorithmes. Si tel est le cas, utilisez le AWS CLI ou SDKs pour prendre un cliché et supprimer le graphique lorsqu'il n'est plus nécessaire. Vous pourrez ensuite le restaurer ultérieurement à partir d'un instantané, si nécessaire.
-
Stockez les chaînes de connexion en dehors de votre client. Vous pouvez stocker les chaînes de connexion dans AWS Secrets ManagerAmazon DynamoDB ou dans n'importe quel endroit où elles peuvent être modifiées dynamiquement.
-
Utilisez des balises pour ajouter des métadonnées à vos ressources Neptune Analytics et suivez l'utilisation en fonction des balises. Les balises vous aident à organiser vos ressources. Par exemple, vous pouvez appliquer une balise commune aux ressources d'un environnement ou d'une application spécifique. Vous pouvez également utiliser des balises pour analyser la facturation de l'utilisation des ressources ; pour plus d'informations, voir Organisation et suivi des coûts à l'aide des balises de répartition des AWS coûts dans le Guide AWS de l'utilisateur de facturation. En outre, vous pouvez utiliser des conditions dans vos politiques AWS Identity and Access Management (IAM) pour contrôler l'accès aux AWS ressources en fonction des balises utilisées sur ces ressources. Pour cela, vous devez utiliser la clé de condition globale
aws:ResourceTag/tag-key
. Pour plus d'informations, consultez la section Contrôle de l'accès aux AWS ressources dans le Guide de l'utilisateur IAM.
Conception pour les opérations
Adoptez des approches pour améliorer la façon dont vous exploitez les graphiques de Neptune Analytics :
-
Conservez des graphiques Neptune Analytics distincts pour le développement, les tests et la production. Ces graphiques peuvent avoir des ensembles de données, des utilisateurs et des contrôles opérationnels différents.
-
Conservez des graphiques Neptune Analytics distincts pour différentes utilisations. Par exemple, si deux groupes d'utilisateurs analytiques ont besoin de graphiques distincts avec des chronologies, des modèles, des performances, une disponibilité et des SLAs modèles d'utilisation différents, maintenez des graphiques distincts pour chaque groupe.
-
Préparez les utilisateurs et le personnel opérationnel aux mises à jour de maintenance de Neptune Analytics.
Effectuez des modifications fréquentes, mineures et réversibles
Les recommandations suivantes se concentrent sur de petites modifications réversibles que vous pouvez apporter afin de minimiser la complexité et de réduire le risque d'interruption de la charge de travail :
-
Stockez les modèles et les scripts IaC dans un service de contrôle de source tel que GitHub ou GitLab.
Important
Ne stockez pas les AWS informations d'identification dans le contrôle de source.
-
Exigez que les déploiements iAc utilisent un service d'intégration et de livraison continues (CI/CD) tel que ou. AWS CodeDeployAWS CodeBuild Compilez, testez et déployez du code dans un environnement Neptune Analytics hors production avant de le promouvoir en tant que graphe de production.
Mettez en œuvre l'observabilité pour obtenir des informations exploitables
Obtenez une compréhension complète du comportement, des performances, de la fiabilité, des coûts et de l'intégrité des charges de travail. Les recommandations suivantes vous aident à acquérir ce niveau de compréhension dans Neptune Analytics :
-
Surveillez CloudWatch les métriques Amazon pour Neptune Analytics. À partir de ces indicateurs, vous pouvez déterminer la taille d'un graphe (nombre de nœuds, d'arêtes et de vecteurs, plus la taille totale en octets), l'utilisation du processeur et les taux d'erreur et de demandes de requêtes.
-
Créez CloudWatch des tableaux de bord et des alarmes pour les indicateurs clés tels que
NumQueuedRequestsPerSec
NumOpenCypherRequestsPerSec
GraphStorageUsagePercent
,,GraphSizeBytes
, etCPUUtilization
les réponses des clients Neptune figurant dans les journaux de vos applications. -
Définissez des notifications pour surveiller l'état du graphique Neptune Analytics, par exemple lorsque la taille du graphique, le taux de demandes ou l'utilisation du processeur dépassent votre seuil. Par exemple, si la valeur
GraphStorageUsagePercent
est passée à 90 % sur un graphique que vous comptez augmenter de manière significative, décidez si vous souhaitez augmenter la capacité de l'unité de capacité Neptune (m-NCU) optimisée pour la mémoire. Si le m-NCU actuel est de 128, l'augmenter à 256 réduira le stockage d'environ 45 %. Si elleNumQueuedRequestsPerSec
est souvent supérieure à zéro, envisagez d'augmenter la capacité m-NCU pour augmenter la capacité de calcul. Vous pouvez également réduire la simultanéité côté client.
Tirez les leçons de toutes les défaillances opérationnelles
Une infrastructure d'autoréparation est un effort à long terme qui se développe par itérations lorsque de rares problèmes surviennent ou que les réponses ne sont pas aussi efficaces que vous le souhaiteriez. L'adoption des pratiques suivantes permet de se concentrer sur cet objectif :
-
Favorisez l'amélioration en tirant les leçons de tous les échecs.
-
Partagez ce que vous avez appris au sein des équipes et de l'organisation. Si plusieurs équipes de votre organisation utilisent Neptune, créez un salon de discussion ou un groupe d'utilisateurs commun pour partager les connaissances et les meilleures pratiques.
Utilisez les fonctionnalités de journalisation pour surveiller les activités non autorisées ou anormales
Utilisez la journalisation pour observer les modèles de performance et d'activité anormaux. Tenez compte des meilleures pratiques suivantes :
-
Neptune Analytics prend en charge la journalisation des actions du plan de contrôle en utilisant. AWS CloudTrail Pour plus d'informations, consultez la section Journalisation des appels d'API Neptune Analytics à l'aide de. AWS CloudTrail Grâce à cette fonctionnalité, vous pouvez suivre la création, la mise à jour et la suppression des ressources Neptune Analytics. Pour une surveillance et des alertes robustes, vous pouvez également intégrer CloudTrail des événements à Amazon CloudWatch Logs. Pour améliorer votre analyse de l'activité des services Neptune Analytics et identifier les modifications des activités d'un Compte AWS, vous pouvez interroger les CloudTrail journaux à l'aide d'Amazon Athena. Par exemple, vous pouvez utiliser des requêtes pour identifier des tendances et isoler davantage l'activité par attributs, comme l'adresse IP source ou l'utilisateur.
-
Vous pouvez également l'utiliser CloudTrail pour activer la journalisation des activités du plan de données Neptune Analytics, telles que les exécutions de requêtes. Vous pouvez voir quelles requêtes sont exécutées, leur fréquence et leur source. Par défaut, CloudTrail n'enregistre pas les événements liés aux données. Des frais supplémentaires sont facturés pour les événements de données. Pour en savoir plus, consultez Tarification de AWS CloudTrail
. -
Vous pouvez également enregistrer les appels de vos applications à Neptune Analytics dans le plan de contrôle ou dans le plan de données. Par exemple, si vous utilisez le AWS SDK pour Python (Boto3)
pour effectuer des requêtes, vous pouvez activer la journalisation au niveau du débogage pour obtenir une trace des requêtes dans la console ou le fichier. Cela est utile pendant le développement. Nous vous recommandons également de intercepter et de consigner les exceptions issues de votre application.