Plateforme HA pour le transcodage vidéo : Provisionnement d'un cluster Kubernetes haute performance sur des serveurs dédiés

Plateforme HA pour le transcodage vidéo : Provisionnement d'un cluster Kubernetes haute performance sur des serveurs dédiés
4
Lire 7 min.

À une époque où chaque heure d'indisponibilité se traduit par des délais de projet non respectés et où la vitesse de traitement vidéo a un impact direct sur la compétitivité des produits, les développeurs d'applications média ne peuvent pas compter sur des architectures alourdies par la virtualisation du cloud, qui se traduit par des performances imprévisibles et des limitations de l'utilisation du processeur.

Une équipe de développement allemande a demandé la configuration d'un cluster K8s sur des serveurs dédiés pour leur application de transcodage vidéo, car cette solution seule garantit l'utilisation complète des ressources de calcul avec des valeurs d'E/S maximales.

Objectifs

  • Performance : Obtenir une vitesse d'E/S maximale et une utilisation complète du CPU grâce à un accès matériel direct, en éliminant la surcharge de virtualisation qui est essentielle pour les tâches de transcodage à forte intensité de CPU.

  • Haute disponibilité : Éliminer tous les points de défaillance au niveau du plan de contrôle et des nœuds de travail, afin d'assurer un fonctionnement continu de la grappe. L'objectif était de s'assurer que l'obtention de performances maximales en matière d'E/S et de CPU ne compromettait pas la tolérance aux pannes.

  • Stockage répliqué : Mise en œuvre d'un stockage persistant distribué avec réplication pour sauvegarder les fichiers vidéo critiques et les données d'application.

  • Prévisibilité des coûts : Remplacer les factures imprévisibles de l'informatique en nuage par un paiement fixe et optimisé pour les serveurs dédiés.

Résultats

  • Utilisation complète de l'unité centrale : En contournant la couche de virtualisation sur les nœuds de travail, le développeur a fourni à son application un accès direct aux ressources de calcul pour des performances de transcodage maximales.

  • Tolérance aux pannes : Grâce à une distribution intelligente des ressources et des composants du système, les points de défaillance uniques ont été éliminés jusqu'au niveau de l'hôte.

  • Stockage distribué : La mise en œuvre de Longhorn a permis de réduire les frais généraux liés à la réplication des données et d'éviter la perte de fichiers vidéo ou de la base de données, même en cas de défaillance d'un nœud.

  • Transparence et prévisibilité des coûts : Pour l'équipe de développeurs, qui fournit des services d'assistance pour leur produit, le processus de détermination du coût du travail et des dépenses de maintenance de l'infrastructure a été simplifié.

Le contexte

Le développeur travaillait sur le déploiement d'une suite logicielle pour le transcodage vidéo avec des exigences exceptionnelles en matière de performances de la plateforme. Après plusieurs tests sur une plateforme cloud classique, les ingénieurs DevOps du client ont rencontré un ensemble de limitations qui ont entravé la mise en œuvre du projet.

Le ralentissement critique des charges de travail de l'application de transcodage et des processus CD/CI du client était dû aux limites fondamentales de la plateforme cloud.

Faibles performances des E/S et "taxe sur l'hyperviseur" : L'environnement en nuage a empêché les pods d'utiliser la pleine vitesse des disques NVMe pour traiter les fichiers vidéo volumineux. Les performances d'E/S réelles ont été artificiellement limitées par les limites de l'environnement dématérialisé et les frais généraux de la couche de virtualisation. Cette couche a contribué à une latence inacceptable pendant le chargement de la vidéo source et le téléchargement du contenu traité. En outre, le client ne disposait pas de ressources de calcul suffisantes pour le transcodage parallèle en raison de deux facteurs : une partie des performances de l'unité centrale a été perdue à cause de la virtualisation et, apparemment, en raison des performances insuffisantes des unités centrales sur les nœuds de calcul du fournisseur d'informatique en nuage.

