Mise à l'échelle des technologies de conteneurs chez Coinbase avec Kubernetes | par Coinbase


Tl;dr  : Notre récente évaluation de Kubernetes a souligné son aptitude à faire évoluer Coinbase dans le futur. Dans le passé, une migration vers Kubernetes soulevait des inquiétudes en raison de la charge opérationnelle liée à l’exécution et à la sécurisation du plan de contrôle en interne. Nous avons maintenant conclu que les offres Kubernetes gérées réduisent cette charge opérationnelle sans compromettre la sécurité de notre pile.

Par Clare Curtis, ingénieur logiciel chez Coinbase

À l’époque, la migration vers Kubernetes aurait créé un tout nouvel ensemble de problèmes qui l’emportaient sur les avantages à court terme. Cependant, à mesure que ces technologies ont mûri, notre équipe de calcul nouvellement formée a conçu une stratégie pour tirer parti de Kubernetes d’une manière qui peut fournir une version plus flexible et évolutive de notre système actuel.

Avec toute croissance de ce type l’un des principaux domaines nécessitant une pérennité est la plate-forme de calcul de Coinbase. À la mi-2020, notre service le plus important était configuré pour exécuter un nombre relativement restreint d’hôtes, alors qu’aujourd’hui, il en exécute 10 fois plus.

Mise à l'échelle des technologies de conteneurs chez Coinbase avec Kubernetes | par Coinbase

entraînant une augmentation substantielle du nombre de déploiements Les problèmes récurrents liés à l’obtention d’une capacité suffisante et à sa livraison dans un délai raisonnable ont entraîné une augmentation des échecs de déploiement et ont obligé nos plus grands services à ralentir considérablement leur processus de publication.

transférant le fardeau de la gestion de l’acquisition de l’hôte des équipes individuelles à l’équipe d’infrastructure plus large

De plus, comme Kubernetes est extensible, il est toujours possible de créer des outils en interne et de les ouvrir en source pour une utilisation au sein de la communauté au sens large.

nous devons exécuter des clusters séparés et créer des outils automatisés qui gèrent toutes les opérations du cluster. Il n’est pas permis de donner aux particuliers l’accès à l’exploitation d’infrastructures de haute sécurité.

EKS a considérablement mûri au cours des dernières années et a montré qu’il fournit des Kubernetes stables et opérationnels tout en s’intégrant aux fonctionnalités couramment utilisées dans EC2, telles que la possibilité d’attacher des groupes de sécurité aux pods et des rôles IAM aux comptes de service. Ces intégrations réduisent les risques et les coûts associés à la migration, car elles permettent la migration sans avoir à modifier l’identité ou les modèles d’accès de notre plate-forme actuelle.

telles qu’AWS EKS et bien qu’il y ait un coût d’installation et de migration important associé à un passage à Kubernetes