Raccourcis

Cloud Foundry, qu'est-ce que c'est ?

Copier l'URL

À l'image de Kubernetes, la solution Cloud Foundry sert à créer, déployer et mettre à l'échelle des conteneurs. Elle connecte les conteneurs aux réseaux et assure leur routage, ce qui permet aux équipes de développement de concentrer leurs efforts sur la création et le déploiement de code d'applications.

De son côté, Kubernetes fournit à ces mêmes équipes un framework distribué qui met les clusters et les applications à l'échelle. Il s'agit donc d'une solution pertinente pour les charges de travail exécutées dans différents environnements cloud. Les équipes qui cherchent à déployer des applications sur différentes infrastructures cloud trouveront également cet outil intéressant.

Cloud Foundry est une solution Open Source de type PaaS (Platform-as-a-Service) qui a été créée en 2011 pour faciliter le développement de la première génération d'applications conteneurisées. Centrée sur l'expérience des équipes de développement, elle propose une plateforme pour la création, le déploiement et l'exécution des applications cloud-native stateless. 

Kubernetes est une plateforme Open Source d'orchestration des conteneurs qui automatise de nombreux processus manuels associés au déploiement, à la gestion et à la mise à l'échelle des applications conteneurisées. Cloud Foundry et Kubernetes figurent parmi les plateformes de conteneurisation les plus utilisées et partagent certaines fonctions. En les comparant, vous constaterez toutefois des différences au niveau de leur approche en matière de gestion des applications.

Cloud Foundry et Kubernetes :

  • exécutent des applications dans des conteneurs ;
  • exécutent des applications mises en paquets en tant qu'images Docker ;
  • exécutent des charges de travail de production très volumineuses ;
  • peuvent s'exécuter sur site ou dans le cloud public ;
  • sont Open Source et gérés par des fondations indépendantes.

En ce qui concerne leurs différences, Cloud Foundry se concentre sur l'application, tandis que Kubernetes se concentre sur le conteneur. Kubernetes ajoute de la complexité au travail des équipes de développement, car elles doivent créer le conteneur pour l'application et définir d'autres configurations de déploiement. Cloud Foundry offre des expériences différentes aux équipes d'exploitation du cloud et de développement cloud, ce qui simplifie l'interface. Avec Kubernetes, les équipes de développement sont plus libres, car elles peuvent configurer les conteneurs en fonction de leurs applications.

À l'image de Kubernetes, Cloud Foundry est une plateforme de distribution continue qui prend en charge le cycle de vie complet du développement des applications conteneurisées, notamment les étapes de création, de déploiement et d'exécution.

Son architecture basée sur des conteneurs permet d'exécuter, de mettre à jour et de déployer des applications avec tous les langages de programmation, dans divers environnements de cloud public ou privé. Grâce à cet environnement multicloud, les équipes de développement peuvent choisir la plateforme cloud la mieux adaptée aux charges de travail de leur application et déplacer ces charges entre les fournisseurs de cloud selon les besoins, sans modifier l'application.

Cloud Foundry a plusieurs fonctions en commun avec Kubernetes, mais offre un plus haut niveau d'abstraction pour le déploiement des applications cloud-native. À la différence de Kubernetes qui utilise des environnements d'exécution conteneurisés Linux standard, Cloud Foundry intègre son propre framework et environnement d'exécution sur mesure, baptisé Buildpacks. Cette couche supplémentaire complexifie cependant le développement et le déploiement des applications, et empêche les équipes d'avoir un contrôle total sur le processus. 


Inconvénients

Aujourd'hui sur le déclin, la solution Cloud Foundry accuse son âge et atteint ses limites. Les entreprises doivent notamment investir massivement dans la refactorisation et la modernisation des applications pour continuer à utiliser cette plateforme et pallier l'incompatibilité avec les nouvelles technologies.

Bien que la solution Cloud Foundry ait adopté les principes de Kubernetes, elle reste une plateforme à part, ce qui pose problème pour le déploiement de charges de travail Kubernetes dans toute l'entreprise, car il faudra gérer plusieurs plateformes. Pour simplifier la situation, vous pouvez adopter une plateforme d'entreprise commune à l'ensemble des applications conteneurisées de votre environnement.

Si votre entreprise subit la complexité et les limites de Cloud Foundry, il est peut-être temps d'envisager l'adoption d'autres solutions, telles que Red Hat® OpenShift®. Cette solution offre une plateforme d'applications cloud-native complète aux entreprises qui souhaitent passer de Cloud Foundry à OpenShift. 

Red Hat OpenShift est une solution de cloud hybride ouvert pour la conteneurisation et la modernisation des applications existantes, ainsi que pour le développement d'applications cloud-native. Il s'agit d'une plateforme de conteneurs Kubernetes pour les entreprises destinée aux applications et aux charges de travail de production. Elle prend donc en charge les applications traditionnelles et cloud-native, dans tout type d'environnement, ainsi que l'automatisation des processus dans les clusters Kubernetes et en dehors.

La migration depuis Cloud Foundry vers OpenShift apporte plusieurs avantages :

  • Accès à une plateforme de développement d'applications Kubernetes pour les entreprises
  • Prise en charge des applications stateless et stateful
  • Amélioration de la productivité grâce à un environnement de développement standardisé et au provisionnement en libre-service
  • Renforcement de la sécurité avec Red Hat Advanced Cluster Security qui assure en continu la sécurité et la conformité de l'infrastructure, des conteneurs et des charges de travail 
  • Économies substantielles sur le matériel grâce à l'installation d'OpenShift sur un système bare metal

Pour aller plus loin

Article

Tout savoir sur les opérateurs Red Hat OpenShift

Red Hat OpenShift Operators automate the creation, configuration, and management of instances of Kubernetes-native applications.

Article

Pourquoi choisir le service Red Hat OpenShift Serverless ?

Red Hat OpenShift Serverless étend les capacités de Kubernetes pour le déploiement et la gestion des charges de travail severless.

Article

Pourquoi choisir Red Hat OpenShift Service Mesh ?

Avec la solution Red Hat OpenShift Service Mesh, vous disposez d'un outil unique pour connecter, gérer et surveiller vos applications basées sur des microservices.

En savoir plus sur OpenShift

Produits

Une plateforme d'applications d'entreprise comprenant un ensemble unifié de services testés conçus pour distribuer des applications sur votre choix d'infrastructure.

Système de stockage logiciel qui héberge les données de façon permanente en parallèle de la mise en route et de l'arrêt des conteneurs et entre plusieurs environnements.

Solution de sécurisation des conteneurs native pour Kubernetes et adaptée aux entreprises, qui permet de créer, de déployer et d'exécuter des applications cloud-native de manière sécurisée.

Console unique pour le contrôle des clusters et applications Kubernetes, avec des politiques de sécurité intégrées.

Ressources

Formations

Cours gratuit

Présentation technique de l'exécution de conteneurs avec Red Hat

Cours gratuit

Développement d'applications cloud-native avec des architectures de microservices

Cours gratuit

Présentation technique du déploiement d'applications conteneurisées