L’un des mots à la mode populaires dans les cercles de développement ces dernières années a été”déploiement à grande échelle”. Maintenant, même s’il est agréable d’avoir un terme universellement reconnu, les opinions sur ce que signifie réellement le déploiement à grande échelle ont tendance à varier.

Que signifie exactement”à grande échelle”dans la communauté du développement et comment les entreprises peuvent-elles définir leur propre approche ? Nous avons parlé à Adam Frank, vice-président, produit et marketing chez Armory.io, pour le savoir.

BN : Commençons par revenir à l’essentiel, qu’est-ce qui constitue un”déploiement” ?

AF : Un déploiement dans le contexte du déploiement continu et de la technologie se produit lorsque les modifications de code ou de configuration sont automatiquement validées ou”déployées”.’en fabrication. Le déploiement continu garantit le déploiement sans impact négatif sur l’expérience utilisateur en orchestrant le cycle de vie des tests et de la promotion de l’environnement tout en utilisant des stratégies progressives telles que canari et bleu/vert avec une analyse d’impact automatisée et des restaurations transparentes.

BN : Comment se déroule le déploiement affecté par l’environnement d’entreprise ?

AF : L’environnement d’entreprise crée de la complexité avec sa taille, ses incohérences et sa myriade de pièces mobiles. Le déploiement de logiciels à grande échelle dans l’environnement de l’entreprise peut être extrêmement difficile, fastidieux, lent et coûteux. Les autres aspects de l’échelle que nous ne pouvons pas oublier sont également les aspects liés aux personnes et aux processus. Les équipes de toute l’entreprise auront des processus, des objectifs, des priorités et des mandats différents. Les personnes, les processus et la technologie à l’échelle de l’entreprise sont souvent à l’origine de la complexité.

BN : Où tracez-vous la frontière entre le déploiement et la maintenance ? Comment cela cadre-t-il avec le concept de déploiement continu ?

AF : Il n’y a pas de ligne définie entre le déploiement et la maintenance et il ne devrait pas y en avoir. Certains codes peuvent fournir de nouvelles fonctionnalités tandis qu’un autre peut fournir une correction de bogue ou nettoyer le code existant et la dette technologique. Dans tous les cas, ils doivent tous passer par le processus de déploiement pour garantir la fonctionnalité et réduire les échecs de changement.

BN : Alors, comment les déploiements peuvent-ils être étendus ?

AF: Deux mots: Orchestration. Automatisation. Les ingénieurs de plate-forme et les praticiens DevOps passent beaucoup de temps à créer et à maintenir des pipelines et des processus de déploiement, dont la complexité augmente le temps entre les versions et diminue la probabilité d’un déploiement réussi. les outils développés en interne manquent d’évolutivité sur les trois aspects : personnes, processus, technologie. Vous voulez que vos employés se concentrent sur votre avantage concurrentiel ; axé sur votre valeur différenciante. Ne pas construire et entretenir des infrastructures. Vous voulez que votre processus soit automatisé, de bout en bout. Pour faire évoluer efficacement les déploiements, les équipes doivent rendre l’ensemble du processus simple, fiable et reproductible. Le déploiement continu orchestre les tests, l’analyse de sécurité, le cycle de vie de la promotion sur chaque cluster et environnement, quel que soit le nombre de clusters et d’environnements dont on peut disposer, et surtout réduit le risque d’affecter négativement votre expérience client. Que vous passiez de 10 à 1 000 développeurs ou de 1 000 ou 10 000 et au-delà, un bon flux de travail de déploiement continu reste facile à maintenir, efficace et efficace.

BN : Quel rôle les technologies telles que la conteneurisation ont-elles jouer ?

AF : les conteneurs virtualisent les couches logicielles au-dessus du niveau du système d’exploitation, ce qui en fait des progiciels légers qui contiennent toutes les dépendances nécessaires pour exécuter le logiciel contenu. Parce qu’ils sont légers, ils sont très rapides à modifier et à itérer. Cela les rend parfaits pour le déploiement continu. Une fois que le processus d’intégration continue s’est terminé avec succès et qu’il y a un nouvel artefact ; une nouvelle image de conteneur, le workflow de déploiement continu prend le relais et orchestre le déploiement dans les environnements. Cela garantit que l’artefact est acheminé vers la production en toute sécurité.

Crédit d’image : Elnur_/depositphotos.com

By Henry Taylor

Je travaille en tant que développeur back-end. Certains d'entre vous m'ont peut-être vu à la conférence des développeurs. Dernièrement, j'ai travaillé sur un projet open source.