Avec Knative, Google fait de Kubernetes une plateforme

Avec Knative, Google fait de Kubernetes une plateforme L'extension gère et déploie des applications containerisées en mode serverless. Google, bien sûr, mais aussi IBM, Pivotal, Red Hat et SAP ont déjà annoncé l'intégrer à leurs offres.

Cette année encore, Kubernetes a été la star de Next, la conférence annuelle de Google Cloud, qui s'est tenue début avril à San Francisco. On retrouve l'orchestrateur de containers de Google dans la quasi-totalité des nouveautés présentées. Au sein de la foison d'annonces dévoilées, celles concernant Knative ont attiré tous les regards. Dévoilée l'été dernier, cette extension Kubernetes permet aux développeurs de déployer des fonctions, applications et containers en mode sans serveur (serverless), sans se soucier de l'infrastructure Kubernetes sous-jacente.

Knative est le socle de deux nouveaux produits présentés par Google Cloud à l'occasion de Next'19. Le premier, Anthos (connu auparavant sous le nom de Cloud Services Platform) est une plateforme qui ouvre la voie au cloud hybride et au multicloud. Elle permet de gérer des applications on-premise, dans le cloud public de Google ou dans des clouds tiers comme ceux d'Amazon et de Microsoft. L'autre nouveauté, c'est Cloud Run, une "compute stack" serverless. Là aussi, il est possible d'exécuter des charges de travail dans un cloud ou sur site, Knative assurant le déplacement entre les plateformes. Veolia et Airbus Aerial font partie des premiers clients bêta testeurs de cette technologie.

"Développeur friendly"

Pour Bastien Legras, directeur technique de Google Cloud France, Knative est au cœur de la vision de Google, celle d'un monde hybride et multicloud, basé sur les standards open source. "Les entreprises ne veulent pas se retrouver enfermées dans un cloud, en subissant le même effet de vendor lock-in qu'elles ont connu par le passé dans le monde logiciel. En matière de cloud, chaque entreprise a ses critères. Certaines privilégient les performances ou la philosophie du provider, d'autres le prix. Tout l'enjeu pour les fournisseurs de cloud sera de proposer un OS multi-environnement, multicloud et hybride pour assurer cette réversibilité. Cela ne peut passer que par l'open source et la containerisation", argue l'expert.

"Des start-up vont s'en emparer pour lancer des applications sans avoir à mettre les mains dans le cambouis"

Dans ce contexte, Knative vise à rendre Kubernetes davantage "développeur friendly", les développeurs pouvant être rebutés par la complexité de l'orchestrateur même s'il existe déjà des offres de "Kubernetes as a Service". "Pour cette population, appréhender Kubernetes constitue une marche à gravir", poursuit Bastien Legras. "Avec Knative, les développeurs s'affranchissent des couches basses en bénéficiant d'un management automatisé et peuvent se concentrer ainsi sur le code."

Dédié aux applications sans état (stateless), Knative fournit un ensemble de composants middleware pour réaliser un certain nombre de tâches courantes. A son lancement, Knative ne proposait que l'exécution des containers sur un cluster (Build), et le déploiement d'applications et fonctions serverless avec des fonctions d'autoscaling et des modèles de calcul piloté à la demande (Serving). La plateforme s'est ensuite enrichie d'un composant "Eventing" qui permet d'associer un événement à une fonction applicative. Knative est compatible avec des modèles de développement tels que GitOps, DockerOps et ManualOps, ainsi qu'avec des outils comme Django, Ruby on Rails ou Spring.

400 contributeurs

En huit mois et à raison d'une release toutes les 6 semaines, Knative a déjà atteint la version 0.5 avec quelque 400 contributeurs. Pour Romain Vrignaud, DevOps product specialist chez Google Cloud France, "les prochaines étapes viseront à stabiliser les composants actuels et à cartographier ce qui manque encore à Knative avant de passer en version 1.0."

A qui s'adresse Knative ? Pour Bastien Legras, il n'y a pas d'entreprise type. "Des start-up vont s'emparer de Knative pour lancer des applications sans avoir à mettre les mains dans le cambouis. Les grandes entreprises miseront, elles, sur l'autodimensionnement, la sécurité et la haute disponibilité proposées par Knative pour industrialiser leur application."

En attendant, un écosystème est en train voir le jour autour du framework open source. Parmi la cinquantaine d'entreprises contributrices, IBM, Pivotal et SAP ont ainsi annoncé leurs propres offres commerciales basées sur Knative. IBM prévoit de prendre en charge Knative sur son service de Kubernetes as a service, IBM Cloud Kubernetes. Sa nouvelle filiale, Red Hat, intègre déjà Knative à OpenShift, sa plateforme d'applications containerisées.

SAP fait aussi appel à Knative pour sa Cloud Platform et dans le cadre de son propre projet open source Kyma qui vise à rendre les applications d'entreprise plus agiles. Enfin, Pivotal se sert de Knative pour sa solution Pivotal Function Service (PFS). Encore en version bêta, cette dernière permet d'exécuter des fonctions serverless à partir d'événements dans des environnements cloud public ou on-premise. Bastien Legras voit d'un bon œil le développement de cet écosystème, rendu possible par la licence retenue (Apache) qui autorise le développement d'offres commerciales. "Cela nous conforte dans notre vision", conclut Bastien Legras.