Knative

Plate-forme basée sur Kubernetes pour créer, déployer et gérer des charges de travail modernes sans serveur

Primitives de base accessibles à tous

Plate-forme créée à l'origine par Google avec la contribution de plus de 50 entreprises, Knative offre un ensemble essentiel de composants pour créer et exécuter des applications sans serveur sur Kubernetes. Knative offre des fonctionnalités telles que le scaling à zéro instance, l'autoscaling, les compilations en cluster et le framework d'événements pour les applications cloud natives sur Kubernetes. Que ce soit sur site, dans le cloud ou dans un centre de données tiers, Knative codifie les bonnes pratiques partagées par des frameworks existants basés sur Kubernetes et qui ont fait leurs preuves. En outre, Knative permet aux développeurs de se concentrer sur l'écriture du code plutôt que de gérer les aspects fastidieux de la création, du déploiement et de la gestion d'une application.

Un logiciel avantageux pour les développeurs

Knative offre un ensemble de composants réutilisables axés sur la réalisation de nombreuses tâches courantes, mais complexes : création d'applications depuis le code source jusqu'aux images de conteneur, routage et gestion du trafic pendant le déploiement, autoscaling des charges de travail, et association des services en cours d'exécution avec l'écosystème en expansion des sources d'événements. Knative reconnaît les images de conteneur comme l'unité de déploiement. Ainsi, les développeurs peuvent utiliser n'importe quel langage, framework ou idiome qu'ils maîtrisent.

Compatibilité avec les modèles de développement populaires

Knative est conçu pour offrir une expérience idiomatique aux développeurs. La plate-forme est compatible avec des modèles de développement courants tels que GitOps, DockerOps et ManualOps, ainsi qu'avec des outils et des frameworks comme Django, Ruby on Rails, Spring, etc.

Gagnez sur les deux tableaux : flexibilité et contrôle

Knative est conçu pour s'intégrer facilement à des builds et des chaînes d'outils CI/CD existants. En se concentrant sur des technologies Open Source qui s'exécutent partout, sur n'importe quel cloud et sur toutes les infrastructures compatibles avec Kubernetes, les entreprises ont la possibilité de déplacer leurs charges de travail là où elles fonctionnent le mieux. Elles profitent ainsi du contrôle et de la flexibilité nécessaires pour adapter le système à leurs besoins spécifiques.

Exécutez vos charges de travail sans serveur selon vos propres exigences

Knative offre une API ouverte et un environnement d'exécution qui vous permet d'exécuter des charges de travail sans serveur partout où vous le souhaitez : sur Google Cloud pour une solution entièrement gérée, sur Google Kubernetes Engine (GKE) ou dans votre propre cluster Kubernetes. Avec Knative, il est possible de démarrer avec Cloud Run, puis de passer à Cloud Run sur GKE, ou de démarrer dans votre cluster Kubernetes et de migrer vers Cloud Run. En utilisant Knative comme plate-forme sous-jacente, vous pouvez déplacer vos charges de travail librement d'une plate-forme à une autre, tout en réduisant considérablement les frais de transition.

Composants de Knative

Création

  • Approche flexible et configurable de création du code source dans des conteneurs

  • Approche connectable tirant parti de fichiers Dockerfile ou de modèles prédéfinis

  • Pas de compilation croisée ni besoin d'outils de compilation locaux

  • Compatibilité avec les artefacts mis en cache pour accélérer les compilations

  • Possibilité d'utiliser la capacité de secours pour une meilleure utilisation des ressources

Diffusion

  • Abstraction de niveau supérieur, raisonnement facile sur le modèle d'objet

  • Autoscaling parfait basé sur les requêtes HTTP

  • Déploiements progressifs pour les nouvelles révisions

  • Intégration automatique de la mise en réseau et du maillage de services

  • Architecture connectable : connexion de votre propre plate-forme de journalisation et de surveillance

Événements

  • Abonnement, diffusion et gestion des événements universels

  • Construction de systèmes faiblement couplés et basés sur des événements avec des objets de haut niveau

  • Liaison déclarative entre les producteurs d'événements et les services consommateurs d'événements

  • Évolutivité de quelques événements aux diffusions en direct

  • Pipelines d'événements personnalisés à connecter à vos systèmes existants

Knative permet à nos développeurs de se concentrer sur la logique métier, sans avoir à se soucier du développement de fonctionnalités de niveau inférieur telles que les tâches de compilation, de déploiement, d'autoscaling, de surveillance et d'observabilité. Grâce à Knative, nous avons pu facilement migrer notre application de localisation de magasins T-Mobile développée sous Java/Vert.x vers GCP. Cette migration a été très rapide, car la plate-forme Knative offre de nombreuses fonctionnalités que nos développeurs n'ont pas eu à créer.

– Ram Gopinathan, architecte technologique en chef, T-Mobile

Ressources

Ressources de la communauté

Google Cloud

Premiers pas

Créez, déployez et gérez des charges de travail sans serveur avec Knative

Suivez le guide de démarrage rapide de Cloud Run pour vous familiariser avec Knative. Un guide d'installation est disponible sur GitHub pour les opérateurs souhaitant fournir un environnement Knative.