Skip to main content

Alpine Linux

L'art du code

Comment Alpine Linux s'est étendu sans sacrifier les valeurs


La distribution LinuxAlpine a commencé comme un petit projet déployé par seulement quelques utilisateurs. Aujourd'hui, elle est devenue une solution mature, moderne et légère pour les solutions basées sur le bare metal et les conteneurs. C'est l'une des distributions les plus utilisées dans l'infrastructure de conteneurs Docker.

En raison de la petite taille et des performances impressionnantes des outils de base tels que le gestionnaire de paquets, le groupe de travail Alpine Linux, dirigé par Carlo Landmeter, Kevin Daudt et Natanael Copa, a reçu un nombre croissant de demandes pour différentes architectures matérielles (archs).

Lorsque Docker a annoncé que Alpine Linux était la distribution Linux par défaut "non officielle", les demandes d'arcs avaient encore augmenté. Les développeurs enthousiastes se sont mis au travail pour répondre à la demande croissante. Au départ, l'équipe ne disposait que des ressources nécessaires pour prendre en charge x86 et x86_64 (amd64), mais elle propose désormais des architectures ARM (32 bits et 64 bits) avec ppc64le, s390x et mips64 au menu également.


En raison de cette croissance, l'équipe de Alpine Linux s'est retrouvée avec une charge de travail supérieure à ce qu'elle pouvait facilement gérer. "Au cours des deux dernières années, nous avons remarqué qu'il devenait de plus en plus difficile de maintenir nos systèmes correctement", a déclaré Carlo. "La plupart de ces architectures nécessitent leurs propres machines, et il est parfois difficile de fournir à nos développeurs l'accès à toutes ces machines. Certaines de ces architectures sont également peu répandues ou très difficiles d'accès."

Après avoir réalisé que la configuration actuelle ne serait pas durable, l'équipe a décidé qu'elle devait procéder à des changements. Elle a changé de plateforme de développement et a migré vers une instance GitLab auto-hébergée, ce qui a facilité la mise en œuvre de l'IC pour huit architectures et l'utilisation d'un seul outil pour le cycle DevOps. Alpine Les sponsors bare metal de Linux ont aidé à dédier des serveurs CI à chaque architecture, ce qui a fait une énorme différence au niveau de la qualité du code et des problèmes de construction.

Alpine Linux s'est ensuite tourné vers Linode pour héberger ses nouvelles idées d'infrastructure, car c'est l'un des rares fournisseurs d'hébergement qui propose Alpine Linux comme système d'exploitation. L'utilisation de Linode permet à Alpine Linux de progresser tout en restant fidèle à ses quatre principes d'infrastructure de base :

  1. Mangez votre propre nourriture pour chien (ce qui signifie que leur GitLab conteneurisé basé sur Alpine fonctionne entièrement sur l'infrastructure Linode).
  2. Prévenir le verrouillage des fournisseurs.
  3. Soyez aussi indépendant que possible.
  4. Soyez aussi transparent que possible.
Federico Nieves

"L'une des fonctionnalités intéressantes de Linode est son service de sauvegarde, qui nous permet de générer facilement des sauvegardes et de les restaurer sur une instance temporaire sur laquelle nous exécutons nos tests de mise à niveau GitLab. Cela nous permet de nous assurer que nos mises à jour sont testées de manière approfondie, ce qui réduit considérablement les temps d'arrêt", a déclaré Carlo.

Pour l'avenir, Alpine Linux a d'autres idées sur la façon dont il peut utiliser Linode pour soutenir les principes d'infrastructure, la première étant l'infrastructure en tant que code. Après avoir étudié le projet de Linode APIAlpine Linux a élaboré une vision pour un processus entièrement automatisé qui mettra en œuvre un flux de travail GitLab et utilisera CI/CD pour pousser l'infrastructure dans des conteneurs sur Linode. Ce processus permettra aux développeurs de Alpine Linux d'avoir accès à une vue d'ensemble beaucoup plus transparente de l'infrastructure actuelle et facilitera les contributions de la communauté.

Le soutien et les capacités d'hébergement de Linode ouvrent de nouvelles portes à Alpine Linux tout en lui permettant de rester fidèle à ses principes fondamentaux. Comme le dit Carlo, c'est "une combinaison parfaite".

Partager ceci