La mise en production est souvent une étape que beaucoup de professionnels en infromatique redoutent. Souvent synonymes de problèmes, la mise en production d’applications ou de nouveaux services peuvent causer des interruptions de services volontaire et involontaire.
Dans cet article, nous allons discuter de comment nous pouvons éviter les erreurs humaines lors des mises en production. Nous commencerons par voir les mises en production d’applications, avant de nous intéresser aux mises en production de nouvelles infrastructures.
Un des concepts fondateurs des méthodologies DevOps est le déploiement d’application automatisée (et donc sans action humaine) dans les différents environnements. En effet, avoir un système de compilation et de déploiement automatique (appelé aussi CI/CD) vous permettra de gagner du temps et d’éviter les erreurs humaines. Si vous pensez que votre entreprise n’est pas assez mature ou ne possède pas un budget suffisant pour mettre en place ces pipelines de CI/CD, vous devriez considérer :
Pour terminer, on peut dire qu’avoir un pipeline de CI/CD est primordial pour éviter les erreurs humaines lors des mises en production d’application.La mise en place de ces pipelines présentent des retours sur investissement très imporant. Enfin, une fréquence de déploiement rapide avec peu de changement dans les fonctionnalités de l’application sera toujours préférée à un déploiement peu fréquent et apportant beaucoup de changement.
Les mises en production de nouvelles infrastructures peuvent être plus compliqués que celle des applications. Cependant, il est possible de les maitriser et de réduire le nombre potentiel d’erreurs résutantes de ces changements.
Pour commencer, si vous maitrisez vos infrastructures avec des technologies d’infrastructure as code tels que Terraform, Pulumi, CloudFormation etc .. tous les arguments détaillés plus haut lors pour le déploiement d’applications s’appliquent aussi au déploiement d’infrastructures (l’infrastructure as code étant aussi du code).
Cependant, si vous devez mettre en production un système qui n’est pas géré par infrastructure as code, ou qui nécessite des actions humaines, vous pouvez limiter les erreurs et leurs impacts avec ces quelques méthodes.
Une bonne pratique avant de réaliser une mise en production importante est de documenter cette mise en production. En effet, il est intéressant de documenter les parties suivantes :