Configuração da escalabilidade automática vertical para o Amazon EMR no EKS - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configuração da escalabilidade automática vertical para o Amazon EMR no EKS

Este tópico ajuda você a preparar o cluster do Amazon EKS para enviar trabalhos do Spark no Amazon EMR com a escalabilidade automática vertical. O processo de configuração requer que você confirme ou conclua as tarefas apresentadas nas seguintes seções:

Pré-requisitos

Conclua as tarefas apresentadas a seguir antes de instalar o operador do Kubernetes para escalabilidade automática vertical em seu cluster. Se você já completou algum dos pré-requisitos, pode ignorá-los e passar para os próximos.

  • Instale ou atualize para a versão mais recente do AWS CLI — Se você já instalou o AWS CLI, confirme se você tem a versão mais recente.

  • Instale o kubectl: o kubectl é uma ferramenta de linha de comando que você usa para se comunicar com o servidor de API do Kubernetes. Você precisa do kubectl para instalar e monitorar artefatos relacionados à escalabilidade automática vertical no cluster do Amazon EKS.

  • Instale o Operator SDK: o Amazon EMR no EKS usa o Operator SDK como um gerenciador de pacotes durante a vida útil do operador de escalabilidade automática vertical instalado no cluster.

  • Instale o Docker: você precisa de acesso à CLI do Docker para autenticar e buscar as imagens do Docker relacionadas à escalabilidade automática vertical para instalar no cluster do Amazon EKS.

  • Instale o servidor de métricas do Kubernetes: você deve primeiro instalar o servidor de métricas para que o escalador automático vertical do pod possa buscar métricas do servidor da API do Kubernetes.

  • Comece a usar o Amazon EKS (eksctl) (versão 1.24 ou superior): o ajuste de escala automático vertical é compatível com o Amazon EKS nas versões 1.24 e superior. Após criar o cluster, registre-o para uso com o Amazon EMR.

  • Selecione um URI de imagem base do Amazon EMR (versão 6.10.0 ou superiores): a escalabilidade automática vertical é compatível com as versões 6.10.0 e superiores do Amazon EMR.

Instalação do Operator Lifecycle Manager (OLM) no cluster do Amazon EKS

Use a CLI do Operator SDK para instalar o Operator Lifecycle Manager (OLM) no cluster do Amazon EMR no EKS no qual você deseja configurar a escalabilidade automática vertical, conforme mostrado no exemplo a seguir. Após configurá-lo, será possível usar o OLM para instalar e gerenciar o ciclo de vida do operador de escalabilidade automática vertical do Amazon EMR.

operator-sdk olm install

Para validar a instalação, execute o comando olm status:

operator-sdk olm status

Verifique se o comando retorna um resultado com êxito semelhante ao seguinte exemplo de saída:

INFO[0007] Successfully got OLM status for version X.XX

Se a instalação não ocorrer com êxito, consulte Solução de problemas de escalabilidade automática vertical do Amazon EMR no EKS.

Instalação do operador de escalabilidade automática vertical do Amazon EMR no EKS

Use as seguintes etapas para instalar o operador de escalabilidade automática vertical no cluster do Amazon EKS:

  1. Configure as seguintes variáveis ​​de ambiente que serão usadas para concluir a instalação:

    • $REGION direciona para a Região da AWS do seu cluster. Por exemplo, us-west-2.

    • $ACCOUNT_ID direciona para o ID da conta do Amazon ECR para sua região. Para obter mais informações, consulte Contas de registro do Amazon ECR por região.

    • $RELEASE direciona para a versão do Amazon EMR que você deseja usar para o cluster. Com a escalabilidade automática vertical, você deve usar o Amazon EMR versão 6.10.0 ou superiores.

  2. Em seguida, obtenha tokens de autenticação para o registro do Amazon ECR do operador.

    aws ecr get-login-password \ --region region-id | docker login \ --username AWS \ --password-stdin $ACCOUNT_ID.dkr.ecr.region-id.amazonaws.com
  3. Instale o operador de escalabilidade automática vertical do Amazon EMR no EKS com o seguinte comando:

    ECR_URL=$ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com && \ REPO_DEST=dynamic-sizing-k8s-operator-olm-bundle && \ BUNDLE_IMG=emr-$RELEASE-dynamic-sizing-k8s-operator && \ operator-sdk run bundle \ $ECR_URL/$REPO_DEST/$BUNDLE_IMG\:latest

    Isso criará uma versão do operador de escalabilidade automática vertical no namespace padrão do cluster do Amazon EKS. Use este comando para realizar a instalação em um namespace diferente:

    operator-sdk run bundle \ $ACCOUNT_ID.dkr.ecr.$REGION.amazonaws.com/dynamic-sizing-k8s-operator-olm-bundle/emr-$RELEASE-dynamic-sizing-k8s-operator:latest \ -n operator-namespace
    nota

    Se o namespace especificado não existir, o OLM não instalará o operador. Para obter mais informações, consulte Namespace do Kubernetes não encontrado.

  4. Verifique se você instalou o operador com êxito usando a ferramenta de linha de comando kubectl do Kubernetes.

    kubectl get csv -n operator-namespace

    O comando kubectl deve retornar o operador de escalabilidade automática vertical recém-implantado com um status de Fase como Com êxito. Se você tiver problemas com a instalação ou com a configuração, consulte Solução de problemas de escalabilidade automática vertical do Amazon EMR no EKS.