Blog Zenika

#CodeTheWorld

Cloud

À la découverte de Scaleway Public Cloud

À la découverte de Scaleway Public Cloud

Le Cloud est aujourd’hui incontournable. En revanche, même si nous connaissons souvent les offres proposées par les acteurs majeurs du secteur que sont Amazon, Azure et Google Cloud, il en existe beaucoup d’autres. Dans cette série d’articles, nous vous proposons un aperçu sans prétention de quelques Cloud Providers moins connus et des services qu’ils proposent.

Le premier article de cette série était consacré à Alibaba Cloud. Le deuxième sur lequel nous avons choisi d’essayer est Scaleway Public Cloud.

Scaleway fournit des infrastructures cloud en France (3 sites à Paris), en Hollande (2 sites à Amsterdam) et en Pologne. Scaleway fait partie du groupe Iliad connu pour le fournisseur d’accès Free.fr et l’hébergement Dedibox. 

Selon Wikipedia, « Il s’agit alors du deuxième acteur dans son domaine en France, derrière OVHCloud, et du troisième Européen. »

Personnellement, j’ai connu ces services initialement par l’offre de serveurs dédiés Dedibox, que j’ai souvent trouvé de bonne qualité. En 2014, ils sont précurseurs sur le cloud basé sur du matériel développé et fabriqué en France. Je me souviens de la communication dans les communautés du logiciel libre à ce sujet, notamment « Open Source BIOS at Scale au FOSDEM en 2018 » (et l’article de blog « A look from behind the Open Source Bios« ).

Présentation de Scaleway Public Cloud

Lorsque l’on s’authentifie sur https://console.scaleway.com/, la première impression est plutôt positive : l’interface assez jolie et ergonomique, l’univers graphique sympathique, les pages se chargent rapidement, on navigue à travers les différents produits de manière intuitive.

console.scaleway.com

Côté compte utilisateur, on voit rapidement les fonctionnalités d’organisation importantes pour les entreprises ou le travail d’équipe. Côté sécurité, on peut assez rapidement activer l’authentification double facteur. En revanche, il n’est pas possible d’ajouter plusieurs clefs physiques (j’ai l’habitude d’utiliser deux clefs au cas où j’en perde une). À ce sujet, on peut noter que Scaleway est ouvert aux suggestions de sa communauté à travers un outil de feedback https://feature-request.scaleway.com/  (exemple « WebAuthn based 2FA« ).

En termes d’expérience utilisateur, on peut noter l’usage d’une approche d’authentification passwordless par email à travers un magiclink.

Autre point positif, nous trouvons des outils de transparence sur le statut des services avec une page de statut : https://status.scaleway.com/ (powered by Atlassian Statuspage). On peut donc s’abonner (par mail, SMS, slack, rss, webhooks, etc) à l’ensemble de services, ou à un incident qui nous impacte en particulier. 

status.scaleway.com

Il va sans dire que Scaleway n’est pas au même niveau de services des clouds majeurs cités plus tôt, mais nous pouvons noter que la liste des services en cours de développement et proposés sous forme de beta est assez conséquente : https://www.scaleway.com/fr/betas/. Avec trois niveaux : bêta publique, bêta privée, discovery. En fonction du niveau, un accès avec l’interface web sera disponible ou il faudra passer directement par l’API (avec des exemples curl dans la documentation).

On y trouve Redis, smart labeling – annotations data science, TEM (Transactional Email), M&Q – NATS, AMQP, Observability – Cortex Grafana, prometheus like, grafana loki, Domains, VPC – private, CDN.

Les fonctionnalités IAM ont été améliorées récemment : une gestion plus compartimentée des utilisateurs, des organisations, des projets, avec des clés d’API n’ayant pas accès à l’ensemble des ressources. Fonctionnalité très attendue, elle est documentée dans la section IAM Overview de la documentation.

Par ailleurs, côté communautaire, il est possible de participer aux discussions avec d’autres utilisateurs du cloud sur Slack : https://slack.scaleway.com/. Certains de mes collègues disent beaucoup de bien de celui-ci, sur lequel vous pouvez discuter directement avec les ingénieurs Scaleway.

GreenIT

