Présentation
Knative (prononcer kay-nay-tiv) est un projet de la communauté Open Source qui ajoute à Kubernetes des composants pour le déploiement, l'exécution et la gestion des applications cloud-nativeserverless. Le modèle de cloud computing serverless permet d'améliorer la productivité des développeurs et de réduire les coûts d'exploitation.
Quels sont les avantages de Knative ?
Knative élimine les tâches de provisionnement et de gestion des serveurs. Les développeurs peuvent ainsi se concentrer sur leur code sans avoir à se préoccuper de la configuration d'une infrastructure complexe. Cet avantage est d'autant plus intéressant lorsque des composants entiers d'une application sont issus d'un tiers et intégrés via un service BaaS (Backend-as-a-Service), au lieu d'être écrits au sein de l'entreprise.
L'environnement serverless Knative vous permet de déployer du code sur une plateforme Kubernetes comme Red Hat OpenShift. Avec Knative, vous créez un service en mettant votre code en paquet sous la forme d'une image de conteneur pour le déposer dans le système. Knative s'occupe de démarrer et d'arrêter les instances automatiquement. Ainsi, votre code est exécuté uniquement lorsque c'est nécessaire et consomme des ressources seulement lorsqu'il en a besoin pour effectuer une opération. Par conséquent, vous pouvez réduire les coûts d'exploitation, car vous ne payez que le temps de calcul basé sur le cloud selon vos besoins et n'avez pas besoin d'exécuter ni de gérer en continu vos propres serveurs.
Composants de Knative
Knative inclut trois composants principaux :
- Build : met en place une approche flexible du développement de code source en conteneurs.
- Serving : permet le déploiement rapide et la mise à l'échelle automatique des conteneurs à l'aide d'un modèle basé sur les requêtes pour servir les charges de travail à la demande.
- Eventing : infrastructure qui permet la consommation et la production d'événements afin de stimuler les applications. Les applications peuvent être déclenchées par différentes sources telles que des événements issus de vos propres applications, des services cloud de nombreux fournisseurs, des systèmes SaaS et des flux Red Hat AMQ.
Lire un article du blog au sujet de Red Hat Developer
Knative et les avantages de l'Open Source
Knative permet le déploiement des applications serverless et leur exécution sur toutes les plateformes Kubernetes, notamment Red Hat OpenShift Container Platform. Knative s'installe sur OpenShift à l'aide d'opérateurs.
La maintenance de Knative est assurée par une communauté Open Source qui comprend des entreprises comme Red Hat, Google et IBM en collaboration avec un large éventail de startups. Le principe même des logiciels Open Source limite le risque de dépendance vis-à-vis d'un fournisseur et fait passer le pouvoir entre les mains des utilisateurs.
Knative et Red Hat OpenShift Serverless
Red Hat® OpenShift® Serverless est un service basé sur le projet Open Source Knative. Il fournit une plateforme serverless adaptée aux entreprises, qui augmente la portabilité et la cohérence des environnements hybrides et multicloud.
Le service OpenShift Serverless permet de développer et de déployer des applications serverless en les associant à d'autres services OpenShift Container Platform tels qu'OpenShift Service Mesh et la surveillance de cluster.
La solution Red Hat OpenShift Serverless peut également faciliter le travail des équipes d'exploitation puisqu'elle s'installe facilement sur OpenShift, a été testée avec d'autres produits Red Hat et donne accès à un service d'assistance primé.