Tous les produits
Search
Centre de documentation

Resource Orchestration Service:ALIYUN::EMR::Cluster2

Dernière mise à jour :Aug 10, 2026

La ressource ALIYUN::EMR::Cluster2 crée un cluster E-MapReduce (EMR).

Remarque

La ressource ALIYUN::EMR::Cluster prend en charge l'ancienne API EMR et est disponible pour les types de clusters HADOOP, KAFKA, DRUID, ZOOKEEPER, DATA_SCIENCE et GATEWAY. La ressource ALIYUN::EMR::Cluster2 prend en charge la nouvelle API EMR (2021-03-20) et est disponible pour les types de clusters DATALAKE, OLAP, DATAFLOW et DATASERVING. Nous vous recommandons d'utiliser ALIYUN::EMR::Cluster2 pour créer des clusters de ces types.

Syntaxe

{
  "Type": "ALIYUN::EMR::Cluster2",
  "Properties": {
    "Applications": List,
    "ResourceGroupId": String,
    "ApplicationConfigs": List,
    "ClusterType": String,
    "NodeGroups": List,
    "ReleaseVersion": String,
    "BootstrapScripts": List,
    "SubscriptionConfig": Map,
    "DeployMode": String,
    "SecurityMode": String,
    "NodeAttributes": Map,
    "ClusterName": String,
    "PaymentType": String,
    "Tags": List
  }
}

Propriétés

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

Applications

List

Oui

Non

Les applications que vous souhaitez ajouter au cluster.

Vous pouvez ajouter jusqu'à 100 applications au cluster.

Pour plus d'informations, consultez la section Propriété Applications.

ResourceGroupId

String

Non

Non

L'ID du groupe de ressources.

Aucune.

ApplicationConfigs

List

Non

Non

Les configurations des applications.

Vous pouvez ajouter jusqu'à 1 000 configurations d'application.

Pour plus d'informations, consultez la section Propriétés ApplicationConfigs.

ClusterType

String

Oui

Non

Le type de cluster.

Valeurs valides :

  • DATALAKE : lac de données

  • OLAP : traitement analytique en ligne (OLAP)

  • DATAFLOW : flux de données

  • DATASERVING : service de données

NodeGroups

List

Oui

Non

Les configurations des groupes de nœuds.

Vous pouvez ajouter jusqu'à 100 configurations de groupe de nœuds.

Pour plus d'informations, consultez la section Propriétés NodeGroups.

ReleaseVersion

String

Oui

Non

La version d'EMR.

Aucune.

BootstrapScripts

List

Non

Non

Les scripts d'action d'amorçage.

Vous pouvez ajouter jusqu'à 10 scripts d'action d'amorçage.

Pour plus d'informations, consultez la section Propriétés BootstrapScripts.

SubscriptionConfig

Map

Non

Non

Les configurations d'abonnement.

Cette propriété doit être spécifiée lorsque PaymentType est défini sur Subscription.

DeployMode

String

Non

Non

Le mode de déploiement des applications dans le cluster.

Valeurs valides :

  • NORMAL : mode standard. Un nœud maître est déployé dans le cluster.

  • HA : mode haute disponibilité. Au moins trois nœuds maîtres sont déployés dans le cluster.

SecurityMode

String

Non

Non

Le mode de sécurité du cluster.

Valeurs valides :

  • NORMAL : mode standard. Kerberos n'est pas activé.

  • KERBEROS : mode Kerberos. Kerberos est activé.

NodeAttributes

Map

Oui

Non

Les attributs de base de tous les nœuds Elastic Compute Service (ECS) du cluster.

ClusterName

String

Oui

Non

Le nom du cluster.

Le nom doit comporter entre 1 et 128 caractères et ne peut pas commencer par http:// ou https://. Il peut contenir des lettres, des chiffres, des deux-points (:), des traits de soulignement (_), des points (.) et des tirets (-).

PaymentType

String

Non

Non

La méthode de facturation.