Zenika se positionne fortement sur les questions de numérique responsable et de GreenIT, donc forcément un des prismes de notre analyse prend en compte ces aspects. Difficile d’être exhaustif ou complet en restant succinct sur un sujet aussi vaste et complexe. Notons que le sujet de l’impact environnemental est présent dans beaucoup de documents publiés par Scaleway, mais aussi dans l’ergonomie du site lors des choix de zone/datacenter notamment. 

Quelques articles si vous souhaitez creuser le sujet : 

Notez que pendant qu’on regardait ces questions, au sein d’une discussion à ce sujet sur twitter, Yann Lechelle (CEO de Scaleway) nous a répondu en direct sur une question au sujet de la consommation en eau. 

Détails des différents services utilisés

Difficile de faire le tour de tous les services proposés, mais nous avons pris un peu de temps pour tester certains services. 

Compute instance – machines virtuelles

Côté création de machines virtuelles, les formulaires sont bien pensés, s’adaptent en fonction des choix (distribution, zone géographique, tailles des machines, etc). Le pricing est plutôt clair et se met à jour à chaque modification. Les distributions disponibles fournissent les versions récentes. Expérience utilisateur réussie ! 

Création d’une machine virtuelle dans l’interface web

Évidemment, pour un usage professionnel, on passera probablement par des outils automatisables (support complet de terraform), voici un exemple de création d’une machine virtuelle en passant par la ligne de commande développée par Scaleway (voir ci-dessous pour le CLI). 

Création d’une machine virtuelle via la ligne de commande

Nous pouvons aussi gérer et créer des machines physiques (bare metal) comme nous le ferions avec des machines virtuelles. À noter, que cela est forcément plus lent à la création (provisioning). En accédant à ces serveurs dédiés, on note le nom commençant par sd-*, ce qui laisse penser qu’il s’agit de l’offre dedibox pilotable comme un cloud. Sur ce service, nous ne trouvons pas la même flexibilité que sur les VM (par exemple packer pour les images personnalisées). 

Sans surprise, nous trouvons des fonctionnalités de gestion de réseau privé et public.

Kubernetes

Nous ne pouvions pas tester Scaleway sans faire un passage par leur offre Kubernetes. Elle se compose en deux parties : Kapsule et Kosmos. Le premier fournit un cluster managé avec du node autoscaling en option. Le second fournit une approche moins fréquente : le service-plane-as-a-service, Scaleway gère le control plane kubernetes, et c’est à la charge du client d’y connecter des nœuds. Ils font ainsi la promotion de clusters hybrides multi cloud. 

Kubernetes Kapsule

Pour son offre Kubernetes Kapsule, l’interface est à nouveau plutôt sympathique et intuitive. En revanche, petit bémol : la dernière stable n’est pas disponible (entre le moment du screenshot et l’écriture de l’article ils ont tout de même ajouté la version 1.24.3, donc ça bouge bien).

Création d’un cluster Kubernetes

Lorsque l’on crée un ingress public, cela active un autre produit : le Load Balancer. 

Load balancer associé à l’ingress Kubernetes

L’interface permet de facilement télécharger une configuration kubectl. On a un kubernetes-dashboard accessible via une URL personnalisée par cluster. Une bibliothèque d’application (probablement déployée avec helm) est accessible directement dans l’interface web.

Bibliothèques d’applications sur Kubernetes

En termes de fonctionnalités, il y a des choses plutôt bien pensées comme le fait de renouveler la configuration pour accéder au cluster (kubeconfig), la mise à jour automatique du control-plane, ou l’auto scaling des nodes dans des pools de type de machines où l’on règle simplement le nombre de machines minimales et le nombre maximal. En limitations, il semblerait que l’impossibilité d’avoir des nœuds en subnets privés soit dans les travaux en cours. 

Kubernetes Kosmos

Côté Kubernetes Kosmos, c’est un peu plus « bleeding edge ». On peut suivre le tutoriel publié en 2021 : Best practices to configure a Multi-Cloud Kubernetes cluster où le control plane est géré par Scaleway, et les nœuds sont hébergés (pour l’exemple) chez Hetzner. 

Nous avons testé avec deux VM : 

  • une sur un poste de développeur en utilisant vagrant
  • une VM créée chez Google Cloud 
Association d’un nœud à un cluster Kubernetes Kosmos

La prise en main est plutôt bien faite, avec un setup relativement intuitif. En revanche, le test avec Vagrant échoue, car il nécessite probablement une IP publique pour fonctionner, ou une configuration réseau plus simple.

