Controle de versão do Cloud Dataproc

O Cloud Dataproc usa imagens para agrupar conectores úteis do Google Cloud Platform com componentes Apache Spark e Apache Hadoop em um mesmo pacote que pode ser implantado em um cluster do programa. Essas imagens contêm o sistema operacional básico (Debian ou Ubuntu) para o cluster, além dos componentes principais e opcionais necessários para executar jobs, como Spark, Hadoop e Hive. Elas são atualizadas periodicamente para incluir novos aprimoramentos e recursos. Com o controle de versão do Cloud Dataproc, é possível selecionar conjuntos de versões do software durante a criação de clusters.

Como funciona o controle de versão

Ao ser criada, uma imagem recebe um número de versão com este formato:

version_major.version_minor.version_sub_minor-os_distribution

As seguintes distribuições do SO foram mantidas:

Código de distribuição do SO Distribuição do SO
debian9 Debian 9
ubuntu18 Ubuntu 18

Consulte as versões de imagem antigas para distribuições do SO compatíveis anteriormente.

É recomendável especificar a versão major.minor da imagem em ambientes de produção ou quando é importante considerar a compatibilidade com versões específicas dos componentes. As distribuições subsecundárias e do OS serão automaticamente definidas para a última versão semanal.

Como selecionar versões

Quando você cria um novo cluster do Cloud Dataproc, a versão da imagem do Debian mais recente disponível será usada por padrão. Você pode selecionar uma versão de imagem do Debian ou do Ubuntu ao criar um cluster (consulte a Lista de versões de imagem do Cloud Dataproc). Ao especificar imagens baseadas no Debian, é possível omitir o sufixo do Código de distribuição do SO, por exemplo, especificando "1.3" para selecionar a imagem 1.3-debian9 . O sufixo do sistema operacional deve ser usado para selecionar uma imagem baseada no Ubuntu, por exemplo, especificando "1.4-ubuntu18".

Comando gcloud

Ao usar o gcloud dataproc clusters create, você pode usar o argumento --image-version para especificar uma versão da imagem para o novo cluster.

Exemplo de imagem do Debian:

gcloud dataproc clusters create new-cluster-name --image-version 1.4

Exemplo de imagem do Ubuntu:

gcloud dataproc clusters create new-cluster-name --image-version 1.3-ubuntu18

É recomendável omitir a versão subsecundária para que a versão subsecundária mais recente seja usada. No entanto, se for necessário, a versão subsecundária pode ser especificada, por exemplo, "1.2.67".

É possível verificar sua versão atual com a ferramenta de linha de comando gcloud.

gcloud dataproc clusters describe cluster-name

API REST

É possível especificar o campo SoftwareConfig imageVersion como parte de uma solicitação da API cluster.create.

Exemplo

POST /v1/projects/project-id/regions/global/clusters/
{
  "projectId": "project-id",
  "clusterName": "example-cluster",
  "config": {
    "configBucket": "",
    "gceClusterConfig": {
      "subnetworkUri": "default",
      "zoneUri": "us-central1-b"
    },
    "masterConfig": {
      ...
      }
    },
    "workerConfig": {
      ...
      }
    },
    "softwareConfig": {
      "imageVersion": "1.3"
    }
  }
}
  

Console

Ao criar um novo cluster, clique em Opções avançadas na parte inferior do formulário Criar um cluster do Cloud Dataproc.

O campo Imagem mostra a imagem usada para criar um cluster. Inicialmente, ele mostrará o padrão (a versão Debian mais recente disponível).

Clique em Alterar para exibir uma lista de imagens disponíveis para o cluster. É possível selecionar uma imagem padrão ou personalizada.

Quando novas versões são criadas

Novas versões principais são criadas para incluir um ou mais dos seguintes elementos:

  • Versões principais de:
    • Spark, Hadoop e outros componentes de Big Data;
    • conectores do Google Cloud.
  • Principais alterações ou atualizações na funcionaldiade do Cloud Dataproc

Novas versões secundárias são criadas periodicamente para incorporar um ou mais dos seguintes elementos:

  • Versões e atualizações secundárias de:
    • Spark, Hadoop e outros componentes de Big Data;
    • conectores do Google Cloud.
  • Atualizações ou alterações não importantes da funcionalidade do Cloud Dataproc

Quando uma nova versão secundária é criada, sua imagem Debian passa a ser o padrão para a versão principal e representa a versão mais recente da versão principal.

Novas versões subsecundárias serão criadas periodicamente para incorporar alguns destes itens:

  • Patches ou correções de um componente na imagem

Suporte a versão de imagem e Cloud Dataproc

Tanto as versões principais quanto as secundárias são compatíveis por um período específico depois de lançadas. Durante esse tempo, os clusters que usam as versões de imagem são compatíveis. Depois que a janela de suporte é fechada, os clusters que usam a versão da imagem não são mais compatíveis.

Meses depois da liberação da versão da imagem É possível criar clusters com essa versão de imagem? Os clusters que usam essa versão de imagem são compatíveis?
0 a 12 Sim Sim
12-24 Sim Não
24+ Não Não

Versões subsecundárias não têm suporte nem vida útil garantida.

Versões de imagem antigas

Distribuições do SO suportadas compatíveis anteriormente

As seguintes distribuições do SO eram compatíveis anteriormente:

Código de distribuição do SO Distribuição do SO Último lançamento
deb8 Debian 8 26 de outubro de 2018

Versões de imagem sem distribuição explícita do SO

Antes de 16 de agosto de 2018, todas as versões de imagem eram construídas com o Debian 8 e omitiam o Código de distribuição do SO. Elas são especificadas no seguinte formato:

version_major.version_minor.version_sub_minor

0.1 e 0.2

A disponibilidade geral das versões de imagem lançadas como Alfa ou dos lançamentos Beta feitos antes da versão 1.0 do Cloud Dataproc não está sujeita à política de suporte do Cloud Dataproc.

Notas importantes sobre o controle de versões