Valeurs valides :

  • PayAsYouGo : paiement à l'utilisation

  • Subscription : abonnement

Tags

List

Non

Non

Les tags du cluster.

Vous pouvez ajouter jusqu'à 20 tags personnalisés.

Pour plus d'informations, consultez la section Propriétés Tags.

Syntaxe Applications

"Applications": [
  {
    "ApplicationName": String
  }
]

Propriété Applications

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

ApplicationName

String

Oui

Non

Le nom de l'application.

Aucune.

Syntaxe ApplicationConfigs

"ApplicationConfigs": [
  {
    "ConfigFileName": String,
    "ApplicationName": String,
    "ConfigItemKey": String,
    "NodeGroupName": String,
    "NodeGroupId": String,
    "ConfigScope": String,
    "ConfigItemValue": String
  }
]

Propriétés ApplicationConfigs

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

ConfigFileName

String

Non

Non

Le nom du fichier de configuration.

Aucune.

ApplicationName

String

Oui

Non

Le nom de l'application.

Aucune.

ConfigItemKey

String

Non

Non

Le nom de l'élément de configuration.

Aucune.

NodeGroupName

String

Non

Non

Le nom du groupe de nœuds.

Cette propriété prend effet lorsque ConfigScope est défini sur NODE_GROUP et que NodeGroupId est vide.

NodeGroupId

String

Non

Non

L'ID du groupe de nœuds.

Cette propriété prend effet lorsque ConfigScope est défini sur NODE_GROUP.

Remarque

NodeGroupId est prioritaire sur NodeGroupName.

ConfigScope

String

Non

Non

La portée de la configuration.

Valeurs valides :

  • CLUSTER (par défaut) : niveau cluster

  • NODE_GROUP : niveau groupe de nœuds

ConfigItemValue

String

Non

Non

La valeur de l'élément de configuration.

Aucune.

Syntaxe NodeGroups

"NodeGroups": [
  {
    "WithPublicIp": Boolean,
    "SpotInstanceRemedy": Boolean,
    "NodeCount": Number,
    "NodeGroupName": String,
    "DataDisks": List,
    "VSwitchIds": List,
    "SpotBidPrices": List,
    "NodeResizeStrategy": String,
    "SystemDisk": Map,
    "NodeGroupType": String,
    "InstanceTypes": List,
    "AdditionalSecurityGroupIds": List,
    "CostOptimizedConfig": Map,
    "GracefulShutdown": Boolean,
    "DeploymentSetStrategy": String,
    "SpotStrategy": String
  }
]

Propriétés NodeGroups

Property

Type

Required

Editable

Description

Constraint

WithPublicIp

Boolean

No

No

Indique s'il faut attribuer une adresse IP publique.

Valeurs valides :

  • true

  • false (par défaut)

SpotInstanceRemedy

Boolean

No

No

Indique s'il faut activer le remplacement des instances preemptibles. Si cette option est activée, le système crée une instance de remplacement lorsqu'une instance preemptible existante est sur le point d'être récupérée.

Valeurs valides :

  • true

  • false (par défaut)

NodeCount

Number

No

No

Le nombre de nœuds.

Valeurs valides : 1 à 1000.

NodeGroupName

String

No

No

Le nom du groupe de nœuds.

Le nom peut contenir jusqu'à 128 caractères. Le nom d'un groupe de nœuds doit être unique au sein d'un cluster.

DataDisks

List

No

No

Les configurations des disques de données.

Pour plus d'informations, consultez la section Propriétés DataDisks.

VSwitchIds

List

No

No

Les ID des vSwitch.

Aucun.

SpotBidPrices

List

No

No

Les prix d'enchère pour les instances preemptibles.

Cette propriété prend effet lorsque SpotStrategy est défini sur SpotWithPriceLimit.

Remarque

Vous pouvez spécifier jusqu'à 100 prix d'enchère.

Pour plus d'informations, consultez la section Propriétés SpotBidPrices.

NodeResizeStrategy

String

No

No

