Amazon Managed Service for Prometheus를 사용하여 Flink 작업 모니터링
Amazon Managed Service for Prometheus(관리 포털)와 Apache Flink를 통합할 수 있습니다. Amazon Managed Service for Prometheus는 Amazon EKS에서 실행되는 클러스터에서 Amazon Managed Service for Prometheus 서버의 지표 수집을 지원합니다. Amazon Managed Service for Prometheus는 Amazon EKS 클러스터에서 이미 실행 중인 Prometheus 서버와 함께 작동합니다. Amazon EMR Flink 운영자와의 Amazon Managed Service for Prometheus 통합을 실행하면 Amazon Managed Service for Prometheus와 통합되도록 Prometheus 서버를 자동으로 배포하고 구성합니다.
Amazon Managed Service for Prometheus Workspace를 생성합니다. 이 Workspace는 수집 엔드포인트 역할을 합니다. 나중에 원격 쓰기 URL이 필요합니다.
서비스 계정에 대한 IAM 역할 설정.
이 온보딩 방법에서서는 Prometheus 서버가 실행되는 Amazon EKS 클러스터의 서비스 계정에 대한 IAM 역할을 사용합니다. 이러한 역할을 서비스 역할이라고도 합니다.
아직 역할이 없는 경우 Amazon EKS 클러스터의 지표 수집을 위한 서비스 역할을 설정합니다.
계속하기 전에
amp-iamproxy-ingest-role
이라는 IAM 역할을 생성합니다.Amazon Managed Service for Prometheus와 함께 Amazon EMR Flink 운영자를 설치합니다.
이제 Amazon Managed Service for Prometheus Workspace, Amazon Managed Service for Prometheus에 대한 전용 IAM 역할 및 필요한 권한이 확보되었으므로 Amazon EMR Flink 운영자를 설치할 수 있습니다.
enable-amp.yaml
파일을 생성합니다. 이 파일을 사용하면 사용자 지정 구성을 사용하여 Amazon Managed Service for Prometheus 설정을 재정의할 수 있습니다. 고유한 역할을 사용해야 합니다.
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
Helm Install --set
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
이 명령은 포트 9999의 연산자에 Prometheus 리포터를 자동으로 설치합니다. 향후 FlinkDeployment
는 9249의 metrics
포트를 공개합니다.
Flink 운영자 지표는 Prometheus의
flink_k8soperator_
레이블 아래에 표시됩니다.Flink 태스크 관리자 지표는 Prometheus의
flink_taskmanager_
레이블 아래에 표시됩니다.Flink 작업 관리자 지표는 Prometheus의
flink_jobmanager_
레이블 아래에 표시됩니다.