O 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 Dataproc. 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. Essas imagens são atualizadas periodicamente para incluir novas melhorias e atributos de machine learning. O controle de versão do Dataproc permite selecionar conjuntos de versões de software ao criar 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 |
---|---|
debian12 | Debian 12 |
debian10 | Debian 10 |
debian11 | Debian 11 |
rocky8 | Rocky Linux 8 |
rocky9 | Rocky Linux 9 |
ubuntu18 | Ubuntu 18.04 LTS |
ubuntu20 | Ubuntu 20.04 LTS |
ubuntu22 | Ubuntu 22.04 LTS |
Consulte as versões de imagem antigas para distribuições do SO compatíveis anteriormente.
A prática recomendada é especificar a versão da imagem major.minor
para ambientes de produção ou quando a compatibilidade com versões específicas dos componentes
é importante. As distribuições subsecundárias e do SO são automaticamente definidas
para a versão semanal mais recente.
Como selecionar versões
Quando você cria um novo cluster do Dataproc,
Debian são usadas por padrão. Você pode selecionar uma
versão de imagem do Debian, Rocky Linux ou Ubuntu ao criar um cluster (consulte a
Lista de versões de imagem do Dataproc).
Ao especificar imagens baseadas no Debian, é possível omitir o sufixo do código de distribuição
do SO, por exemplo, especificando 2.0
para selecionar a imagem 2.0-debian10
.
O sufixo do SO precisa ser usado para selecionar uma imagem baseada no Rocky Linux ou
no Ubuntu, por exemplo, especificando 2.0-ubuntu18
.
Comando gcloud
Ao usar o comando gcloud dataproc clusters create
, é possível
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 cluster-name \ --image-version=2.0 \ --region=region
Exemplo de imagem do Ubuntu:
gcloud dataproc clusters create cluster-name \ --image-version=2.0-ubuntu18 \ --region=region
A prática recomendada é 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, "2.0.20".
É possível verificar sua versão atual com a Google Cloud CLI.
gcloud dataproc clusters describe cluster-name \ --region=region
API REST
Você pode especificar o campo SoftwareConfig
imageVersion
como parte de uma
solicitação de API
cluster.create.
Exemplo
POST /v1/projects/project-id/regions/us-central1/clusters/ { "projectId": "project-id", "clusterName": "example-cluster", "config": { "configBucket": "", "gceClusterConfig": { "subnetworkUri": "default", "zoneUri": "us-central1-b" }, "masterConfig": { ... } }, "workerConfig": { ... } }, "softwareConfig": { "imageVersion": "2.0" } } }
Console
Abra a página Criar um cluster do Dataproc. O painel "Configurar cluster" está selecionado. O campo "Tipo e versão da imagem" na seção "Controle de versão" mostra a imagem que será usada ao criar o cluster. A data de lançamento da imagem também é exibida. Inicialmente, a imagem padrão, a versão mais recente disponível do Debian, é mostrada como selecionada. Clique em ALTERAR para exibir uma lista de imagens disponíveis. É possível selecionar uma imagem personalizada ou padrão para usar no cluster.
Quando novas versões são criadas
Novas versões principais são criadas periodicamente para incorporar um ou mais dos seguintes:
- Versões principais de:
- Spark, Hadoop e outros componentes de Big Data
- conectores do Google Cloud.
- Principais alterações ou atualizações na funcionalidade do Dataproc
Novas versões de pré-lançamento (com um sufixo -RC
) são lançadas antes do lançamento
de uma nova versão principal:
- As imagens de pré-visualização não são destinadas ao uso em cargas de trabalho de produção.
- As versões de componentes de imagem de pré-lançamento podem ser atualizadas para a versão mais recente do componente disponível na versão de imagem de GA pós-pré-lançamento.
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 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 são criadas periodicamente para incorporar um ou mais dos seguintes elementos:
- Patches ou correções de um componente na imagem
- Atualizações de versão subsecundária do componente
Suporte a versão de imagem e Dataproc
As versões secundárias da imagem são compatíveis por 24 meses após o lançamento inicial (disponibilidade geral). Durante esse período, os clusters que usam estão qualificadas para suporte. Para receber correções, recrie seu cluster usando a versão de imagem subsecundária mais recente suportada). Depois que a janela de suporte é fechada, os clusters que usam a versão da imagem não são mais compatíveis.
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 patch (fim do suporte) |
---|---|---|
debian9 | Debian 9 | 10 de julho de 2020 |
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
As versões de imagem lançadas como Alfa ou dos lançamentos Beta anteriores à
versão geral do 1.0
do Dataproc
não estão sujeitas à
política de suporte do Dataproc.
Notas importantes sobre o controle de versões
- As versões de imagem contêm os seguintes componentes:
- Componentes principais que são instalado em todos os clusters, como Spark, Hadoop e Hive
- Componentes opcionais especificados ao criar um cluster
- Seus clusters do Dataproc não são atualizados automaticamente quando novas
versões de imagem são lançadas.
- Recomendações:
- Execute clusters com a versão de imagem subsecundária mais recente.
Os metadados da imagem incluem um rótulo
previous-subminor
, que é definido comotrue
se o cluster não estiver usando a versão de imagem submenor mais recente.- Para conferir os metadados da imagem:
- Execute o comando
gcloud compute images list --filter
a seguir para listar o nome do recurso de uma imagem do Dataproc.gcloud compute images list --project=PROJECT_NAME --filter="labels.goog-dataproc-version ~ ^IMAGE_VERSION (such as
2.2.16-debian12
)" - Execute o seguinte
gcloud compute images describe
para visualizar os metadados das imagens.gcloud compute images describe --project=PROJECT_NAME IMAGE_NAME"
- Execute o comando
- Para conferir os metadados da imagem:
- Teste e valide se seus aplicativos são executados com êxito nos clusters criados com novas versões de imagem, especialmente ao usar novas versões de versão principal da imagem.