Uso do Amazon Managed Service para Prometheus no monitoramento de trabalhos do Flink - 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á.

Uso do Amazon Managed Service para Prometheus no monitoramento de trabalhos do Flink

Você pode integrar o Apache Flink ao Amazon Managed Service for Prometheus (portal de gerenciamento). O Amazon Managed Service for Prometheus oferece suporte à ingestão de métricas de servidores do Amazon Managed Service for Prometheus em clusters em execução no Amazon EKS. O Amazon Managed Service for Prometheus funciona em conjunto com um servidor do Prometheus que já está em execução no cluster do Amazon EKS. A execução da integração do Amazon Managed Service for Prometheus com o operador do Flink do Amazon EMR implantará e configurará automaticamente um servidor do Prometheus para a integração com o Amazon Managed Service for Prometheus.

  1. Crie um Workspace do Amazon Managed Service for Prometheus. Este Workspace serve como um endpoint de ingestão. Você precisará do URL de gravação remota posteriormente.

  2. Configure perfis do IAM para as contas de serviço.

    Para esse método de integração, use perfis do IAM para as contas de serviço no cluster do Amazon EKS em que o servidor do Prometheus está em execução. Esses perfis também são chamados de perfis de serviço.

    Se você ainda não tiver os perfis, configure perfis de serviço para a ingestão de métricas de clusters do Amazon EKS.

    Antes de continuar, crie um perfil do IAM chamado amp-iamproxy-ingest-role.

  3. Instale o operador do Flink do Amazon EMR com o Amazon Managed Service for Prometheus.

Agora que você tem um Workspace do Amazon Managed Service for Prometheus, um perfil do IAM dedicado para o Amazon Managed Service for Prometheus e as permissões necessárias, é possível instalar o operador do Flink do Amazon EMR.

Criar um arquivo enable-amp.yaml Esse arquivo permite usar uma configuração personalizada para substituir as configurações do Amazon Managed Service for Prometheus. Use seus próprios perfis.

kube-prometheus-stack: prometheus: serviceAccount: create: true name: "amp-iamproxy-ingest-service-account" annotations: eks.amazonaws.com/role-arn: "arn:aws:iam::<AWS_ACCOUNT_ID>:role/amp-iamproxy-ingest-role" remoteWrite: - url: <AMAZON_MANAGED_PROMETHEUS_REMOTE_WRITE_URL> sigv4: region: <AWS_REGION> queueConfig: maxSamplesPerSend: 1000 maxShards: 200 capacity: 2500

Use o comando Helm Install --set para transferir as substituições para o chart flink-kubernetes-operator.

helm upgrade -n <namespace> flink-kubernetes-operator \ oci://public.ecr.aws/emr-on-eks/flink-kubernetes-operator \ --set prometheus.enabled=true -f enable-amp.yaml

Esse comando instala automaticamente um relator do Prometheus no operador na porta 9999. Qualquer FlinkDeployment futura também expõe uma porta para metrics em 9249.

  • As métricas do operador do Flink aparecem no Prometheus sob o rótulo flink_k8soperator_.

  • As métricas Task Manager do Flink aparecem no Prometheus sob o rótulo flink_taskmanager_.

  • As métricas Job Manager do Flink aparecem no Prometheus sob o rótulo flink_jobmanager_.