Uso de Amazon Managed Service para Prometheus para supervisar los trabajos de Flink - Amazon EMR

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de Amazon Managed Service para Prometheus para supervisar los trabajos de Flink

Puede integrar Apache Flink a Amazon Managed Service para Prometheus (portal de administración). Amazon Managed Service para Prometheus admite la ingesta de métricas de Amazon Managed Service para servidores de Prometheus en clústeres que se ejecuten en Amazon EKS. Amazon Managed Service para Prometheus funciona junto con un servidor de Prometheus que ya se esté ejecutando en su clúster de Amazon EKS. Al ejecutar la integración de Amazon Managed Service para Prometheus con el operador de Flink de Amazon EMR, un servidor de Prometheus se implementará y configurará automáticamente para que se integre con Amazon Managed Service para Prometheus.

  1. Cree un espacio de trabajo de Amazon Managed Service para Prometheus. Este espacio de trabajo sirve como punto de conexión de ingestión. Más adelante necesitará la URL de escritura remota.

  2. Configure roles de IAM para cuentas de servicio.

    Para este método de incorporación, utilice roles de IAM para las cuentas de servicio del clúster de Amazon EKS en el que se ejecuta el servidor de Prometheus. Estos roles también se denominan roles de servicio.

    Si aún no tiene los roles, configure los roles de servicio para la ingesta de métricas de los clústeres de Amazon EKS.

    Antes de continuar, cree un rol de IAM llamado amp-iamproxy-ingest-role.

  3. Instale el operador de Flink de Amazon EMR con Amazon Managed Service para Prometheus.

Ahora que dispone de un espacio de trabajo de Amazon Managed Service para Prometheus, tiene un rol de IAM dedicado para Amazon Managed Service para Prometheus y cuenta con los permisos necesarios, puede instalar el operador de Flink de Amazon EMR.

Cree un archivo enable-amp.yaml. Este archivo te permite usar una configuración personalizada para anular la configuración de Amazon Managed Service para Prometheus. Asegúrese de utilizar sus propios roles.

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

Utilice el comando Helm Install --set para pasar las anulaciones al gráfico de 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

El comando instala automáticamente un informador de Prometheus en el operador del puerto 9999. Cualquier futuro FlinkDeployment también expone un puerto metrics en 9249.

  • Las métricas del operador de Flink aparecen en Prometheus con la etiqueta flink_k8soperator_.

  • Las métricas de Flink TaskManager aparecen en Prometheus con la etiqueta flink_taskmanager_.

  • Las métricas de Flink JobManager aparecen en Prometheus con la etiqueta flink_jobmanager_.