Todos os produtos
Search
Central de documentação

E-MapReduce:Primeiros passos com o EMR on ACK

Última atualização: Oct 15, 2026

Este tópico explica como fazer logon no console do E-MapReduce (EMR) com sua conta Alibaba Cloud, criar um cluster EMR on ACK e executar um job.

Observações

  • Você é responsável por gerenciar e configurar o ambiente de execução do seu código.

  • Nos exemplos deste tópico, o arquivo JAR vem empacotado diretamente na imagem. Caso utilize seu próprio arquivo JAR, envie-o para o Object Storage Service (OSS). Para obter mais informações, consulte Simple upload.

    Substitua local:///opt/spark/examples/spark-examples.jar no comando pelo caminho do OSS referente ao seu arquivo JAR. O formato do caminho é oss://<yourBucketName>/<path>.jar.

Pré-requisitos

Antes de criar um cluster EMR on ACK, execute as etapas a seguir no console do Container Service for Kubernetes (ACK):

  1. Crie um cluster Kubernetes. Para obter mais informações, consulte Create an ACK dedicated cluster (new instances no longer available) ou Create an ACK managed cluster.

  2. Anexe as políticas AliyunOSSFullAccess e AliyunDLFFullAccess. Para obter mais informações, consulte Grant OSS and DLF policies.

Nota

Para armazenar arquivos JAR no Object Storage Service (OSS), ative primeiro o OSS. Para obter mais informações, consulte Activate OSS.

Etapa 1: Conceder permissões de função

Antes de usar o EMR on ACK, conceda a função padrão do sistema AliyunEMROnACKDefaultRole à sua conta Alibaba Cloud no console do EMR on ACK. Para obter mais informações, consulte Grant role permissions to an Alibaba Cloud account.

Etapa 2: Criar um cluster

Crie um cluster Spark no Kubernetes. Para obter mais informações sobre a criação de clusters, consulte Create a cluster.

  1. Faça logon no console do EMR on ACK.

  2. Na página EMR on ACK, clique em Create Cluster.

  3. Na página E-MapReduce on ACK, configure os parâmetros do cluster.

    Parâmetro

    Exemplo

    Descrição

    Region

    China (Hangzhou)

    Região de implantação do cluster. Não é possível alterar a região após a criação.

    Cluster Type

    Spark

    Motor distribuído de processamento de big data de uso geral que oferece recursos como ETL, processamento em lote offline e modelagem de dados.

    Importante

    Ao associar um cluster Spark recém-criado a um cluster Shuffle Service, a versão principal do product deve corresponder à do cluster Shuffle Service. Por exemplo, um cluster Spark EMR-5.x-ack só pode se associar a um cluster Shuffle Service EMR-5.x-ack.

    Product Version

    EMR-5.6.0-ack

    Versão de software mais recente usada por padrão.

    Component Version

    SPARK (3.2.1)

    Componentes e respectivas versões disponíveis para o tipo de cluster selecionado.

    ACK cluster

    Emr-ack

    Selecione um cluster ACK existente ou crie um novo no console do ACK.

    Importante

    Um cluster ACK não pode se associar a vários clusters EMR on ACK do mesmo tipo.

    Clique em Configure Dedicated Nodes para configurar nós dedicados ao EMR. Essa ação adiciona taints e rótulos específicos do EMR a um pool de nós ou a nós específicos.

    Nota

    Recomendamos configurar nós dedicados por meio de um pool de nós. Caso não exista nenhum, crie um. Para obter mais informações, consulte Create a node pool e Node pools.

    OSS bucket

    oss-spark-test

    Selecione um bucket existente ou crie um no console do Object Storage Service (OSS).

    Cluster Name

    Emr-Spark

    Nome do cluster. Deve ter entre 1 e 64 caracteres e pode conter caracteres chineses, letras, dígitos, hifens (-) e sublinhados (_).

  4. Clique em create.

    A criação do cluster termina quando o status muda para Running.

Etapa 3: Enviar um job

Esta seção demonstra como enviar um job Spark usando uma Custom Resource Definition (CRD). Para saber mais sobre o Spark, consulte a documentação de código source Quick Start e selecione a linguagem e a versão adequadas.

Para obter mais informações sobre o envio de jobs, consulte os seguintes tópicos:

  1. Conecte-se a um cluster do Alibaba Cloud Container Service for Kubernetes (ACK) usando kubectl. Para obter mais informações, consulte Connect to an ACK cluster using kubectl.

  2. Crie um arquivo de job chamado spark-pi.yaml. O código a seguir mostra o conteúdo do arquivo:

    apiVersion: "sparkoperator.k8s.io/v1beta2"
    kind: SparkApplication
    metadata:
      name: spark-pi-simple
    spec:
      type: Scala
      sparkVersion: 3.2.1
      mainClass: org.apache.spark.examples.SparkPi
      mainApplicationFile: "local:///opt/spark/examples/spark-examples.jar"
      arguments:
        - "1000"
      driver:
        cores: 1
        coreLimit: 1000m
        memory: 4g
      executor:
        cores: 1
        coreLimit: 1000m
        memory: 8g
        memoryOverhead: 1g
        instances: 1

    Para obter informações sobre os campos no código, consulte spark-on-k8s-operator.

    Nota
    • É possível especificar um nome de arquivo personalizado. Neste exemplo, usa-se spark-pi.yaml.

    • Este exemplo utiliza o Spark 3.2.1 para o EMR V5.6.0. Se você usar outra versão do Spark, configure o parâmetro sparkVersion conforme suas necessidades de negócio.

  3. Execute o comando a seguir para enviar um job:

    kubectl apply -f spark-pi.yaml --namespace <Namespace in which the cluster resides>

    Substitua &lt;Namespace in which the cluster resides&gt; pelo namespace adequado às suas necessidades de negócio. Para visualizar o namespace, faça logon no console do EMR e acesse a aba Cluster Details.

    O sistema retorna as seguintes informações:

    sparkapplication.sparkoperator.k8s.io/spark-pi-simple created
    Nota

    spark-pi-simple é o nome do job Spark enviado.

  4. Opcional. Visualize as informações sobre o job Spark enviado na aba Job Details.

(Opcional) Etapa 4: Liberar o cluster

Se o cluster não for mais necessário, libere-o para reduzir custos.

  1. Na página EMR on ACK, localize o cluster e clique em Release na coluna Actions.

  2. Na caixa de diálogo Release Cluster, clique em OK.

Documentos relacionados