• Communications

Construire une plateforme vidéo évolutive

Lorsque nous avons commencé à construire la plateforme vidéo de Panopto il y a dix ans, nous voulions nous assurer que notre infrastructure offrait une grande évolutivité aux clients hébergés sur site ou dans le nuage, afin que notre plateforme puisse évoluer au fur et à mesure que votre utilisation de Panopto se développe.

Avant de parler de l'évolutivité de Panopto, commençons par une définition de base de évolutivité: la capacité d'un système à traiter de manière compétente une quantité croissante de travail ou sa capacité à être agrandi pour répondre à cette croissance.

Dans le cas d'une plate-forme vidéo, l'évolutivité s'applique à un certain nombre d'éléments du système, notamment : les serveurs web qui doivent être évolutifs pour répondre à l'augmentation des demandes HTTP, les serveurs d'encodage qui doivent évoluer au fur et à mesure que les tâches d'encodage sont soumises, et l'évolutivité des données pour répondre à l'augmentation rapide de la quantité de stockage vidéo.

Panopto est conçu pour permettre à chacun de ces composants ainsi qu'à d'autres éléments de la plateforme d'évoluer, comme l'explique le diaporama ci-dessous :

Scaling with Panopto - Panopto Video Platform from Panopto

 

Dans le diaporama ci-dessus, nous présentons les quatre rôles principaux du serveur qui composent Panopto :

  • Serveurs Web, qui comprennent IIS et traitent les demandes HTTP entrantes pour la diffusion de vidéos en direct et à la demande.
  • Serveurs d'encodage, qui reçoivent et traitent les demandes d'encodage vidéo.
  • Serveurs de bases de données, qui comprennent des instances SQL Server, des fichiers de données et des journaux de transactions.
  • Serveurs de stockage, qui hébergent le contenu vidéo et prennent en charge divers types de stockage, notamment les réseaux de stockage (SAN), le stockage en réseau (NAS) et le stockage à accès direct (DAS).

Pour les clients qui déploient Panopto sur site, nous prenons en charge un certain nombre de topologies de serveur, notamment :

  • Serveur unique, dans lequel les quatre types de serveurs sont installés sur une seule machine. C'est souvent par là que commencent les clients qui ont un environnement de test ou une petite installation Panopto.
  • Deux serveurs, dans lesquels le serveur d'encodage est généralement doté d'une machine dédiée pour traiter les tâches d'encodage qui peuvent être gourmandes en ressources CPU.
  • Multi-serveur, dans lequel chacun des quatre rôles de serveur se trouve sur une machine dédiée et le stockage est centralisé.
  • Équilibre de charge, dans lequel un équilibreur de charge se place devant plusieurs serveurs web, distribuant les demandes HTTP entrantes pour la diffusion en direct et à la demande.

Pour les clients qui utilisent Panopto en tant que service sur cloud, nous partageons la même base de code et les mêmes binaires d'installation que les clients sur site. Nous modifions simplement la configuration pour permettre une plus grande échelle. Plus précisément, nous répartissons davantage les rôles des serveurs pour inclure :

  • Serveurs de diffusion - Un "serveur web" spécialisé qui traite les demandes de diffusion en direct.
  • Serveurs de téléchargement - Similaires aux serveurs de diffusion, mais ils traitent les demandes de téléchargement de vidéos préenregistrées.
  • Serveurs de recherche - Étant donné la quantité de recherches vidéo sur nos serveurs hébergés, nous répartissons les grappes de serveurs de recherche dédiés qui interagissent avec nos serveurs de base de données.

Parce que notre cloud vidéo est construit sur Amazon Web Services (AWS) - plus précisément sur Elastic Compute Cloud (EC2) et Simple Storage Service (S3) d'Amazon, nous bénéficions de la fonctionnalité Amazon intégrée qui permet à notre plateforme de faire évoluer dynamiquement nos serveurs d'encodage en fonction de la demande actuelle, et d'augmenter notre stockage à mesure que du contenu est téléchargé sur Panopto. La mise à l'échelle automatique dans le nuage nous permet de garantir l'efficacité de notre plateforme et de ne jamais facturer à nos clients du temps de serveur inactif.

Pour garantir la disponibilité et la fiabilité de notre cloud vidéo, nous faisons également évoluer Panopto sur plusieurs zones de disponibilité Amazon - en mettant en miroir notre infrastructure de serveurs dans différents centres de données Amazon situés dans des lieux géographiques différents. Ainsi, même en cas de panne catastrophique d'un centre de données, nos serveurs restent opérationnels et nos clients peuvent continuer à utiliser la plateforme vidéo sans interruption.

Lorsque vous évaluez les différentes plates-formes vidéo pour votre entreprise ou votre université, vous devez demander au fournisseur comment elles évoluent, tant sur site que dans le cloud. La capacité à évoluer facilement et dynamiquement en fonction de la demande peut être essentielle à la réussite de votre déploiement, comme nous l'avons constaté avec des universités telles que Newcastle et Essex, qui enregistrent toutes deux des dizaines de milliers d'heures de vidéo chaque année scolaire.

Si vous avez des questions sur l'histoire de l'évolutivité de Panopto ou si vous souhaitez discuter de la façon dont notre plateforme vidéo peut aider votre organisation, contactez notre équipe.