全部产品
Search
文档中心

Resource Orchestration Service:ALIYUN::EMR::Cluster

更新时间:Jun 26, 2025

ALIYUN::EMR::Cluster digunakan untuk membuat klaster E-MapReduce (EMR).

Catatan

ALIYUN::EMR::Cluster mendukung API EMR versi sebelumnya dan tersedia untuk klaster tipe HADOOP, KAFKA, DRUID, ZOOKEEPER, DATA_SCIENCE, dan GATEWAY. ALIYUN::EMR::Cluster2 mendukung API EMR versi baru (2021-03-20) dan tersedia untuk klaster tipe DATALAKE, OLAP, DATAFLOW, dan DATASERVING. Kami merekomendasikan Anda menggunakan ALIYUN::EMR::Cluster2 untuk membuat klaster dari tipe-tipe ini.

Sintaksis

{
  "Type": "ALIYUN::EMR::Cluster",
  "Properties": {
    "SshEnable": Boolean,
    "EasEnable": Boolean,
    "WhiteListType": String,
    "InitCustomHiveMetaDB": Boolean,
    "IoOptimized": Boolean,
    "HostGroup": List,
    "Config": List,
    "KeyPairName": String,
    "VpcId": String,
    "AutoRenew": Boolean,
    "RelatedClusterId": String,
    "BootstrapAction": List,
    "InstanceGeneration": String,
    "DepositType": String,
    "VSwitchId": String,
    "NetType": String,
    "UserDefinedEmrEcsRole": String,
    "Name": String,
    "ClusterType": String,
    "ZoneId": String,
    "IsOpenPublicIp": Boolean,
    "OptionSoftWareList": List,
    "Configurations": String,
    "MasterPwd": String,
    "MachineType": String,
    "EmrVer": String,
    "SecurityGroupName": String,
    "MetaStoreConf": String,
    "SecurityGroupId": String,
    "LogPath": String,
    "Period": Integer,
    "HighAvailabilityEnable": Boolean,
    "UseCustomHiveMetaDB": Boolean,
    "UserInfo": List,
    "ChargeType": String,
    "MetaStoreType": String,
    "AuthorizeContent": String,
    "UseLocalMetaDb": Boolean,
    "ClickHouseConf": Map,
    "ResourceGroupId": String,
    "Tags": List
  }
}

Properti

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

SshEnable

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan SSH.

Nilai yang valid:

  • true

  • false

EasEnable

Boolean

Tidak

Tidak

Menentukan apakah klaster merupakan klaster dengan keamanan tinggi.

Nilai yang valid:

  • true

  • false

WhiteListType

String

Tidak

Tidak

Jenis daftar putih.

Nilai yang valid:

  • IP: alamat IP

  • SecurityGroup: grup keamanan

InitCustomHiveMetaDB

Boolean

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

IoOptimized

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan optimasi I/O.

Nilai yang valid:

  • true (default)

  • false

HostGroup

List

Ya

Tidak

Grup node dalam klaster.

Untuk informasi lebih lanjut, lihat properti HostGroup.

Config

List

Tidak

Tidak

Rincian item konfigurasi kustom.

Untuk informasi lebih lanjut, lihat properti Config.

KeyPairName

String

Tidak

Tidak

Nama pasangan kunci.

Tidak ada.

VpcId

String

Tidak

Tidak

ID dari virtual private cloud (VPC).

Tidak ada.

AutoRenew

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan perpanjangan otomatis untuk klaster langganan.

Nilai yang valid:

  • true

  • false

RelatedClusterId

String

Tidak

Tidak

ID klaster EMR yang terkait dengan klaster gateway.

Properti ini berlaku ketika ClusterType diatur ke GATEWAY.

BootstrapAction

List

Tidak

Tidak

Rincian tindakan bootstrap yang ingin Anda konfigurasikan untuk klaster.

Untuk informasi lebih lanjut, lihat properti BootstrapAction.

InstanceGeneration

String

Tidak

Tidak

Keluarga instance Elastic Compute Service (ECS).

Tidak ada.

VSwitchId

String

Tidak

Tidak

ID vSwitch.

Tidak ada.

NetType

String

Ya

Tidak

Jenis jaringan.

