Comprendre les types de nœuds : nœuds principaux, principaux et de tâches - Amazon EMR

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Comprendre les types de nœuds : nœuds principaux, principaux et de tâches

Utilisez cette section pour comprendre comment Amazon EMR utilise chacun de ces types de nœuds et comme base pour la planification de la capacité des clusters.

Nœud primaire

Le nœud primaire gère le cluster et exécute généralement les composants primaires des applications distribuées. Par exemple, le nœud principal exécute le YARN ResourceManager service pour gérer les ressources des applications. Il exécute également le HDFS NameNode service, suit l'état des tâches soumises au cluster et surveille l'état des groupes d'instances.

Pour suivre la progression d'un cluster et interagir directement avec les applications, vous pouvez vous connecter au nœud principal en SSH tant qu'utilisateur Hadoop. Pour de plus amples informations, veuillez consulter Connectez-vous au nœud principal à l'aide de SSH. La connexion au nœud primaire vous permet d'accéder directement aux répertoires et aux fichiers, tels que les fichiers journaux Hadoop. Pour de plus amples informations, veuillez consulter Afficher les fichiers journaux . Vous pouvez aussi afficher les interfaces utilisateur que les applications publient sous forme de sites web s'exécutant sur le nœud primaire. Pour de plus amples informations, veuillez consulter Afficher les interfaces Web hébergées sur des EMR clusters Amazon.

Note

Avec Amazon EMR 5.23.0 et versions ultérieures, vous pouvez lancer un cluster avec trois nœuds principaux pour garantir la haute disponibilité d'applications telles que YARN Resource Manager, Spark HDFS NameNode, Hive et Ganglia. Le nœud primaire n'est plus un point de défaillance potentiel grâce à cette fonctionnalité. Si l'un des nœuds principaux tombe en panne, Amazon EMR bascule automatiquement vers un nœud principal de secours et remplace le nœud principal défaillant par un nouveau nœud présentant les mêmes actions de configuration et de démarrage. Pour plus d'informations, consultez Planification et configuration des nœuds primaires.

Nœuds principaux

Les nœuds principaux sont gérés par le nœud primaire. Les nœuds principaux exécutent le démon Data Node pour coordonner le stockage des données dans le cadre du système de fichiers distribué Hadoop (). HDFS Ils exécutent également le démon du dispositif de suivi des tâches et exécutent d'autres tâches de calcul parallèles sur les données dont ont besoin les applications installées. Par exemple, un nœud principal exécute des YARN NodeManager démons, des MapReduce tâches Hadoop et des exécuteurs Spark.

Il n'existe qu'un seul groupe d'instances principal ou un seul parc d'instances par cluster, mais plusieurs nœuds peuvent s'exécuter sur plusieurs EC2 instances Amazon dans le groupe d'instances ou le parc d'instances. Avec les groupes d'instances, vous pouvez ajouter et supprimer des EC2 instances Amazon pendant que le cluster est en cours d'exécution. Vous pouvez également configurer le dimensionnement automatique pour ajouter des instances en fonction de la valeur d'une métrique. Pour plus d'informations sur l'ajout et la suppression d'EC2instances Amazon avec la configuration des groupes d'instances, consultezUtilisez Amazon EMR Cluster Scaling pour vous adapter à l'évolution des charges de travail.

Avec les parcs d'instances, vous pouvez ajouter et retirer efficacement des instances en modifiant les capacités cibles du parc d'instances pour les instances à la demande et Spot, comme il convient. Pour plus d'informations sur les capacités cibles, consultez Options de parc d'instances.

Avertissement

Le fait de supprimer HDFS des démons d'un nœud principal en cours d'exécution ou de mettre fin à un nœud principal risque de perdre des données. Faites attention lorsque vous configurez des nœuds de noyau sur des instances Spot. Pour de plus amples informations, veuillez consulter Quand faut-il utiliser des instances Spot ?.

Nœuds de tâches

Vous pouvez utiliser les nœuds de tâches pour augmenter la puissance nécessaire à l'exécution de tâches de calcul parallèles sur les données, telles que les tâches Hadoop et les exécuteurs MapReduce Spark. Les nœuds de tâches n'exécutent pas le démon Data Node et n'y stockent pas de données. HDFS Comme pour les nœuds principaux, vous pouvez ajouter des nœuds de tâches à un cluster en ajoutant des EC2 instances Amazon à un groupe d'instances uniforme existant ou en modifiant les capacités cibles d'un parc d'instances de tâches.

Avec la configuration de groupe d'instances uniforme, vous pouvez avoir jusqu'à 48 groupes d'instances de tâches au total. La possibilité d'ajouter des groupes d'instances de cette manière vous permet de combiner les types d'EC2instances Amazon et les options de tarification, telles que les instances à la demande et les instances ponctuelles. Vous pouvez ainsi répondre aux exigences de charge de travail de manière rentable.

Avec la configuration de parc d'instances, la possibilité de mélanger les types d'instances et les options d'achat est intégrée, de sorte qu'il n'y a qu'un seul parc d'instances de tâches.

Les instances Spot étant souvent utilisées pour exécuter des nœuds de tâches, Amazon EMR dispose d'une fonctionnalité par défaut pour planifier les YARN tâches afin que l'exécution des tâches n'échoue pas lorsque les nœuds de tâches exécutés sur des instances Spot sont fermés. Pour ce faire, Amazon EMR autorise les processus principaux de l'application à s'exécuter uniquement sur les nœuds principaux. Le processus principal de l'application contrôle les tâches en cours d'exécution et doit rester actif pendant toute la durée de vie de la tâche.

Les EMR versions 5.19.0 et ultérieures d'Amazon utilisent la fonctionnalité intégrée d'étiquettes de YARN nœuds pour y parvenir. (Les versions antérieures utilisaient un correctif de code). Les propriétés des classifications de capacity-scheduler configuration yarn-site et de configuration sont configurées par défaut afin que le planificateur de YARN capacité et le planificateur équitable tirent parti des étiquettes des nœuds. Amazon étiquette EMR automatiquement les nœuds principaux avec cette CORE étiquette et définit les propriétés de telle sorte que les maîtres d'applications soient planifiés uniquement sur les nœuds dotés de cette CORE étiquette. La modification manuelle des propriétés associées dans les classifications de configuration Yarn-Site et Capacity Scheduler, ou directement dans XML les fichiers associés, pourrait interrompre cette fonctionnalité ou la modifier.

À compter de la série de versions Amazon EMR 6.x, la fonctionnalité d'étiquettes de YARN nœuds est désactivée par défaut. Les processus principaux des applications peuvent s'exécuter à la fois sur les nœuds de noyau et sur les nœuds de tâche par défaut. Vous pouvez activer la fonctionnalité d'étiquettes de YARN nœuds en configurant les propriétés suivantes :

  • yarn.node-labels.enabled: true

  • yarn.node-labels.am.default-node-label-expression: 'CORE'

À partir de la série de versions EMR 7.x d'Amazon, Amazon EMR attribue des étiquettes de YARN nœuds aux instances en fonction de leur type de marché, tel que On-Demand ou Spot. Vous pouvez activer les libellés de nœuds et limiter les processus d'application à ON_ DEMAND en configurant les propriétés suivantes :

yarn.node-labels.enabled: true yarn.node-labels.am.default-node-label-expression: 'ON_DEMAND'

Si vous utilisez Amazon EMR 7.0 ou une version ultérieure, vous pouvez limiter le processus de candidature aux nœuds portant l'CODEétiquette en utilisant la configuration suivante :

yarn.node-labels.enabled: true yarn.node-labels.am.default-node-label-expression: 'CORE'

Pour les EMR versions 7.2 et supérieures d'Amazon, si votre cluster utilise un dimensionnement géré avec des étiquettes de nœuds, Amazon EMR essaiera de le dimensionner indépendamment en fonction du processus d'application et de la demande de l'exécuteur.

Par exemple, si vous utilisez les EMR versions 7.2 ou supérieures d'Amazon et que vous limitez le processus d'application aux ON_DEMAND nœuds, le dimensionnement géré augmente les ON_DEMAND nœuds si la demande en matière de processus d'application augmente. De même, si vous limitez le processus d'application aux CORE nœuds, le dimensionnement géré augmente les CORE nœuds si la demande en matière de processus d'application augmente.

Pour plus d'informations sur les propriétés spécifiques, consultez EMRParamètres Amazon pour éviter l'échec des tâches en raison de la fermeture de l'instance Spot du nœud de tâches.