En 2020, le PaaS – Platform as a Service – devient incontournable pour toutes organisations visant un optimum de production soutenu par une démarche d’amélioration continue, soit l’excellence opérationnelle.
Le PaaS permet de remettre les impératifs d’un produit au cœur d’un besoin métier, et d’améliorer l’implication de l’ensemble des intervenants. Il délègue l’infrastructure et la plateforme à un rôle de commodité.
Responsabiliser les équipes pour faire évoluer le produit, tout en garantissant une amélioration de la qualité n’est plus un objectif, mais une réalité. Les bonnes méthodologies et les bons outils sont alors employés dans le but de répondre à un but commun défini par le métier, et avec un rapprochement important entre le métier et l’exécution.
Le passage d’un modèle en silo vers un modèle de self-service permet une plus grande autonomie. Nous avons vu ces dernières années un changement de paradigme fort. Les acteurs clouds disruptants la manière de construire les applications en promettant une efficacité de gestion des coûts.
De nombreuses entreprises ont reconnues au travers du PaaS une solution pour moderniser leurs applicatifs. De l’amélioration de la qualité à la gestion plus rationnelle des ressources et des coûts, c’est tout un pan de l’architecture logicielle qui s’est vu révolutionné.
Cette révolution a connu de nombreuses étapes. Architecture microservice, intégration d’une stratégie de containerisation, Cloud, Service managé, …
Ce n’est pas l’architecture qui va décider de l’organisation. Et c’est pourquoi, si vous désirez moderniser votre couche applicative, il est nécessaire de commencer par une refonte organisationnelle. Et débuter par un découplage des responsabilités permet d’obtenir une responsabilisation plus forte de l’ensemble des acteurs. Ce n’est que via cette approche que vous pourrez bénéficier des avantages d’une stack logicielle moderne, performance et anti-fragile.
Pour implémenter une architecture moderne, scalable, basé sur des microservices, avec une architecture découplée et performante, il est nécessaire de commencer par une refonte organisationnel et un découplage des responsabilités.
Point de microservice, d’architecture découplée ou de scalabilité sans une refonte architecturale, une refonte organisationnelle, et un découplage des responsabilités.
Avec une évolution des solutions on premise vers une stratégie PaaS, il est nécessaire d’avoir les outils, les équipes et la vision pour porter un changement structurel au sein de l’entreprise. Ce changement n’est pas anodin, et nécessite une réflexion sur la production de valeur. Les quatre modèles, On premise, IaaS, Paas et Saas ne s’opposent pas, mais se complémentent. Chaque proposition permet d’accompagner le choix stratégique métier définissant la position de la production de valeur.
Dans ce contexte, un outil comme Kubernetes, et à plus forte raison, Openshift et Rancher, permet de se positionner dans la catégorie PaaS. L’accent est alors consacré sur les données et les applications métiers, qui concentrent la plus grande partie de la valeur fournie.
Le cas SaaS permet d’aller encore plus loin. Dans le cadre de métier plus générique ou commun, et ne nécessitant pas d’adaptation spécifique, ce mode permet de gagner en efficacité grâce à une maturité des solutions. Il faut néanmoins bien être conscient que cette efficacité s’érode dès lors qu’un besoin métier non pris en charge par défaut est requis. Les adaptations, qui souvent sont au départ, légères, peuvent s’avérer être un antipattern fort. Complexité de mise à jour, détournement du chemin optimal, intégration malheureuse sont autant de frein métier qui viennent polluer les utilisateurs sans apporter d’avantages compétitifs fort.
SERIAL se pose en accompagnateur pour la solution PaaS, la solution qui nous semble avoir le meilleur rapport efficacité métier et gain rapide pour l’ensemble des intervenants.
La proposition offerte par un orchestrateur permet de séparer les responsabilités en augmentant la composante DevOps, et en rapprochant les équipes – Voir le schéma. La plateforme est le cœur du métier, et cette dernière est gérée par différentes pipelines CI/CD pour avoir une automatisation complète.
Le PaaS permet ainsi dans un contexte de transformation DevOps, d’améliorer la collaboration autour d’un objectif commun. Cela passe par un processsus l’amélioration continue aidé par mise à disposition d’une orientation self-service. Avec une automatisation des process et une souplesse accrue pour les développeurs, la plateforme garantie une stabilité et une disponibilité accrue pour tous.
Tour d’horizon des orchestrateurs : Choisir le bon outil
Il existe plusieurs orchestrateurs, et plusieurs manières d’envisager l’orchestration au sein de son organisation, qui dépend principalement des besoins, mais aussi de l’infrastructure sous-jacente, et de l’investissement humain nécessaire pour son opération et sa maintenance au jour le jour.
Les principaux outils que nous retiendrons pour ce test sont :
- OpenShift (RedHat ) – OKD
- Rancher (1.6 et 2)
- Plateform9
- EKS (Amazon)
Différents critères sont à prendre en compte pour le choix d’une plate-forme :
Conclusion
L’utilisation d’un orchestrateur de conteneur au sein de votre IT n’est pas un choix bénin, et nécessite toute votre attention, tant sur votre manière à l’implémenter que sur l’accompagnement nécessaires des équipes impactés pour en tirer un bénéfice substantiel.
Délivrer plus vite n’est qu’une conséquence, certes heureuses, du rapprochement des équipes, et de la capacité à isoler les changements, et sécuriser les déploiements.
Une infrastructure telle qu’apportée par OpenShift ou Rancher permet ainsi de rendre la confiance aux développeurs quant à la capacité à livrer des modifications incrémentales. Elle rend la confiance aux Ingénieurs systèmes quant à la manière d’opérer le système et le faible impact des changements pour une stabilité accrue. Enfin, en bout de chaine, elle rend également confiance au Business, qui reprend possession de l’outillage. Une idée peut ainsi être testée, délivrée, retirée de manière peu impactante sur le cycle de vie global du produit. Ces itérations successives, rapide, fonctionnelle, et délivrée, augmentent alors la valeur de l’outil, sans pour autant sacrifier la qualité, et permet un ajustement constant des objectifs, sans perdre la mission globale.
Il est possible, avec le bon accompagnement des équipes et l’outillage nécessaire de redonner le pouvoir aux métiers, la liberté aux développeurs, et la sécurité aux opérateurs de l’infrastructure. Le coût n’est cependant pas neutre, puisqu’il nécessite souvent une évolution des paradigmes et des mentalités, et nécessite de restaurer une confiance qui s’est éventuellement dégradée au fils du temps.