Atur nilainya ke VPC.

UserDefinedEmrEcsRole

String

Tidak

Tidak

Peran aplikasi ECS yang memungkinkan akses internal dari ECS ke layanan Alibaba Cloud lainnya, seperti Object Storage Service (OSS).

Tidak ada.

Name

String

Ya

Ya

Nama klaster.

Nama harus memiliki panjang 1 hingga 64 karakter, dan dapat berisi huruf, angka, tanda hubung (-), dan garis bawah (_).

ClusterType

String

Ya

Tidak

Jenis klaster.

Nilai yang valid:

  • HADOOP

  • KAFKA

  • DRUID

  • ZOOKEEPER

  • DATA_SCIENCE

  • GATEWAY

ZoneId

String

Ya

Tidak

ID zona.

Tidak ada.

IsOpenPublicIp

Boolean

Tidak

Tidak

Menentukan apakah akan menggunakan alamat IP publik.

Nilai yang valid:

  • true: menggunakan alamat IP publik. Jika Anda menggunakan alamat IP publik, bandwidth default adalah 8 Mbit/s.

  • false: tidak menggunakan alamat IP publik.

OptionSoftWareList

List

Tidak

Tidak

Daftar perangkat lunak yang tersedia.

Tidak ada.

Configurations

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

MasterPwd

String

Tidak

Tidak

Password SSH yang digunakan untuk mengakses node master.

Password harus memiliki panjang 8 hingga 30 karakter. Password harus berisi setidaknya tiga dari jenis karakter berikut: huruf besar, huruf kecil, angka, dan karakter khusus.

MachineType

String

Tidak

Tidak

Jenis node.

Tidak ada.

EmrVer

String

Ya

Tidak

Versi EMR.

Tidak ada.

SecurityGroupName

String

Tidak

Tidak

Nama grup keamanan.

Jika Anda tidak menentukan SecurityGroupId, sistem akan membuat grup keamanan baru berdasarkan nilai SecurityGroupName.

Setelah klaster dibuat, Anda dapat memeriksa ID grup keamanan pada halaman detail klaster. Kebijakan grup keamanan default diterapkan pada grup keamanan. Kebijakan default hanya mengizinkan lalu lintas masuk pada port 22 dan lalu lintas keluar pada semua port.

DepositType

String

Tidak

Tidak

Jenis hosting klaster.

Tidak ada.

SecurityGroupId

String

Tidak

Tidak

ID grup keamanan.

Jika Anda ingin menggunakan grup keamanan yang sudah ada, kebijakan grup keamanan default diterapkan pada grup keamanan. Kebijakan default hanya mengizinkan lalu lintas masuk pada port 22 dan lalu lintas keluar pada semua port.

LogPath

String

Tidak

Tidak

Jalur OSS tempat Anda ingin menyimpan log EMR.

Tidak ada.

Period

Integer

Tidak

Tidak

Durasi langganan klaster.

Properti ini harus ditentukan ketika ChargeType diatur ke PrePaid.

Nilai yang valid: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, dan 36.

Satuan: bulan.

HighAvailabilityEnable

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan ketersediaan tinggi untuk klaster.

Nilai yang valid:

  • true: mengaktifkan ketersediaan tinggi. Jika Anda ingin mengaktifkan ketersediaan tinggi untuk klaster, pastikan bahwa klaster tersebut berisi setidaknya dua node master.

  • false: menonaktifkan ketersediaan tinggi.

UseCustomHiveMetaDB

Boolean

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

UserInfo

List

Tidak

Tidak

Informasi akun Knox.

Untuk informasi lebih lanjut, lihat properti UserInfo.

ChargeType

String

Ya

Tidak

Metode penagihan klaster.

Nilai yang valid:

  • PostPaid

  • PrePaid

AuthorizeContent

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

UseLocalMetaDb

Boolean

Ya

Tidak

Menentukan apakah akan menggunakan database MySQL bawaan klaster sebagai metadatabase Hive.

Nilai yang valid:

  • true

  • false

MetaStoreConf

String

Tidak

Tidak

Konfigurasi metadata.

Properti ini harus ditentukan ketika MetaStoreType diatur ke user_rds.

