Developpez.com

Le Club des Développeurs et IT Pro

Titus, la plateforme de gestion de conteneurs de Netflix codée en Java, désormais open source :

Une alternative à Kubernetes ou Docker Swarm ?

Le 2018-06-18 00:02:11, par Christian Olivier, Expert éminent sénior
Titus est la plateforme de gestion de conteneurs qui alimente les aspects critiques des activités du géant américain du streaming Netflix, incluant la diffusion vidéo en continu, l’encodage de contenu, le système de recommandation, l’apprentissage automatique, les outils d’ingénierie internes et bien plus encore. Elle est codée en grande partie en Java et a officiellement été rendue open source par Netflix après 3 ans de développement.


Cette entreprise technologique américaine, il faut le rappeler, s’est tournée assez rapidement vers Cloud. C’est depuis 2008 plus précisément qu’elle a fait le choix de la conteneurisation pour gérer ses services clés et migré vers Amazon AWS.

Titus pourrait être considéré comme une plateforme de conteneurs prête à l’emploi qui met l’accent sur la scalabilité. Elle promet non seulement l’intégration native du Cloud avec AWS et Netflix OSS, mais aussi, l’exécution de conteneurs native Docker. Ce serait, par ailleurs, une solution adaptée aux productions nécessitant un processus d’intégration continue sur des briques multiples étant donné qu’elle est en mesure de lancer jusqu’à 500 ;000 conteneurs et 200 ;000 grappes au quotidien.

Il existe de nombreuses autres plateformes de gestion de conteneurs (y compris Moby, Kubernetes, Docker Swarm, CRI-O ou container-d) pouvant servir d’alternative à Titus. Mais, Netflix estime que sa solution est plus adaptée à ses besoins spécifiques, en raison notamment du fonctionnement étroit et transparent entre Titus et les infrastructures Amazon et Netflix.

Titus serait essentiellement codé en Java avec des services tels que IAM qui sont purement basés sur Java et des services plus hybrides qui associent Ruby, Java et C++. Chaque service résulterait, de manière générale, d'une combinaison complexe de différents langages de programmation, mais la plupart seraient codés en Java.


À l’heure actuelle, Titus hébergerait déjà des milliers d’applications sur sept piles régionales isolées sur des dizaines de milliers de machines virtuelles EC2. Devant ce succès, les demandes d’accès au code source émises par les développeurs auraient explosé.

En annonçant la libération du code source de Titus, Netflix souhaite probablement contribuer à l’accélération des travaux des équipes de développement travaillant sur des projets similaires et compte bien profiter de retours d’expérience d’autres organisations pour faire évoluer son outil.

Source : Medium

Et vous ?

Qu’en pensez-vous ?
Où situerez-vous Titus par rapport à la concurrence (Mesos, Kubernetes ou Docker Swarm) ?
Pensez-vous que Java soit adapté au développement de programmes lourds et très performants ?
Le développement de tels programmes en Java aurait-il des avantages sur leurs variantes codées en C/C++ (du point de vue de l’allocation mémoire par exemple) ?

Voir aussi

Le système de gestion des applications conteneurisées Kubernetes passe en version 1.10 et s'accompagne de fonctionnalités de stockage (en bêta)
Docker annonce le support de la technologie de conteneur rivale Kubernetes et va donner à ses clients un autre choix que son outil Docker Swarm
Microsoft lance un nouveau Azure Container Service qui se concentre désormais sur Kubernetes, AKS est disponible en préversion publique
  Discussion forum
2 commentaires
  • bunam
    Membre du Club
    Je crois qu'Apple l'utilise beaucoup et adore ce logiciel

    mesos et fenzo confirmé ici :
    https://fr.slideshare.net/aspyker/ne...ntainers-titus

    un dernier truc : Netflix c'est énorme ce qu'ils ont réussit a faire, meme sur des contenu UHD 4K sur ma Tv, le player est très rapide, je trouve qu'ils ont mis une claque à youtube qui n'est pas aussi rapide à monter en qualité. Je suis entrain d'essayer OCS aussi et il y a souvent des problèmes techniques...
  • Gugelhupf
    Modérateur
    Une alternative à Kubernetes ou Docker Swarm ?
    Je viens de jeter un coup d'oeil rapide dans le projet, j'ai l'impression que le projet a recours à Apache Mesos, un concurrent de Kubernetes et Docker Swarm.