Faute de temps, nous n’avons pas exploré les services de « container registry » ou l’offre « serverless », qui ont l’air de fournir les fonctionnalités attendues pour ce type de services. Côté serverless, vous pouvez jeter un œil au projet « serverless-scaleway-functions »  qui fournit une adaptation du framework « serverless« .

Stockage S3

Nous n’avons pas testé extensivement les fonctionnalités sur le stockage objet type S3, mais on retrouve les habituelles fonctionnalités de buckets, de différents types de stockage, d’accès aux buckets pour un site public, etc. En revanche, il semblerait que la partie gestion des droits d’accès ne soit aussi mature que sur les gros « Clouders ». 

Database as a Service

Les formulaires de la création des bases de données sont à nouveau très réussis avec une vision claire des options entre cluster haute disponibilité (un principal, et un nœud de secours) ou serveur à un seul nœud. Les versions stables les plus récentes de postgresql et mysql sont disponibles. Dès la création de la base de données, les backups sont configurés, ils sont automatisés et peuvent être déclenchés manuellement. On peut, à partir d’une base de données, augmenter les capacités ou passer d’une configuration un nœud à une configuration haute disponibilité.

IOT Hub

Côté IoT, on peut configurer un bus MQTT à la demande. Pour commencer à tester avec peu d’appareils, ils ont une offre gratuite.

Un object connecté selon scaleway

Faute de temps, nous n’avons pas testé davantage, mais la prise en main est plutôt bien faite. 

Bugs d’interface

Tout n’est pas rose ou parfait non plus, il y a parfois des bugs d’interface visibles, comme une erreur pas très explicite : 

Message d’erreur régulier

En revanche, le support par ticket est très réactif.

Developer Experience

Au-delà des briques de base fournies, nous voudrions encourager des pratiques d’industrialisation telles que l’infrastructure-as-code et sommes curieux de voir si ce cloud fournit de l’outillage pour les développeuses et développeurs. Le site vitrine affirme « Construit par des développeurs pour les développeurs », est-ce vraiment le cas ? 

Nous pouvons jeter un coup d’œil à https://developers.scaleway.com/en/community-tools/ qui liste les nombreux projets, pas uniquement maintenus par Scaleway, pour piloter ce cloud avec des outils ou langages (SDK) de programmation divers et variés (python, golang, nodejs, etc).

Clients et bibliothèques SDK

En ligne de commande, on va pouvoir utiliser le « Commande Line Interface for Scaleway » : 

Configuration du client scw

L’incontournable terraform semble bien supporté à travers du module  scaleway/terraform-provider-scaleway: Terraform Scaleway provider également publié dans le Terraform Registry.

Côté documentation et tutoriels, ils sont très accessibles, variés, bien écrits et répondent souvent très bien aux besoins. On peut même contribuer à ceux-ci sur le dépôt git qui génère cette documentation

Politique Open Source

Un prisme supplémentaire de lecture sera l’usage et le soutien du logiciel libre dans le cloud de Scaleway. Nous pouvons noter qu’ils soutiennent les projets libres à travers la mise à disposition d’infrastructures pour ceux-ci. Scaleway publie une partie de ses logiciels sur son organisation Github, notamment les modules terraform mentionnés plus tôt. Sous le capot d’un certain nombre de ses services, on trouvera des briques libres, même si elles ne sont pas toujours affichées publiquement. 

Bilan

Ce que nous avons vu semble très prometteur, et plusieurs collègues qui utilisent Scaleway chez leurs clients ont des retours plutôt positifs, même si parfois le diable est dans les détails et que certaines fonctionnalités tardent un peu et nécessitent des contournements qui ne seraient pas nécessaires chez les acteurs majeurs du cloud.

Scaleway semble solide et prêt à héberger des infrastructures modernes sur des infrastructures en France ou en Europe. La page « Sécurité et résilience » expose un certain nombre de démarches qualitatives et de certification (ISO 27001, HDS, RGPD, Tier 3 Uptime Institute, SWIPO, etc.). 

Un cloud souverain qui gagnerait à être connu ! 

Merci à Pierre-Yves, Julien et Baptiste pour leur relecture.

Une réflexion sur “À la découverte de Scaleway Public Cloud

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

En savoir plus sur Blog Zenika

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Continue reading