8.2. Cruise Control 操作の監視


Cruise Control は、ブローカー、トピック、およびパーティションの使用状況を追跡するために Kafka ブローカーを監視します。Cruise Control は、独自のパフォーマンスを監視するためのメトリクスのセットも提供します。

Cruise Control メトリクスレポーターは、Kafka ブローカーから未加工のメトリクスデータを収集します。データは、Cruise Control によって自動的に作成されるトピックに生成されます。メトリクスは、Kafka クラスターの最適化提案の生成 に使用されます。

Cruise Control メトリクスは、Cruise Control 操作のリアルタイム監視で利用できます。たとえば、Cruise Control メトリクスを使用して、実行中のリバランス操作のステータスを監視したり、操作のパフォーマンスで検出された異常についてアラートを提供したりできます。

Cruise Control 設定で Prometheus JMX Exporter を有効にして Cruise Control メトリクスを公開します。

注記

センサー として知られる利用可能な Cruise Control メトリクスの完全なリストは、Cruise Control のドキュメントを 参照してください。

8.2.1. Cruise Control メトリクスの公開

Cruise Control 操作でメトリクスを公開する場合は、Kafka リソースを設定して、Cruise Control をデプロイし、デプロイメントで Prometheus メトリクスを有効にします。独自の設定を使用するか、AMQ Streams によって提供される kafka-cruise-control-metrics.yaml ファイルのサンプルを使用できます。

設定を Kafka リソースの CruiseControl プロパティーの metricsConfig に追加します。この設定により、Prometheus JMX Exporter が有効化され、HTTP エンドポイント経由で Cruise Control メトリクスが公開されます。HTTP エンドポイントは Prometheus サーバーによってスクレープされます。

Cruise Control のメトリクス設定例

  apiVersion: kafka.strimzi.io/v1beta2
  kind: Kafka
  metadata:
    name: my-cluster
  Spec:
    # ...
    cruiseControl:
      # ...
      metricsConfig:
        type: jmxPrometheusExporter
        valueFrom:
          configMapKeyRef:
            name: cruise-control-metrics
            key: metrics-config.yml
  ---
  kind: ConfigMap
  apiVersion: v1
  metadata:
    name: cruise-control-metrics
    labels:
      app: strimzi
  data:
    metrics-config.yml: |
    # metrics configuration...

8.2.2. Cruise Control メトリクスの表示

Cruise Control メトリクスを公開したら、Prometheus または別の適切なモニタリングシステムを使用して、メトリクスデータの情報を表示できます。Streams for Apache Kafka は、Cruise Control メトリクスの視覚化を表示する Grafana ダッシュボードのサンプル を提供します。ダッシュボードは strimzi-cruise-control.json という名前の JSON ファイルです。公開されるメトリクスは、Grafana ダッシュボードを有効にする 際に監視データを提供します。

8.2.2.1. 分散スコアの監視

Cruise Control メトリクスには、分散スコアが含まれます。分散度は、Kafka クラスター内でワークロードがどの程度均等に分散されているかを示す尺度です。

分散スコア (balancedness-score) の Cruise Control メトリクスは、KafkaRebalance リソースの分散スコアとは異なる可能性があります。Cruise Control は anomaly.detection.goals を使用して各スコアを計算します。これは、KafkaRebalance リソースで使用される default.goals と同じでない可能性があります。anomaly.detection.goals は、Kafka カスタムリソースの spec.cruiseControl.config に指定されます。

注記

KafkaRebalance リソースを更新すると、最適化プロポーザルをフェッチします。以下の条件のいずれかが適用されると、キャッシュされた最新の最適化プロポーザルがフェッチされます。

  • KafkaRebalance goals は、Kafka リソースの default.goals セクションに設定されたゴールと一致する。
  • KafkaRebalance goals は指定されていない。

これ以外の場合は、Cruise Control は KafkaRebalance goals に基づいて、新しい最適化プロポーザルを生成します。更新ごとに新しいプロポーザルが生成されると、パフォーマンスの監視に影響を及ぼす可能性があります。

8.2.2.2. 異常検出へのアラート

Cruise Control の 異常検出 は、ブローカーの障害などの最適化ゴールの生成をブロックする条件のメトリクスデータを提供します。可視性を高める場合は、異常検出器が提供するメトリックを使用して、アラートを設定し、通知を送信できます。Cruise Control の 異常通知機能 を設定して、指定された通知チャネルを介してこれらのメトリクスに基づいてアラートをルーティングできます。または、Prometheus を設定して、異常検出器によって提供されるメトリクスデータをスクレープし、アラートを生成することもできます。その後、Prometheus Alertmanager は Prometheus で生成されるアラートをルーティングできます。

Cruise Control ドキュメント には、AnomalyDetector メトリクスおよび異常通知機能に関する情報が記載されています。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る