La politique de mise à l'échelle des nœuds.

Valeurs valides :

  • COST_OPTIMIZED : politique d'optimisation des coûts

  • PRIORITY (par défaut) : politique basée sur les priorités

SystemDisk

Map

No

No

Les configurations du disque système.

Pour plus d'informations, consultez la section Propriétés SystemDisk.

NodeGroupType

String

Yes

No

Le type du groupe de nœuds.

Valeurs valides :

  • MASTER

  • CORE

  • TASK

InstanceTypes

List

Yes

No

Les types d'instance des nœuds.

Vous pouvez ajouter jusqu'à 100 types d'instance.

AdditionalSecurityGroupIds

List

No

No

Les groupes de sécurité supplémentaires.

Les groupes de sécurité supplémentaires sont ajoutés aux groupes de nœuds plutôt qu'aux clusters. Vous pouvez ajouter jusqu'à deux groupes de sécurité supplémentaires.

CostOptimizedConfig

Map

No

No

Les configurations de la politique d'optimisation des coûts.

Aucun.

GracefulShutdown

Boolean

No

No

Indique s'il faut activer l'arrêt gracieux des composants dans le groupe de nœuds.

Valeurs valides :

  • true

  • false (par défaut)

DeploymentSetStrategy

String

No

No

La politique de déploiement des ensembles.

Valeurs valides :

  • NONE (par défaut) : n'utilise pas d'ensembles de déploiement.

  • CLUSTER : utilise des ensembles de déploiement au niveau du cluster.

  • NODE_GROUP : utilise des ensembles de déploiement au niveau du groupe de nœuds.

SpotStrategy

String

No

No

La politique d'enchère pour l'instance à la demande.

Valeurs valides :

  • NoSpot (par défaut) : l'instance est créée en tant qu'instance régulière à la demande.

  • SpotWithPriceLimit : l'instance est créée en tant qu'instance preemptible avec un prix horaire maximal défini par l'utilisateur.

  • SpotAsPriceGo : l'instance est créée en tant qu'instance preemptible dont le prix d'enchère est basé sur le prix du marché au moment de l'achat. Le prix du marché peut atteindre le prix à la demande.

Syntaxe DataDisks

"DataDisks": [
  {
    "Category": String,
    "PerformanceLevel": String,
    "Size": Number,
    "Count": Number
  }
]

Propriétés DataDisks

Property

Type

Required

Editable

Description

Constraint

Category

String

Yes

No

La catégorie du disque.

Aucun.

PerformanceLevel

String

No

No

Le niveau de performance (PL) du disque ESSD (Enhanced SSD) utilisé comme disque de données.

Valeurs valides :

  • PL0 : Un disque ESSD offre jusqu'à 10 000 IOPS en lecture/écriture aléatoire.

  • PL1 (par défaut) : Un disque ESSD offre jusqu'à 50 000 IOPS en lecture/écriture aléatoire.

  • PL2 : Un disque ESSD offre jusqu'à 100 000 IOPS en lecture/écriture aléatoire.

  • PL3 : Un disque ESSD offre jusqu'à 1 000 000 d'IOPS en lecture/écriture aléatoire.

Size

Number

Yes

No

La taille du disque.

Aucun.

Count

Number

No

No

Le nombre de disques de données sur un nœud.

Aucun.

Syntaxe SpotBidPrices

"SpotBidPrices": [
  {
    "BidPrice": Number,
    "InstanceType": String
  }
]

Propriétés SpotBidPrices

Property

Type

Required

Editable

Description

Constraint

BidPrice

Number

No

No

Le prix d'enchère horaire maximal de l'instance.

La valeur de cette propriété peut contenir jusqu'à trois décimales. Cette propriété prend effet lorsque SpotStrategy est défini sur SpotWithPriceLimit.

InstanceType

String

No

No

Le type d'instance ECS.

Aucun.

Syntaxe SystemDisk

"SystemDisk": {
  "Category": String,
  "PerformanceLevel": String,
  "Size": Number,
  "Count": Number
}

Propriétés SystemDisk

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

Category

String

Oui

Non

La catégorie du disque.

Aucune.

PerformanceLevel

String

Non

Non

Le niveau de performance (PL) du disque ESSD utilisé comme disque système.

Valeurs valides :

  • PL0 : un disque ESSD offre jusqu'à 10 000 IOPS en lecture/écriture aléatoire.

  • PL1 (par défaut) : un disque ESSD offre jusqu'à 50 000 IOPS en lecture/écriture aléatoire.

  • PL2 : un disque ESSD offre jusqu'à 100 000 IOPS en lecture/écriture aléatoire.

  • PL3 : un disque ESSD offre jusqu'à 1 000 000 d'IOPS en lecture/écriture aléatoire.

Size

Number

Oui

Non

La taille du disque.

Valeurs valides : 20 à 500.

Count

Number

Non

Non

Le nombre de disques système sur un nœud.

Valeur par défaut : 1.

Syntaxe CostOptimizedConfig

"CostOptimizedConfig": {
  "OnDemandBaseCapacity": Number,
  "OnDemandPercentageAboveBaseCapacity": Number,
  "SpotInstancePools": Number
}

Propriétés CostOptimizedConfig

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

OnDemandBaseCapacity

Number

Oui

Non

Le nombre minimal d'instances à la demande requises dans les groupes de nœuds.

Aucune.

OnDemandPercentageAboveBaseCapacity

Number

Oui

Non

Le pourcentage d'instances à la demande parmi les instances supplémentaires au-delà de la limite OnDemandBaseCapacity.

Valeurs valides : 0 à 100.

SpotInstancePools

Number

Oui

Non

Le nombre de types d'instance disponibles.

Aucune.

Syntaxe BootstrapScripts

"BootstrapScripts": [
  {
    "ScriptPath": String,
    "ScriptArgs": String,
    "ExecutionFailStrategy": String,
    "Priority": Number,
    "ScriptName": String,
    "ExecutionMoment": String,
    "NodeSelector": Map
  }
]

Propriétés BootstrapScripts

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

ScriptPath

String

Oui

Non

Le chemin OSS où le script est stocké.

Le chemin doit commencer par oss://.

ScriptArgs

String

Non

Non

Les paramètres d'exécution du script.

Aucune.

ExecutionFailStrategy

String

Non

Non

La politique de gestion des échecs d'exécution.

Valeurs valides :

  • FAILED_CONTINUE : le système poursuit la création ou la mise à l'échelle du cluster après l'échec du script.

  • FAILED_BLOCK : le système arrête la création ou la mise à l'échelle du cluster après l'échec du script.

Priority

Number

Non

Non

La priorité du script.

Valeurs valides : 1 à 100.

ScriptName

String

Oui

Non

Le nom du script.

Le nom doit comporter entre 1 et 64 caractères et peut contenir des lettres, des chiffres, des traits de soulignement (_) et des traits d'union (-). Il doit commencer par une lettre et ne peut pas commencer par http:// ni par https://.

ExecutionMoment

String

Non

Non

Le moment d'exécution du script.

Valeurs valides :

  • BEFORE_INSTALL : le script s'exécute avant l'installation de l'application.

  • AFTER_STARTED : le script s'exécute après le démarrage de l'application.

NodeSelector

Map

Oui

Non

Les configurations du sélecteur de nœuds.

Aucune.

Syntaxe NodeSelector

"NodeSelector": {
  "NodeGroupTypes": List,
  "NodeGroupName": String,
  "NodeGroupId": String,
  "NodeSelectType": String,
  "NodeNames": List
}

Propriétés NodeSelector

Propriété

Type

Obligatoire

Modifiable

Description

Contrainte

NodeGroupTypes

List

Non

Non

Le type de groupe de nœuds.

Valeurs valides :

  • MASTER

  • CORE

  • TASK

NodeGroupName

String

Non

Non

Le nom du groupe de nœuds.

Cette propriété prend effet lorsque NodeSelectType est défini sur NodeGroup et que NodeGroupId est vide.

NodeGroupId

String

Non

Non

L'ID du groupe de nœuds.

Cette propriété prend effet lorsque NodeSelectType est défini sur NodeGroup.

NodeSelectType

String

Oui

Non

La portée de sélection des nœuds.

Valeurs valides :

  • CLUSTER : niveau cluster

  • NODE_GROUP : niveau groupe de nœuds

  • NODE : niveau nœud

NodeNames

List

Non

Non

Les noms des nœuds.

Cette propriété prend effet lorsque NodeSelectType est défini sur Node.

Syntaxe SubscriptionConfig

"SubscriptionConfig": {
  "AutoRenewDurationUnit": String,
  "AutoRenew": Boolean,
  "PaymentDurationUnit": String,
  "PaymentDuration": Number,
  "AutoRenewDuration": Number
}

Propriétés SubscriptionConfig

Property

Type

Required

Editable

Description

Constraint

AutoRenewDurationUnit

String

No

No

L'unité de la durée de renouvellement automatique.

Définissez la valeur sur Month.

AutoRenew

Boolean

No

No

Indique si le renouvellement automatique est activé.

Valeurs valides :

  • true

  • false (par défaut)

PaymentDurationUnit

String

No

No

L'unité de la durée d'abonnement.

Définissez la valeur sur Month.

PaymentDuration

Number

No

No

La durée de l'abonnement.

Lorsque PaymentDurationUnit est défini sur Month, les valeurs valides sont : 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48 et 60.

AutoRenewDuration

Number

No

No

La durée du renouvellement automatique.

Cette propriété prend effet lorsque AutoRenew est défini sur true. Lorsque AutoRenewDurationUnit est défini sur Month, les valeurs valides sont : 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48 et 60.

Syntaxe NodeAttributes

"NodeAttributes": {
  "KeyPairName": String,
  "VpcId": String,
  "ZoneId": String,
  "SecurityGroupId": String,
  "RamRole": String,
  "MasterRootPassword": String
}

Propriétés NodeAttributes

Property

Type

Required

Editable

Description

Constraint

KeyPairName

String

No

No

La paire de clés SSH pour se connecter aux instances ECS.

Aucune.

VpcId

String

Yes

No

L'ID du réseau privé virtuel (VPC).

Aucune.

ZoneId

String

Yes

No

L'ID de la zone.

Aucune.

SecurityGroupId

String

Yes

No

L'ID du groupe de sécurité.

EMR prend uniquement en charge les groupes de sécurité basiques, et non les groupes de sécurité avancés.

RamRole

String

No

No

Le rôle Resource Access Management (RAM) associé à EMR pour accéder à d'autres ressources Alibaba Cloud depuis ECS.

Valeur par défaut : AliyunECSInstanceForEMRRole.

MasterRootPassword

String

No

No

Le mot de passe root du nœud maître.

Aucune.

Syntaxe Tags

"Tags": [
  {
    "Value": String,
    "Key": String
  }
]

Propriétés Tags

Property

Type

Required

Editable

Description

Constraint

Value

String

No

No

La valeur du tag.

Cette propriété est facultative et peut être une chaîne vide. La valeur du tag peut comporter jusqu'à 128 caractères et ne doit pas contenir http:// ni https://. Elle ne doit pas commencer par acs:.

Key

String

Yes

No

La clé du tag.

Cette propriété est obligatoire et ne peut pas être une chaîne vide. La clé du tag peut comporter jusqu'à 128 caractères et ne doit pas contenir http:// ni https://. Elle ne doit pas commencer par aliyun ni acs:.

Valeurs de retour

Fn::GetAtt

  • ClusterId : l'ID du cluster.

  • ApplicationLinks : les liens des applications dans le cluster.

Exemples