Tentukan MetaStoreConf dalam format berikut: {"dbUrl":"jdbc:mysql://xxxxxx", "dbUserName":"username", "dbPassword":"password"}.

MetaStoreType

String

Tidak

Tidak

Jenis metadata.

Nilai yang valid:

  • local: database MySQL bawaan klaster

  • dlf: layanan metadata Data Lake Formation (DLF)

  • user_rds: layanan ApsaraDB RDS yang dikelola sendiri

ClickHouseConf

Map

Tidak

Tidak

Konfigurasi klaster ApsaraDB for ClickHouse.

Tidak ada.

ResourceGroupId

String

Tidak

Ya

ID grup sumber daya.

Tidak ada.

Tags

List

Tidak

Ya

Tag yang ingin Anda tambahkan ke klaster.

Untuk informasi lebih lanjut, lihat properti Tags.

Sintaksis Tags

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

Properti Tags

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Key

String

Ya

Tidak

Kunci tag.

Kunci tag harus memiliki panjang 1 hingga 128 karakter,

dan tidak boleh mengandung http:// atau https://. Kunci tag tidak boleh dimulai dengan aliyun atau acs:.

Value

String

Tidak

Tidak

Nilai tag.

Nilai tag dapat memiliki panjang hingga 128 karakter,

dan tidak boleh mengandung http:// atau https://. Nilai tag tidak boleh dimulai dengan aliyun atau acs:.

Sintaksis HostGroup

"HostGroup": [
  {
    "Comment": String,
    "SysDiskType": String,
    "DiskCapacity": Integer,
    "NodeCount": Integer,
    "ClusterId": String,
    "DiskCount": Integer,
    "CreateType": String,
    "DiskType": String,
    "AutoRenew": Boolean,
    "HostGroupType": String,
    "SysDiskCapacity": Integer,
    "VSwitchId": String,
    "ChargeType": String,
    "Period": Integer,
    "HostKeyPairName": String,
    "HostPassword": String,
    "HostGroupId": String,
    "InstanceType": String,
    "GpuDriver": String,
    "HostGroupName": String
  }
]

Properti HostGroup

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Comment

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

SysDiskType

String

Ya

Tidak

Kategori disk sistem grup node.

Nilai yang valid:

  • CLOUD_EFFICIENCY: ultra disk

  • CLOUD_SSD: SSD standar

  • CLOUD: disk dasar

DiskCapacity

Integer

Ya

Tidak

Kapasitas disk data grup node.

Satuan: GB.

NodeCount

Integer

Ya

Tidak

Jumlah node dalam grup node.

Tidak ada.

ClusterId

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

DiskCount

Integer

Ya

Tidak

Jumlah disk data yang ingin Anda pasang pada grup node.

Tidak ada.

CreateType

String

Tidak

Tidak

Mode berdasarkan mana grup node dibuat.

Nilai yang valid:

  • ON-DEMAND: pembuatan sesuai permintaan

  • MANUAL: pembuatan manual

DiskType

String

Ya

Tidak

Kategori disk data grup node.

Nilai yang valid:

  • CLOUD_EFFICIENCY: ultra disk.

  • CLOUD_SSD: SSD standar.

  • LOCAL_DISK: disk lokal. Jika Anda menggunakan instance ECS, atur DiskType ke LOCAL_DISK.

  • CLOUD: disk dasar.

AutoRenew

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan perpanjangan otomatis untuk klaster langganan.

Nilai yang valid:

  • true

  • false

HostGroupType

String

Ya

Tidak

Jenis grup node.

Nilai yang valid:

  • MASTER: grup node master

  • CORE: grup node inti

  • TASK: grup node tugas

SysDiskCapacity

Integer

Ya

Tidak

Kapasitas disk sistem grup node.

Satuan: GB.

VSwitchId

String

Tidak

Tidak

ID vSwitch.

Tidak ada.

ChargeType

String

Ya

Tidak

Metode penagihan.

Nilai yang valid:

  • PostPaid

  • PrePaid

Period

Integer

Tidak

Tidak

Durasi langganan.

Properti ini harus ditentukan ketika ChargeType diatur ke PrePaid.

Nilai yang valid: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, dan 36.

Satuan: bulan.

