Maison  >  Article  >  développement back-end  >  Liste de contrôle de préparation à la production

Liste de contrôle de préparation à la production

WBOY
WBOYoriginal
2024-08-05 22:01:42404parcourir

Production Readiness Checklist

J'ai travaillé sur plusieurs projets dans lesquels j'ai déplacé des applications du PoC vers la production.
Ce sont les listes de contrôle que j'ai préparées pour moi et mon équipe pour m'assurer que nous sommes prêts pour la production.
Ici, les listes de contrôle sont au centre car l'application est en langage de programmation Python et déployée sur AWS via Kubernetes.
Tous ces éléments ne sont pas obligatoires, mais ce sont ceux que j’ai trouvés les plus utiles.

1. Alertes et mesures

  • [ ] Des alertes sont-elles configurées pour les problèmes d'infrastructure (par exemple, augmentation de l'utilisation de la mémoire ou du processeur, indisponibilité du service) ?
  • [ ] Des alertes sont-elles configurées pour les pannes logiques critiques spécifiques à une application ?
  • [ ] Pouvons-nous afficher les données historiques (dernières heures/jours) de l'utilisation des infrastructures et des ressources ?
  • [ ] Existe-t-il un tableau de bord de surveillance en temps réel ?

2. Tableau de bord et SOP

  • [ ] Existe-t-il un document SOP pour gérer les alertes et les problèmes connus ?
  • [ ] Existe-t-il des runbooks disponibles pour les scénarios courants ?
  • [ ] Existe-t-il un plan de réponse aux incidents en place ?

3. Cartographie et cadence d'astreinte

  • [ ] Existe-t-il une cartographie des personnes de garde pour les problèmes au niveau de l'application ?
  • [ ] Existe-t-il une cartographie des personnes d'astreinte pour les problèmes liés aux infrastructures ?
  • [ ] Existe-t-il un calendrier de rotation défini et une politique d'escalade ?

4. Déploiement

  • [ ] Le type d'instance approprié (GPU ou CPU) a-t-il été déterminé ?
  • [ ] Le type de serveur requis a-t-il été spécifié ?
  • [ ] Existe-t-il une prise en charge de zones multi-disponibilité pour le basculement ?
  • [ ] Existe-t-il une prise en charge pour plusieurs régions ?
  • [ ] La mise à l'échelle automatique est-elle configurée (par exemple, HPA, Keda) pour les pics de trafic ?
  • [ ] Les vérifications de l'état sont-elles configurées pour le serveur ?
  • [ ] Les limites des ressources ont-elles été définies et documentées ?
  • [ ] Existe-t-il une stratégie de déploiement bleu-vert ou canari en place ?
  • [ ] Existe-t-il un plan et une procédure de restauration définis ?

5. Observabilité et traçage

  • [ ] Existe-t-il un tableau de bord affichant les mesures pertinentes (par exemple, le nombre de requêtes, les codes d'état HTTP, l'utilisation) ?
  • [ ] Pouvons-nous tracer une seule requête de bout en bout à des fins de débogage ?
  • [ ] Existe-t-il un système d'agrégation et d'analyse des journaux en place ?
  • [ ] Le traçage distribué est-il mis en œuvre ?

6. Tests de charge

  • [ ] Une planification de la capacité a-t-elle été effectuée pour déterminer les capacités de gestion de charge du serveur ?
  • [ ] Existe-t-il des critères de performance définis ?
  • [ ] Des tests de résistance ont-ils été effectués ?

7. Qualité

  • [ ] Existe-t-il des tests unitaires automatisés ?
  • [ ] Existe-t-il des tests d'intégration automatisés ?
  • [ ] Une analyse de code statique (par exemple, des contrôles de complexité) est-elle effectuée ?
  • [ ] La couverture du code est-elle mesurée et à un niveau acceptable ?
  • [ ] Existe-t-il des cas de tests d'intégrité de la production ?
  • [ ] Existe-t-il un pipeline CI/CD en place ?
  • [ ] Des analyses de sécurité et des évaluations de vulnérabilité sont-elles effectuées régulièrement ?

8. Libération

  • [ ] La documentation Swagger/OpenAPI est-elle disponible et à jour ?
  • [ ] Existe-t-il un système de gestion des versions pour les API et les versions ?
  • [ ] Existe-t-il un canal de communication établi pour la maintenance programmée ?
  • [ ] Existe-t-il un processus de gestion du changement ?
  • [ ] Les indicateurs de fonctionnalités sont-ils utilisés pour le déploiement progressif de nouvelles fonctionnalités ?

9. Reprise après sinistre et continuité des activités

  • [ ] Les procédures de sauvegarde et de restauration sont-elles en place et testées ?
  • [ ] Existe-t-il une stratégie de réplication des données ?
  • [ ] L'objectif de temps de récupération (RTO) et l'objectif de point de récupération (RPO) ont-ils été définis ?
  • [ ] Des exercices réguliers de reprise après sinistre sont-ils organisés ?

10. Conformité et sécurité

  • [ ] Les données sont-elles cryptées au repos et en transit ?
  • [ ] Des mécanismes de contrôle d'accès et d'authentification sont-ils en place ?
  • [ ] Des audits de sécurité réguliers sont-ils effectués ?
  • [ ] L'application est-elle conforme aux normes industrielles pertinentes (par exemple, RGPD, HIPAA) ?

11.Documents

  • [ ] La documentation sur l'architecture système est-elle disponible et à jour ?
  • [ ] La documentation de l'API est-elle complète et à jour ?
  • [ ] Les procédures opérationnelles sont-elles documentées ?
  • [ ] Existe-t-il un guide de dépannage complet ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn