Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Lorsque vous créez un cluster Dataproc, vous pouvez le passer en mode haute disponibilité (HA) Hadoop en spécifiant le nombre d'instances maîtres dans le cluster. Le nombre d'instances maîtres ne peut être spécifié qu'au moment de la création du cluster.
À l'heure actuelle, Dataproc est compatible avec deux configurations d'instances maîtres :
Une instance maître (par défaut, instance standard)
Trois instances maîtres (haute disponibilité Hadoop)
Comparaison du mode par défaut et du mode haute disponibilité Hadoop
Défaillance de Compute Engine : dans les rares cas de défaillance inattendue de Compute Engine, les instances Dataproc seront redémarrées. La configuration Dataproc par défaut à une seule instance maître est conçue pour récupérer et poursuivre le traitement de nouveaux travaux, le cas échéant. Toutefois, les tâches en cours de transfert vont forcément échouer et devront être relancées. En outre, HDFS sera inaccessible jusqu'à ce que le composant unique NameNode soit complètement restauré après le redémarrage. En mode haute disponibilité, la haute disponibilité HDFS et la haute disponibilité YARN sont configurées pour autoriser des opérations YARN et HDFS ininterrompues, même en cas de défaillance ou de redémarrage d'un nœud unique.
Arrêt du pilote des tâches : le pilote/programme principal de toutes les tâches que vous exécutez représente toujours un point de défaillance unique potentiel si l'exactitude de votre tâche dépend de la réussite de l'exécution du programme de pilote. Les tâches soumises via l'API Dataproc ne sont pas considérées comme étant à "haute disponibilité" et seront tout de même arrêtées en cas de défaillance du nœud maître exécutant les programmes de pilote de tâche correspondants. Pour assurer la résilience des tâches individuelles face aux défaillances d'un nœud unique, en utilisant un cluster à haute disponibilité Cloud Dataproc, la tâche doit 1) être exécutée sans programme de pilote synchrone, ou 2) exécuter le programme de pilote elle-même dans un conteneur YARN, et elle doit être autorisée à gérer les redémarrages du programme de pilote. Consultez la section sur le lancement de Spark sur YARN pour découvrir un exemple d'exécution des programmes de pilote redémarrables dans des conteneurs YARN pour la tolérance aux pannes.
Défaillance zonale : comme pour tous les clusters Dataproc, tous les nœuds d'un cluster à haute disponibilité résident dans la même zone. Si une défaillance affecte tous les nœuds d'une zone, celle-ci ne sera pas corrigée.
Noms d'instance
L'instance maître par défaut est nommée cluster-name-m ; les instances maîtres à haute disponibilité sont nommées cluster-name-m-0, cluster-name-m-1 et cluster-name-m-2.
Apache ZooKeeper
Dans un cluster à haute disponibilité Dataproc, le composant ZooKeeper est automatiquement installé sur les nœuds maîtres du cluster. Toutes les instances maîtres participent à un cluster ZooKeeper, provoquant l'activation du basculement automatique pour d'autres services Hadoop.
HDFS
Dans un cluster Dataproc standard :
cluster-name-m exécute :
Le composant NameNode
Le composant NameNode secondaire
Dans un cluster Dataproc à haute disponibilité :
cluster-name-m-0 et cluster-name-m-1 exécutent :
Le composant NameNode
Le composant ZKFailoverController
Toutes les instances maîtres exécutent le composant JournalNode
Il n'y a pas de composant NameNode secondaire
Veuillez consulter la documentation relative à la haute disponibilité HDFS pour plus de détails sur les composants.
YARN
Dans un cluster Dataproc standard, cluster-name-m exécute le composant ResourceManager.
Dans un cluster Dataproc à haute disponibilité, toutes les instances maîtres exécutent le composant ResourceManager.
Veuillez consulter la documentation relative à la haute disponibilité YARN pour plus de détails sur les composants.
Pour créer un cluster à haute disponibilité, sélectionnez l'option "Haute disponibilité" (trois maîtres, N nœuds de calcul) dans la section "Type de cluster" du panneau "Configurer le cluster" de la page Créer un cluster.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003eDataproc clusters can be configured in Hadoop High Availability (HA) mode by setting the number of master instances to 3 during cluster creation, as opposed to the default of 1.\u003c/p\u003e\n"],["\u003cp\u003eHA mode provides uninterrupted YARN and HDFS operations despite single-node failures or reboots, unlike the default mode where in-flight jobs may fail during a Compute Engine failure, necessitating job retries.\u003c/p\u003e\n"],["\u003cp\u003eJobs submitted through the Dataproc Jobs API are not considered "high availability" and will be terminated if the master node running the job driver fails; if a job requires high availability, it must be launched without a driver program, or the driver program must be launched within a YARN container.\u003c/p\u003e\n"],["\u003cp\u003eIn an HA cluster, all master nodes participate in a ZooKeeper cluster to enable automatic failover, and each node runs ResourceManager, while in a default cluster, the single master runs the NameNode, Secondary NameNode, and ResourceManager.\u003c/p\u003e\n"],["\u003cp\u003eCreating an HA cluster involves using either the gcloud command with \u003ccode\u003e--num-masters=3\u003c/code\u003e, the REST API by setting \u003ccode\u003emasterConfig.numInstances\u003c/code\u003e to \u003ccode\u003e3\u003c/code\u003e, or by selecting "High Availability (3 masters, N workers)" in the Dataproc console.\u003c/p\u003e\n"]]],[],null,["When creating a Dataproc cluster, you can put the cluster into\nHadoop High Availability (HA) mode by\nspecifying the number of master instances in the\ncluster. The number of masters can only be specified at cluster creation time.\n\nCurrently, Dataproc supports two master configurations:\n\n- 1 master (default, non HA)\n- 3 masters (Hadoop HA)\n\nComparison of default and Hadoop High Availability mode Due to the complexity and higher cost of HA mode, use the default mode unless your use case requires HA mode.\n\n- **Compute Engine failure:** In the rare case of an\n unexpected Compute Engine failure, Dataproc\n instances will experience a machine reboot. The default single-master\n configuration for Dataproc is designed to recover and continue processing\n new work in such cases, but in-flight jobs will necessarily fail and need to be\n retried, and HDFS will be inaccessible until the single NameNode fully recovers\n on reboot. In **HA mode** , [HDFS High Availability](https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html) and\n [YARN High Availability](https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.html)\n are configured to allow uninterrupted YARN and HDFS operations despite any\n single-node failures/reboots.\n\n- **Job driver termination:** The driver/main program of any jobs you run still represents a\n potential single point of failure if the correctness of your job depends on the\n driver program running successfully. Jobs submitted through the Dataproc\n Jobs API are not considered \"high availability,\" and will still be terminated on\n failure of the master node that runs the corresponding job driver programs. For\n individual jobs to be resilient against single-node failures using a HA Cloud\n Dataproc cluster, the job must either 1) run without a synchronous driver\n program or 2) it must run the driver program itself inside a YARN container and\n be written to handle driver-program restarts. See\n [Launching Spark on YARN](http://spark.apache.org/docs/latest/running-on-yarn.html#launching-spark-on-yarn) for an example\n of how restartable driver programs can run inside YARN containers for fault\n tolerance.\n\n- **Zonal failure:** As is the case with all Dataproc clusters, all nodes in a High\n Availability cluster reside in the same zone. If there is a failure that\n impacts all nodes in a zone, the failure will not be mitigated.\n\nInstance Names\n\nThe default master is named `cluster-name-m`; HA masters are named\n`cluster-name-m-0`, `cluster-name-m-1`, `cluster-name-m-2`.\n\nApache ZooKeeper\n\nIn an HA Dataproc cluster, the\n[Zookeeper component](/dataproc/docs/concepts/components/zookeeper)\nis automatically installed on cluster master nodes. All masters\nparticipate in a ZooKeeper cluster, which enables automatic failover for\nother Hadoop services.\n\nHDFS\n\nIn a standard Dataproc cluster:\n\n- `cluster-name-m` runs:\n - NameNode\n - Secondary NameNode\n\nIn a High Availability Dataproc cluster:\n\n- `cluster-name-m-0` and `cluster-name-m-1` run:\n - NameNode\n - ZKFailoverController\n- All masters run JournalNode\n- There is no Secondary NameNode\n\nPlease see the [HDFS High Availability](https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html)\ndocumentation for additional details on components.\n\nYARN\n\nIn a standard Dataproc cluster, `cluster-name-m` runs ResourceManager.\n\nIn a High Availability Dataproc cluster, all masters run ResourceManager.\n\nPlease see the [YARN High Availability](https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.html)\ndocumentation for additional details on components.\n\nCreate a High Availability cluster \n\ngcloud command\n\n\n| **gcloud CLI setup:** You must [setup and configure](/sdk/docs/quickstarts) the gcloud CLI to use the Google Cloud CLI.\nTo create an HA cluster with [gcloud dataproc clusters create](/sdk/gcloud/reference/dataproc/clusters/create), run the following command: \n\n```\ngcloud dataproc clusters create cluster-name \\\n --region=region \\\n --num-masters=3 \\\n ... other args\n```\n\n\u003cbr /\u003e\n\nREST API\n\n\nTo create an HA cluster, use the\n[clusters.create](/dataproc/docs/reference/rest/v1/projects.regions.clusters/create)\nAPI, setting [masterConfig.numInstances](/dataproc/docs/reference/rest/v1/ClusterConfig#InstanceGroupConfig)\nto `3`.\n| An easy way to construct the JSON body of an HA cluster create request is to create the request from the Dataproc [Create a cluster](https://console.cloud.google.com/dataproc/clustersAdd) page of the Google Cloud console. Select High Availability (3 masters, N workers) in the Cluster type section of the Set up cluster panel, then click the Equivalent REST button at the bottom of the left panel. Here's a snippet of a sample JSON output produced by the console for an HA cluster create request: \n|\n| ```\n| ...\n| masterConfig\": {\n| \"numInstances\": 3,\n| \"machineTypeUri\": \"n1-standard-4\",\n| \"diskConfig\": {\n| \"bootDiskSizeGb\": 500,\n| \"numLocalSsds\": 0\n| }\n| }\n| ...\n| ```\n\n\u003cbr /\u003e\n\nConsole\n\n\nTo create an HA cluster, select High Availability (3 masters, N workers) in\nthe Cluster type section of the Set up cluster panel on the\nDataproc\n[Create a cluster](https://console.cloud.google.com/dataproc/clustersAdd)\npage."]]