HostKeyPairName

String

Tidak

Tidak

Nama pasangan kunci yang digunakan untuk mengakses grup node.

Properti ini berlaku ketika ClusterType diatur ke GATEWAY.

HostPassword

String

Tidak

Tidak

Password yang digunakan untuk mengakses node.

Properti ini berlaku ketika ClusterType diatur ke GATEWAY.

HostGroupId

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

InstanceType

String

Ya

Tidak

Tipe instance.

Tidak ada.

GpuDriver

String

Tidak

Tidak

Driver GPU.

Tidak ada.

HostGroupName

String

Tidak

Tidak

Nama grup node.

Tidak ada.

Sintaksis Config

"Config": [
  {
    "Encrypt": String,
    "ConfigKey": String,
    "FileName": String,
    "ServiceName": String,
    "Replace": String,
    "ConfigValue": String
  }
]

Properti Config

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Encrypt

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

ConfigKey

String

Tidak

Tidak

Nama item konfigurasi kustom.

Tidak ada.

FileName

String

Tidak

Tidak

Nama file yang berisi item konfigurasi kustom.

Tidak ada.

ServiceName

String

Tidak

Tidak

Nama layanan tempat item konfigurasi kustom milik.

Tidak ada.

Replace

String

Tidak

Tidak

Properti cadangan. Anda tidak perlu menentukan properti ini.

Tidak ada.

ConfigValue

String

Tidak

Tidak

Nilai item konfigurasi kustom.

Tidak ada.

Sintaksis BootstrapAction

"BootstrapAction": [
  {
    "Path": String,
    "Name": String,
    "Arg": String
  }
]

Properti BootstrapAction

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Path

String

Tidak

Tidak

Jalur OSS tempat Anda ingin menyimpan skrip tindakan bootstrap.

Tidak ada.

Name

String

Tidak

Tidak

Nama tindakan bootstrap.

Tidak ada.

Arg

String

Tidak

Tidak

Parameter tindakan bootstrap.

Tidak ada.

Sintaksis UserInfo

"UserInfo": [
  {
    "UserName": String,
    "Password": String,
    "UserId": String
  }
]

Properti UserInfo

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

UserName

String

Tidak

Tidak

Nama pengguna akun Knox.

Tidak ada.

Password

String

Tidak

Tidak

Password akun Knox.

Tidak ada.

UserId

String

Tidak

Tidak

ID pengguna RAM akun Knox.

Tidak ada.

Nilai Kembali

Fn::GetAtt

  • ClusterId: ID klaster.

  • HostGroups: Grup node dalam klaster.

  • MasterNodePubIps: Alamat IP publik node master dalam klaster.

  • MasterNodeInnerIps: Alamat IP pribadi node master dalam klaster.

  • Arn: Nama Sumber Daya Alibaba Cloud (ARN).

Contoh

ROSTemplateFormatVersion: '2015-09-01'
Description: Test EMR Cluster
Parameters:
  VpcId:
    AssociationProperty: ALIYUN::ECS::VPC::VPCId
    Type: String
    Label:
      en: Existing VPC Instance ID
  ZoneId:
    AssociationProperty: ALIYUN::ECS::ZoneId
    Type: String
    Label:
      en: VSwitch Zone ID
  VSwitchId:
    AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
      ZoneId: ${ZoneId}
    Type: String
    Label:
      en: VSwitch ID
  SecurityGroupId:
    AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
    Type: String
    Description:
      Label:
        en: Business Security Group ID
    ClusterDiskType:
      Type: String
      Default: CLOUD_SSD
