Amazon Managed Service for Prometheus を使用した Flink ジョブのモニタリング - Amazon EMR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Managed Service for Prometheus を使用した Flink ジョブのモニタリング

Apache Flink を Amazon Managed Service for Prometheus (管理ポータル) とインテグレーションできます。Amazon Managed Service for Prometheus では、Amazon Managed Service for Prometheus サーバーからメトリクスを Amazon EKS で実行されているクラスターに取り込むことができます。Amazon Managed Service for Prometheus は、Amazon EKS クラスターで既に実行されている Prometheus サーバーと連携して動作します。Amazon Managed Service for Prometheus と Amazon EMR Flink オペレータとのインテグレーションを実行すると、Prometheus サーバーが自動的にデプロイされ、Amazon Managed Service for Prometheus とインテグレーションするように設定されます。

  1. Amazon Managed Service for Prometheus ワークスペースを作成します。このワークスペースは、取り込みエンドポイントとして機能します。後でそのリモート書き込み URL が必要になります。

  2. サービスアカウントの IAM ロールをセットアップします。

    このオンボーディング方法では、Prometheus サーバーが稼働している Amazon EKS クラスターのサービスアカウントの IAM ロールを使用します。こうしたロールは、サービスロールとも呼ばれます。

    まだサービスロールがない場合は、Amazon EKS クラスターからメトリクスを取り込めるようにサービスロールをセットアップします

    続行する前に、IAM ロールを amp-iamproxy-ingest-role という名前で作成します。

  3. Amazon EMR Flink オペレータを Amazon Managed Service for Prometheus と共にインストールします。

Amazon Managed Service for Prometheus ワークスペース、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

このコマンドにより、オペレータ内の Prometheus レポーターがポート 9999 に自動的にインストールされます。また、以後 FlinkDeployment を指定すると、metrics ポートが 9249 に公開されます。

  • Flink オペレータメトリクスは、Prometheus のラベル flink_k8soperator_ の下に表示されます。

  • Flink タスクマネージャーメトリクスは、Prometheus のラベル flink_taskmanager_ の下に表示されます。

  • Flink ジョブマネージャーメトリクスは、Prometheus のラベル flink_jobmanager_ の下に表示されます。