Arjuna Kodisinghe - Fotolia
Civo accélère Kubernetes en cloud grâce à un stockage britannique
Se positionnant sur une offre de clusters Kubernetes en ligne, Civo avait le défi d’être plus performant que les solutions en cloud public. Il y est parvenu en équipant son infrastructure de StorageOS.
Depuis peu disponible en Europe et aux USA, Civo est un nouveau service cloud de clusters Kubernetes qui revendique des performances hors pair. Son secret ? Il s’appuie sur la distribution système Rancher K3s de Suse, réputée optimisée à l’extrême, et sur le système de stockage StorageOS. Ces deux éléments permettraient de déployer des clusters Kubernetes fonctionnels en 90 secondes.
Reposant sur deux datacenters privés, hébergés pour l’un en Europe et pour l’autre aux USA, Civo veut se différencier par une technicité qui va au-delà des services Kubernetes que proposent les grands clouds publics. Il s’agit notamment de perfectionner la couche de stockage, qui conditionne la vitesse d’accès aux données, soit indirectement la vitesse des applications exécutées par Kubernetes au format container.
« Le problème des couches de stockage est qu’elles sont toujours un goulet d’étranglement entre les applications et les disques. Pour limiter au maximum la perte de performances, nous devions utiliser une couche de stockage la plus légère possible », raconte Andy Jeffries, le cofondateur et directeur technique de Civo.
L’intérêt d’une telle couche de stockage est qu’elle permet de conserver les données écrites par les containers, ce qui est indispensable lorsque les applications en containers utilisent des bases de données conventionnelles. Par ailleurs, Civo propose également à ses clients un service de backup de leurs applicatifs. Et lui aussi a besoin d’une telle couche de stockage pour fonctionner.
Le prestataire avait initialement eu l’idée d’utiliser le système Open source Ceph. Trop compliqué. Puis il était passé aux solutions de NetApp. Trop lourdes. « StorageOS nous a finalement apporté tout à la fois l’élasticité, la fiabilité, et un support qui sait nous accompagner jusque dans les paramétrages des plus bas niveaux », résume-t-il.
StorageOS est conçu et commercialisé par un éditeur britannique du même nom. Il s’agit d’un SDS (Software-Defined Storage) qui fonctionne lui-même dans un container, agrège le stockage disponible sur tous les serveurs physiques du cluster Kubernetes et présente l’ensemble comme un pool de stockage accessible à chaque container comme s’il s’agissait d’un disque local. Il permet de définir des règles sophistiquées afin d’optimiser le placement des données, la performance, mais aussi le niveau de protection des données.
StorageOS, un SDS très élastique et une équipe très technique.
Ce qui a séduit Civo, c’est la capacité de StorageOS à construire très rapidement des volumes virtuels en mode bloc. Le SDS s’assure que le placement des données d’un conteneur applicatif s’effectue autant que possible sur le nœud où ce conteneur s’exécute. Il assure la synchronisation des données entre chaque nœud afin qu’un applicatif accède toujours rapidement aux données qu’il avait précédemment créées, même lorsqu’il est relancé ailleurs dans le cluster.
En garantissant ainsi la localité des données, StorageOS maintient la latence à un niveau minimal. Le logiciel dispose aussi de fonctions de gestion de la qualité de service et de capacités de chiffrement de données.
« L’autre intérêt de StorageOS est qu’il s’occupe aussi de distribuer les données de nos clients sur nos différentes infrastructures. C’est-à-dire à la fois sur tous les nœuds d’un cluster, sur d’autres clusters et aussi entre nos datacenters en Europe et aux USA. Il nous donne la garantie qu’une défaillance matérielle de notre côté ne conduira pas à la perte de données du côté de nos clients », ajoute-t-il.
Sur le service de Civo, des volumes sont créés et d’autres détruits toutes les minutes. Pour suivre un tel rythme, l’équipe du fournisseur de service et celle de StorageOS ont dû retoucher ensemble le noyau du système Linux sur lequel se base l’offre. « Notre offre, encore récente, sert surtout pour l’heure d’environnement de développement à nos clients. Mais notre but est bien d’arriver à commercialiser des clusters de production. Et nous nous en approchons : l’équipe de StorageOS nous a récemment aidés à constituer un cluster de 1 000 nœuds », dit Andy Jeffries.
Il se félicite par ailleurs que l’équipe de StorageOS se rende disponible au quotidien pour accompagner les clients de Civo dans la mise en place de configurations personnalisées, afin de maximiser les performances selon le type d’applicatif exécuté en containers.
« Travailler ainsi en partenariat était une condition sine qua none dans le choix de la solution de stockage. Cela fait désormais 18 mois que nous collaborons. Et de leur propre aveu, Civo est le partenaire qui les sollicite le plus », conclut le directeur technique de Civo.
Une portabilité maximale
« Il existe d’autres SDS compatibles Kubernetes – je pense à Astra de NetApp, Portworx de Pure Storage ou OCS de Red Hat [OpenShift Container Storage, c’est-à-dire Ceph désormais, N.D.R.]. Mais StorageOS est le seul capable de fonctionner entièrement dans le cloud, sans rien d’autre à déployer que des containers », commente Lucas Mearian, analyste chez IDC.
« De fait, il est excessivement portable. C’est-à-dire que des entreprises qui l’utilisent avec un service Kubernetes en ligne pour leurs développements peuvent ensuite répliquer très simplement leur environnement sur un autre site de production, que ce soit dans un autre cloud ou dans leur datacenter. »
« StorageOS est l’une des startups les plus matures dans ce domaine. C’est une entreprise relativement petite par rapport aux autres, mais elle a une bonne offre », s’enthousiasme l’analyste.