Resources:
  EmrCluster:
    Type: ALIYUN::EMR::Cluster
    Properties:
      UseLocalMetaDb: false
      IoOptimized: true
      ZoneId:
        Ref: ZoneId
      VSwitchId:
        Ref: VSwitchId
      SecurityGroupId:
        Ref: SecurityGroupId
      HostGroup:
        - DiskType: CLOUD_SSD
          HostGroupType: MASTER
          DiskCount: 1
          DiskCapacity: 80
          NodeCount: 1
          SysDiskType: CLOUD_SSD
          ChargeType: PostPaid
          VSwitchId:
            Ref: VSwitchId
          AutoRenew: false
          Period: 1
          SysDiskCapacity: 120
          InstanceType: ecs.g5.xlarge
        - DiskType: CLOUD_SSD
          HostGroupType: CORE
          DiskCount: 4
          DiskCapacity: 80
          NodeCount: 2
          SysDiskType: CLOUD_SSD
          ChargeType: PostPaid
          VSwitchId:
            Ref: VSwitchId
          AutoRenew: false
          Period: 1
          SysDiskCapacity: 120
          InstanceType: ecs.g5.xlarge
      EmrVer: EMR-3.22.4
      ClusterType: HADOOP
      Name:
        Fn::Join:
          - '-'
          - - StackId
            - Ref: ALIYUN::StackId
      MasterPwd: Admin123!
      VpcId:
        Ref: VpcId
      ChargeType: PostPaid
      NetType: vpc
Outputs:
  ClusterId:
    Description: The ID of the cluster.
    Value:
      Fn::GetAtt:
        - EmrCluster
        - ClusterId
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Description": "Test EMR Cluster",
  "Parameters": {
    "VpcId": {
      "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
      "Type": "String",
      "Label": {
        "en": "Existing VPC Instance ID"
      }
    },
    "ZoneId": {
      "AssociationProperty": "ALIYUN::ECS::ZoneId",
      "Type": "String",
      "Label": {
        "en": "VSwitch Zone ID"
      }
    },
    "VSwitchId": {
      "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
      "AssociationPropertyMetadata": {
        "VpcId": "${VpcId}",
        "ZoneId": "${ZoneId}"
      },
      "Type": "String",
      "Label": {
        "en": "VSwitch ID"
      }
    },
    "SecurityGroupId": {
      "AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
      "AssociationPropertyMetadata": {
        "VpcId": "${VpcId}"
      },
      "Type": "String",
      "Description": {
        "Label": {
          "en": "Business Security Group ID"
        }
      },
      "ClusterDiskType": {
        "Type": "String",
        "Default": "CLOUD_SSD"
      }
    }
  },
  "Resources": {
    "EmrCluster": {
      "Type": "ALIYUN::EMR::Cluster",
      "Properties": {
        "UseLocalMetaDb": false,
        "IoOptimized": true,
        "ZoneId": {
          "Ref": "ZoneId"
        },
        "VSwitchId": {
          "Ref": "VSwitchId"
        },
        "SecurityGroupId": {
          "Ref": "SecurityGroupId"
        },
        "HostGroup": [
          {
            "DiskType": "CLOUD_SSD",
            "HostGroupType": "MASTER",
            "DiskCount": 1,
            "DiskCapacity": 80,
            "NodeCount": 1,
            "SysDiskType": "CLOUD_SSD",
            "ChargeType": "PostPaid",
            "VSwitchId": {
              "Ref": "VSwitchId"
            },
            "AutoRenew": false,
            "Period": 1,
            "SysDiskCapacity": 120,
            "InstanceType": "ecs.g5.xlarge"
          },
          {
            "DiskType": "CLOUD_SSD",
            "HostGroupType": "CORE",
            "DiskCount": 4,
            "DiskCapacity": 80,
            "NodeCount": 2,
            "SysDiskType": "CLOUD_SSD",
            "ChargeType": "PostPaid",
            "VSwitchId": {
              "Ref": "VSwitchId"
            },
            "AutoRenew": false,
            "Period": 1,
            "SysDiskCapacity": 120,
            "InstanceType": "ecs.g5.xlarge"
          }
        ],
        "EmrVer": "EMR-3.22.4",
        "ClusterType": "HADOOP",
        "Name": {
          "Fn::Join": [
            "-",
            [
              "StackId",
              {
                "Ref": "ALIYUN::StackId"
              }
            ]
          ]
        },
        "MasterPwd": "Admin123!",
        "VpcId": {
          "Ref": "VpcId"
        },
        "ChargeType": "PostPaid",
        "NetType": "vpc"
      }
    }
  },
  "Outputs": {
    "ClusterId": {
      "Description": "The ID of the cluster.",
      "Value": {
        "Fn::GetAtt": [
          "EmrCluster",
          "ClusterId"
        ]
      }
    }
  }
}