Format YAML

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  Applications:
    Type: Json
    Description: 'Application List. The value range of the number n of the number N group: 1 ~ 100.'
  ClusterType:
    Type: String
    Description: |-
      Cluster type.Ranges:
      Datalake: The new version of the data lake.
      OLAP: Data analysis.
      DataFlow: Real -time data stream.
      DataServing: Data service.
      Hadoop: The old version of the data lake (not recommended, it is recommended to use the new version of the data lake).
    AllowedValues:
      - DATAFLOW
      - DATALAKE
      - DATASERVING
      - HADOOP
      - OLAP
  NodeGroups:
    Type: Json
    Description: 'The node group configuration array. The value range of the number n of the number N group: 1 ~ 100.'
    MinLength: 1
    MaxLength: 100
  ReleaseVersion:
    Type: String
    Description: EMR release version.View EMR distribution versions can be viewed through the EMR cluster.
  NodeAttributes:
    Type: Json
    Description: Node attributes.All ECS nodes basic attributes of the cluster.
  ClusterName:
    Type: String
    Description: 'Cluster name.The length is 1 ~ 128 characters, and the alphabet or Chinese must be started. It cannot start with http:// and https: //.It can include Chinese, English, numbers, half-horn colons (:), down line (_), half-angle period (.) Or short lines (-)'
Resources:
  Cluster:
    Type: ALIYUN::EMR::Cluster2
    Properties:
      Applications:
        Ref: Applications
      ClusterType:
        Ref: ClusterType
      NodeGroups:
        Ref: NodeGroups
      ReleaseVersion:
        Ref: ReleaseVersion
      NodeAttributes:
        Ref: NodeAttributes
      ClusterName:
        Ref: ClusterName
Outputs:
  ClusterId:
    Description: Cluster ID.
    Value:
      Fn::GetAtt:
        - Cluster
        - ClusterId

Format JSON

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "Applications": {
      "Type": "Json",
      "Description": "Application List. The value range of the number n of the number N group: 1 ~ 100."
    },
    "ClusterType": {
      "Type": "String",
      "Description": "Cluster type.Ranges:\nDatalake: The new version of the data lake.\nOLAP: Data analysis.\nDataFlow: Real -time data stream.\nDataServing: Data service.\nHadoop: The old version of the data lake (not recommended, it is recommended to use the new version of the data lake).",
      "AllowedValues": [
        "DATAFLOW",
        "DATALAKE",
        "DATASERVING",
        "HADOOP",
        "OLAP"
      ]
    },
    "NodeGroups": {
      "Type": "Json",
      "Description": "The node group configuration array. The value range of the number n of the number N group: 1 ~ 100.",
      "MinLength": 1,
      "MaxLength": 100
    },
    "ReleaseVersion": {
      "Type": "String",
      "Description": "EMR release version.View EMR distribution versions can be viewed through the EMR cluster."
    },
    "NodeAttributes": {
      "Type": "Json",
      "Description": "Node attributes.All ECS nodes basic attributes of the cluster."
    },
    "ClusterName": {
      "Type": "String",
      "Description": "Cluster name.The length is 1 ~ 128 characters, and the alphabet or Chinese must be started. It cannot start with http:// and https: //.It can include Chinese, English, numbers, half-horn colons (:), down line (_), half-angle period (.) Or short lines (-)"
    }
  },
  "Resources": {
    "Cluster": {
      "Type": "ALIYUN::EMR::Cluster2",
      "Properties": {
        "Applications": {
          "Ref": "Applications"
        },
        "ClusterType": {
          "Ref": "ClusterType"
        },
        "NodeGroups": {
          "Ref": "NodeGroups"
        },
        "ReleaseVersion": {
          "Ref": "ReleaseVersion"
        },
        "NodeAttributes": {
          "Ref": "NodeAttributes"
        },
        "ClusterName": {
          "Ref": "ClusterName"
        }
      }
    }
  },
  "Outputs": {
    "ClusterId": {
      "Description": "Cluster ID.",
      "Value": {
        "Fn::GetAtt": [
          "Cluster",
          "ClusterId"
        ]
      }
    }
  }
}