Fournisseurs de services cloud : comment garder vos options ouvertes

Pour les utilisateurs de Linux, il existe un nouveau type d’ordinateur sur le marché, connu sous le nom de le nuage.
Comme pour le PC assis sur votre bureau, l’ordinateur portable dans votre sac à dos et le serveur privé virtuel que vous louez auprès de votre service d’hébergement Web préféré, vous avez le choix entre les fournisseurs de cloud computing. Les noms de marque sont différents des marques de matériel que vous avez connues au fil des ans, mais le concept est le même.
Pour exécuter Linux, vous avez besoin d’un ordinateur. Pour exécuter Linux sur le cloud, vous avez besoin d’un fournisseur de services cloud. Et tout comme le matériel et les micrologiciels livrés avec votre ordinateur, il existe un spectre d’open source pour votre pile informatique.
En tant qu’utilisateur d’open source, je préfère que ma pile informatique soit aussi ouverte que possible. Après une étude minutieuse du marché du cloud computing, j’ai développé une vision à trois niveaux des fournisseurs de services cloud. En utilisant ce système comme guide, vous pouvez faire des choix intelligents sur le fournisseur de cloud que vous choisissez.
Pile ouverte
Un cloud entièrement ouvert est un cloud construit sur une technologie open source à partir de zéro. Tant de technologies cloud sont open source, et ce depuis le début, qu’une pile ouverte n’est pas si difficile à réaliser, du moins sur le plan technique. Cependant, certains fournisseurs de cloud réinventent la roue de manière exclusive, ce qui permet de tomber facilement sur un fournisseur de cloud qui mélange de nombreux composants à source fermée avec les outils open source habituels.
Si vous recherchez un cloud véritablement ouvert, recherchez un fournisseur de cloud proposant OpenStack comme base. OpenStack fournit l’infrastructure logicielle pour les clouds, y compris la mise en réseau définie par logiciel (SDN) via Neutron, le stockage d’objets via Swift, la gestion des identités et des clés, les services d’imagerie, et bien plus encore. Conformément à mon analogie avec l’ordinateur matériel, OpenStack est le “noyau” qui alimente le cloud.
Je ne veux pas dire cela littéralement, bien sûr, mais si votre fournisseur de cloud exécute OpenStack, c’est raisonnablement aussi bas que possible dans la pile. Du point de vue de l’utilisateur, OpenStack est la raison pour laquelle votre cloud existe et dispose d’un système de fichiers, d’un réseau, etc.
Assis au-dessus d’OpenStack, il peut y avoir une interface utilisateur Web telle que Horizon ou Skyline, et il peut y avoir des composants supplémentaires tels que OpenShift ou OKD (pas un acronyme, mais anciennement OpenShift Origin). Tous ces éléments sont open source et vous aident à exécuter des conteneurs, qui sont des images Linux minimalistes avec des applications intégrées.
Comme OpenShift et OKD ne nécessitent pas OpenStack, c’est le niveau suivant de ma vision du monde basée sur le cloud.
[ Download the guide: Containers and Pods 101 ]
Plateforme ouverte
Vous n’avez pas toujours le choix de la pile dans laquelle votre cloud s’exécute. Au lieu d’OpenStack, votre cloud peut exécuter Azure, Amazon Web Services (AWS) ou quelque chose de similaire.
Ce sont les “blobs binaires” du monde du cloud. Vous n’avez aucune idée de comment ou pourquoi ils fonctionnent; tout ce que vous savez, c’est que votre cloud existe et dispose d’un système de fichiers, d’une pile réseau, etc.
Tout comme avec l’informatique de bureau, vous pouvez avoir un “système d’exploitation” fonctionnant sur la boîte qui vous a été donnée. Encore une fois, je ne parle pas littéralement, et il y a un argument solide selon lequel OpenStack lui-même est essentiellement un système d’exploitation pour le cloud. Pourtant, c’est généralement avec OpenShift qu’un utilisateur du cloud interagit directement.
OpenShift est un “bureau” ou espace de travail open source dans lequel vous pouvez gérer des conteneurs et des pods avec Podman et Kubernetes. Il vous permet d’exécuter des applications sur le cloud comme vous pourriez lancer une application sur votre ordinateur portable.
[ Keep these commands handy: Podman cheat sheet ]
Normes ouvertes
Enfin et surtout, il y a des situations où vous n’avez pas le choix parmi les fournisseurs de services cloud. Vous êtes mis sur une plate-forme avec un “noyau” propriétaire, un “système d’exploitation” propriétaire, et tout ce qu’il vous reste à influencer est ce que vous exécutez dans cet environnement.
Tout n’est pas perdu.
Lorsque vous traitez avec l’open source, vous avez la possibilité de construire votre propre échafaudage. Vous pouvez choisir les composants que vous utilisez à l’intérieur de vos conteneurs. Vous pouvez et devez concevoir votre environnement de travail autour d’outils open source, car si vous changez de fournisseur de services, vous pouvez emporter tout ce que vous avez construit avec vous.
Cela peut signifier implémenter quelque chose de déjà intégré à la plate-forme (non ouverte) sur laquelle vous êtes bloqué. Par exemple, votre fournisseur de cloud peut vous séduire avec un système de gestion d’API ou un pipeline d’intégration/livraison continue (CI/CD) inclus dans sa plate-forme “gratuitement”, mais vous savez mieux. Lorsqu’une application non ouverte est proposée comme “gratuite”, elle supporte généralement un coût sous une autre forme. L’un des coûts est qu’une fois que vous commencez à construire dessus, vous serez d’autant plus hésitant à migrer parce que vous savez que vous devrez laisser derrière vous tout ce que vous avez construit.
Au lieu d’utiliser les “fonctionnalités” fermées de votre fournisseur de cloud, réimplémentez ces services en open source pour votre propre usage. Exécutez Jenkins et APIMan dans des conteneurs. Trouvez les problèmes que votre fournisseur de cloud prétend résoudre avec du code propriétaire, puis utilisez une solution open source pour vous assurer que, lorsque vous partez pour un fournisseur ouvert, vous pouvez migrer le système que vous avez construit.
[ Take the free online course: Deploying containerized applications ]
Informatique open source
Pour trop de gens, le cloud computing est un endroit où l’open source est accessoire. En réalité, l’open source est aussi important sur le cloud que sur votre ordinateur personnel et les serveurs alimentant Internet.
Recherchez des services cloud open source.
Lorsque vous êtes coincé avec quelque chose qui ne fournit pas de code source, soyez celui qui utilise l’open source dans votre cloud.