Monitorar trabalhos - 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á.

Monitorar trabalhos

Monitore trabalhos com a Amazon CloudWatch Events

O Amazon EMR no EKS emite eventos quando o estado de uma execução de trabalho é alterado. Cada evento fornece informações, como a data e o horário em que o evento ocorreu, em conjunto com mais detalhes sobre o evento, como o ID do cluster virtual e o ID de uma execução de trabalho que foi afetada.

É possível usar os eventos para rastrear a atividade e a integridade de trabalhos executados em um cluster virtual. Você também pode usar o Amazon CloudWatch Events para definir uma ação a ser tomada quando a execução de um trabalho gera um evento que corresponde a um padrão especificado por você. Os eventos são úteis para monitorar uma ocorrência específica durante o ciclo de vida de uma execução de trabalho. Por exemplo, é possível monitorar quando uma execução de trabalho sofre alteração de estado de submitted para running. Para obter mais informações sobre CloudWatch eventos, consulte o Guia EventBridge do usuário da Amazon.

A tabela apresentada a seguir lista os eventos do Amazon EMR no EKS em conjunto com o estado ou a alteração de estado que o evento indica, a severidade do evento e as mensagens do evento. Cada evento é representado como um objeto JSON que é enviado automaticamente a um stream de evento. O objeto JSON inclui mais detalhes sobre o evento. O objeto JSON é particularmente importante quando você configura regras para processamento de CloudWatch eventos usando Eventos, pois as regras buscam corresponder aos padrões no objeto JSON. Para obter mais informações, consulte Padrões de EventBridge eventos da Amazon e Amazon EMR on EKS Events no Guia EventBridge do usuário da Amazon.

Eventos de alteração de estado em execuções de trabalhos
State Gravidade Message
SUBMITTED INFO Job Run JobRunId(JobRunName) foi enviado com sucesso ao cluster virtual VirtualClusterIdno horário UTC.
RUNNING (Em execução) INFO Job Run JobRunId(JobRunName) no cluster virtual VirtualClusterIdcomeçou a ser executado no Time.
CONCLUÍDO INFO Job Run jobRunId(JobRunName) no cluster virtual VirtualClusterIdconcluído no momento. A execução de trabalho começou a ser executada às Horário e demorou Número minutos para ser concluída.
CANCELADO WARN A solicitação de cancelamento foi bem-sucedida para Job Run JobRunId(JobRunName) no cluster virtual VirtualClusterIdat Time e o Job Run agora está cancelado.
COM FALHA ERRO O Job Run JobRunId(JobRunName) no cluster virtual VirtualClusterIdfalhou no momento.

Automatize o Amazon EMR no EKS com eventos CloudWatch

Você pode usar o Amazon CloudWatch Events para automatizar seus AWS serviços para responder a eventos do sistema, como problemas de disponibilidade de aplicativos ou alterações de recursos. Os eventos dos AWS serviços são entregues aos CloudWatch Eventos quase em tempo real. É possível criar regras simples para indicar quais eventos são de seu interesse, e quais ações automatizadas devem ser tomadas quando um evento corresponder a uma regra. Ações que podem ser automaticamente acionadas incluem:

  • Invocando uma função AWS Lambda

  • Invocar o comando de execução do Amazon EC2

  • Transmitir o evento Amazon Kinesis Data Streams

  • Ativando uma máquina de AWS Step Functions estado

  • Notificando um tópico Amazon Simple Notification Service (SNS) ou uma fila Amazon Simple Queue Service (SQS)

Alguns exemplos do uso de CloudWatch eventos com o Amazon EMR no EKS incluem o seguinte:

  • Ativação de uma função do Lambda quando uma execução de trabalho tiver êxito.

  • Notificação de um tópico do Amazon SNS quando uma execução de trabalho falhar.

CloudWatch Eventos para "" detail-type: "" EMR Job Run State Change "são gerados pelo Amazon EMR no EKS paraSUBMITTED, RUNNINGCANCELLED, FAILED e mudanças de COMPLETED estado.

Exemplo: configuração de uma regra que invoque o Lambda

Use as etapas a seguir para configurar uma regra de CloudWatch eventos que invoca o Lambda quando há um evento “EMR Job Run State Change”.

aws events put-rule \ --name cwe-test \ --event-pattern '{"detail-type": ["EMR Job Run State Change"]}'

Adicione a função Lambda que você possui como um novo destino e dê permissão a CloudWatch Events para invocar a função Lambda da seguinte forma. Substitua 123456789012 pelo ID da sua conta.

aws events put-targets \ --rule cwe-test \ --targets Id=1,Arn=arn:aws:lambda:us-east-1:123456789012:function:MyFunction
aws lambda add-permission \ --function-name MyFunction \ --statement-id MyId \ --action 'lambda:InvokeFunction' \ --principal events.amazonaws.com
nota

Não é possível escrever um programa que dependa da ordem ou da existência de eventos de notificação, pois eles podem estar fora de sequência ou ausentes. Os eventos são emitidos com base no melhor esforço.

Monitore o driver pod do trabalho com uma política de repetição usando o Amazon Events CloudWatch

Usando CloudWatch eventos, você pode monitorar os grupos de drivers que foram criados em trabalhos que têm políticas de repetição. Para obter mais informações, consulte Monitoramento de um trabalho com uma política de repetição neste guia.