The Doppler Quarterly (FRANÇAIS) Hiver 2016 - Page 47

Démystifier le paysage des outils de conteneurs Docker Jon Baier Voilà ce que nous pensons sur les capacités des meilleurs outils d’orchestration de conteneurs et les tendances du marché. Le paysage d’outils d’orchestration Il y a beaucoup de mouvement, d’excitation et d’éner- gie autour de Docker et des conteneurs, et un grand enthousiasme à l’idée d’adopter ce nouveau para- digme, au moins dans les environnements de dével- oppement et de tests. Avec toute cette agitation, et l’adoption par les développeurs, les entreprises ont bien raison de se demander comment elles vont gérer le chaos de leurs conteneurs. Notre but est de clarifier les choses et de décrire ce que nous pouvons attendre des prochains mois. L’une des difficultés associées aux outils actuels est qu’ils ne se chevauchent que sur certains éléments, et ne peuvent pas être comparés, point par point, pour l’intégralité de leurs fonctionnalités. Bien que beau- coup d’outils puissent se substituer les uns aux autres, dans certains cas, ils peuvent être utilisés conjointe- ment. Dans le but de dissiper un peu le brouillard (dans lequel le porte-conteneurs se trouve !), nous avons évalué les outils par rapport à cinq qualités clés : haute disponibilité, évolutivité et utilisation en situ- ation réelle, facilité d’adoption, mise en réseau, et extensibilité au-delà des conteneurs. Dans cette dernière catégorie, nous avons cherché la capacité à s’intégrer à divers projets de développement, et nota- mment ceux qui sont peu ou pas liés aux conteneurs. Haute disponibilité Trois fonctionnalités ont été sélectionnées pour leur facilité de comparaison, et pour leur importance dans l’implémentation de la haute disponibilité, en partic- ulier pour la mise en clusters. Nous nous penchons d’abord sur le basculement maître, et cela comprend la capacité d’un cluster maître à basculer et à choisir une machine existante comme nouveau maître. Nous examinons ensuite le suivi de l’état de santé, ou la capacité du système de savoir quand l’application et le cluster sont réellement disponibles. Enfin, nous étu- dions la replanification automatique en cas de défail- lance. Si une partie d’un cluster subit une défaillance, nous voulons savoir quand notre charge de travail de conteneur est replanifiée et redémarrée. Mesos a un mode haute disponibilité qui utilise Apache ZooKeeper en interne. En mode haute dis- ponibilité, plusieurs maîtres sont exécutés. Un maître actif est désigné pour être le leader. Si ce leader con- naît une défaillance, un autre est désigné. Swarm et Kubernetes prennent également en charge une con- figuration maître « haute disponibilité ». Ce n’est pas une fonctionnalité prête à l’emploi, mais des guides existent pour la configuration pour les deux outils. Swarm, Mesos et Kubernetes ont tous des méthodes TCP/HTTP pour le suivi de l’état de santé. Le suivi de l’état de santé en lignes de commandes va un peu plus loin en permettant l’exécution et la vérification de commandes sp :6fVW22&VBV6&vR6RGPFRl:&f6F2VFbFWV2V6W'FFV2L::FRW2V&W&WFW2FW27G'V7GW&W2L:w,:W0FR6W'f6W2WBR7VfFR6L:WWB :G&RWFƗ<:W :fVW"W2;GFW2V :FBFR6L:7Vff6BW &V6Wf"GRG&f2FR6W'f6W2W62&VB :vRЦVBV6&vRFW27Vf2N( :FBFR6L:VƖvW2FP6FW2WB,:6VVB6'&|:6W'F2&"Ц:W2VV :6VBWW"WFƗ6FऄdU"#bDRDU"CP