Kubernetes, mais en plus simple ? Microsoft dégaine une surcouche
Publié par Clément Bohic le - mis à jour à
Avec le projet open source Radius, Microsoft entend favoriser l'approche platform engineering sur Kubernetes.
Perdu sur Kubernetes ? Essayez Radius. Microsoft n'amène pas les choses ainsi, mais c'est tout comme.
Le groupe américain travaille sur ce projet depuis quelques mois. Il commence désormais à communiquer à son sujet.
La démarche n'a rien à voir avec le protocole d'authentification RADIUS. Il s'agit ici de fournir une plate-forme de développement d'applications. Plus particulièrement pour les entreprises multicloud.
Par « multicloud », il faut entendre deux cas de figure. D'une part, la configuration « déploiement de certaines apps sur un cloud et d'autres apps sur un autre cloud ». De l'autre, « déploiement d'une même application sur plusieurs clouds ». Radius n'est, en revanche, pas conçu pour couvrir les applications distribuées entre plusieurs clouds.
Radius sépare les responsabilités à travers le concept des « recettes ». Aux ops la configuration des templates IaC (modules Terraform et fichiers Bicep), aux devs la sélection des briques nécessaires aux applications.
Ces briques sont dites « portables », au sens où elles fonctionneront sur l'ensemble des environnements pris en charge. L'équipe dev peut, par exemple, opter pour un cache Redis, qui sera déployé en fonction du paramétrage de l'équipe infra (sur Azure, usage d'Azure Cache for Redis ; sur AWS, usage d'Amazon ElastiCache, etc.).
MongoDB, RabbitMQ et SQL sont d'autres ressources « portables » que Radius prend actuellement en charge. S'y ajoutent trois types de ressources Dapr : magasins d'état, magasins de secrets et systèmes pub/sub.
Radius : le multicloud commence par Azure et AWS
Pour le moment, une seule option d'installation de Radius : sur un cluster Kubernetes autohébergé (AKS, EKS, k3d ou kind ; version recommandée : 1.23.8 au minimum). Microsoft promet d'élagir le support à d'autres plates-formes et de proposer une offre managée.
Les applications peuvent, en l'état, être déployées en mode interne, ainsi que sur Azure (compatibilité avec tous les services hors compute ; identités managées) et AWS (compatibilité avec les services que supporte l'API AWS Cloud Control). Google Cloud est sur la roadmap...
Pour fournir aux devs et aux ops une vision commune, Radius reprend le principe du catalogue logiciel, mais structuré en des graphes d'applications.
Au-delà du CLI (Windows, Mac, Linux), l'extension Bicep permettra, à terme, d'exploiter Radius au sein de VS Code. En attendant, Microsoft en propose un fork temporaire.
Publié sous licence Apache 2.0, Radius reste en phase expérimentale (version 0.26). À l'heure actuelle, le déployer implique l'installation simultanée de Contour. Il n'y a pas de rétrocompatibilité : à chaque montée de version, il faut le réinstaller.
Diverses extensions Kubernetes (gestion de configuration, étiquetage et annotation...) permettent de piloter plus finement les ressources.
À venir, notamment, la possibilité d'encapsuler des objets YAML dans des conteneurs Radius, ce qui permettra d'intégrer des déploiements existants dans les applications.
Illustration principale générée par IA