Configuration de l'infrastructure

Le défi

Pour réaliser le projet, il fallait relever les défis suivants afin de garantir une personnalisation et un contrôle complets, ainsi que des performances maximales :

Sélectionner le matériel optimal, en tenant compte des exigences élevées en matière de vitesse d'entraînement pour les fichiers vidéo et de performance globale du cluster pour les tâches de transcodage à forte intensité de CPU.

Configurer le réseau en tenant compte des exigences dehaute disponibilité afin d'éliminer les points de défaillance uniques au niveau du plan de contrôle et des travailleurs.

Déployer un cluster Kubernetes prêt pour la production sur des serveurs dédiés, en intégrant les meilleures pratiques et en mettant en œuvre un stockage persistant distribué avec réplication pour protéger les fichiers vidéo critiques et les données de l'application.

La solution

En réponse à la demande d'une plateforme avec des métriques d'E/S et une puissance de calcul maximales pour l'application de transcodage vidéo, l'équipe d'INTROSERV a déployé un cluster Kubernetes haute performance sur des serveurs dédiés.

Composants clés de la solution :

Matériel optimisé : Des configurations basées sur des processeurs AMD EPYC à haute fréquence ont été sélectionnées. Le cluster était composé de 6 serveurs dédiés - 3 nœuds maîtres et 3 nœuds travailleurs. Cela a permis d'assurer un équilibre optimal entre le coût et la performance pour un environnement à forte charge avec des tâches de transcodage à forte intensité de CPU.

Haute disponibilité : La tolérance aux pannes a été obtenue grâce à une configuration réseau multicouche. Keepalived, HaProxy et MetalLB ont été utilisés pour éliminer les points de défaillance uniques, garantissant un fonctionnement continu du cluster et un équilibrage de la charge.

Stockage distribué : Le stockage distribué Longhorn avec réplication a été mis en œuvre pour protéger les fichiers vidéo critiques et les données d'application. Cette solution a permis de réduire les frais généraux liés à la réplication des données et d'éviter toute perte de données, même en cas de défaillance d'un nœud.

Ainsi, INTROSERV a fourni au client une plateforme qui a éliminé la couche de virtualisation sur les nœuds de travail, donnant aux pods un accès direct au matériel, et a mis en œuvre une topologie tolérante aux pannes conformément aux meilleures pratiques de l'industrie.

Kubernetes sur métal nu : Des performances maximales sans compromis

Grâce au niveau d'expertise et à la capacité d'adaptation de l'équipe INTROSERV, le déploiement du cluster Kubernetes a été mené à bien, malgré les complexités spécifiques d'une telle solution.

La transition vers les serveurs dédiés d'INTROSERV a permis à l'équipe de développement de l'application média d'atteindre des performances maximales, inaccessibles dans l'environnement cloud, et d'avoir un contrôle total sur leur infrastructure.

  • L'accès direct aux ressources de calcul a permis d'utiliser pleinement l'unité centrale. L'application de transcodage a pu utiliser les 32 threads des processeurs AMD EPYC sur chaque nœud de travail sans surcharge de virtualisation. Le temps de traitement des tâches de transcodage typiques a été réduit de 4 à 5 fois par rapport à l'environnement en nuage.

  • Les points de défaillance uniques ont été éliminés au niveau de l'hôte, et une protection fiable des fichiers vidéo et des données d'application a été assurée grâce au stockage distribué Longhorn avec triple réplication.

  • Le client est passé de factures imprévisibles liées à l'informatique en nuage à un paiement fixe et optimisé pour la location de serveurs physiques.

Pour sélectionner l'infrastructure optimale pour votre projet, veuillez contacter le service commercial d'INTROSERV.

Article similaire

VAT

  • Other

    Other

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    %
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • Other
  • canada
  • poland
  • european-union
  • france
  • germany
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria
  • austria