Fluid ダッシュボードは、ご利用の ACK クラスターで実行されている Fluid データアクセラレーションフレームワークの可観測性メトリックを公開します。2 つのダッシュボードが利用可能です。
Fluid コントロールプレーン ダッシュボード — Fluid のコントロールプレーン コンポーネント (データセット コントローラー、ランタイム コントローラー、Webhook、CSI プラグイン) の健全性とパフォーマンスをモニターします。
Fluid JindoRuntime キャッシュ ダッシュボード — 特定の JindoRuntime キャッシュシステムのキャッシュ効率とリソース使用量をモニターします。
これらのダッシュボードを使用して、コンポーネント障害を検出し、キャッシュのパフォーマンスの問題を診断し、ワークロードに影響を与える前に最適化の機会を特定します。
前提条件
開始する前に、以下を確認してください。
Fluid コンポーネントに対して Managed Service for Prometheus が有効になっていること。詳細については、「ステップ 2: Fluid ダッシュボードを表示する」をご参照ください。
Fluid コントロールプレーン ダッシュボード
ダッシュボード変数
変数は、すべてのパネルに表示されるデータの範囲と粒度を制御します。変数を変更すると、すべての関連パネルが同時に更新されます。
| 変数 | 有効な値 | 説明 |
|---|---|---|
interval | 1m, 5m, 10m, 30m, 1h, 6h | モニタリングサイクル期間。間隔が短いほどきめ細かい傾向が表示され、間隔が長いほどスパイクが平滑化されます。 |
quantile | 0.5, 0.75, 0.90, 0.95, 0.99 | レイテンシーおよび処理時間パネルで使用されるパーセンタイル。たとえば、0.90 = P90 です。 |
runtime | JindoRuntime, AlluxioRuntime, JuiceFSRuntime | モニターするランタイムタイプ。この変数を変更すると、すべてのランタイム関連パネルが選択されたランタイムにフィルターされます。 |
ランタイムタイプ:
JindoRuntime とは、Alibaba Cloud Elastic MapReduce (EMR) チームによって開発された JindoFS の実行エンジンです。C++ で構築されており、データセット管理、キャッシング、および Object Storage Service (OSS) のサポートを提供します。
AlluxioRuntime — オープンソース Alluxio の実行エンジン。データセット管理、キャッシング、および永続ボリューム要求 (PVC)、Ceph、Cloud Parallel File System (CPFS) への高速アクセスをサポートします。ハイブリッドクラウドシナリオに適しています。
JuiceFSRuntime — JuiceFS に基づく分散キャッシュ アクセラレーションエンジン。シナリオ固有のデータキャッシュとアクセラレーションをサポートします。詳細については、「Introduction to JuiceFS」をご参照ください。
パネル
コントロールプレーン ダッシュボードは、4 つのパネルグループに整理されています。クイックヘルスチェックには [コンポーネントの実行ステータス] から始めます。異常がある場合は、[Fluid コントローラー詳細インジケーター] または [Fluid Webhook 詳細インジケーター] にドリルダウンして原因を特定します。[リソース使用量] は、すべてのコントローラー Pod の CPU、メモリ、およびネットワークのサポートデータを提供します。
コンポーネントの実行ステータス
このグループは、各 Fluid コンポーネントが実行中であるかどうか、および Pod が再起動する頻度を示します。頻繁な再起動は、不安定性の最初の兆候です。
| パネル | 説明 |
|---|---|
| Dataset Controller Ready Replicas | 実行状態にあるデータセット コントローラー Pod の数。これが予想されるレプリカ数を下回ると、データセット操作が停止する可能性があります。 |
| History of Dataset controller restarts | データセット コントローラー Pod の再起動回数。 |
| Runtime Number of ready copies of controller | 実行状態にあるランタイム コントローラー Pod の数。 |
| History Runtime Controller Restart Times | ランタイム コントローラー Pod の再起動回数。 |
| Fluid Webhook ready copies | 実行状態にある Fluid Webhook Pod の数。 |
| Number of historical fluid Webhook restarts | Fluid Webhook Pod の再起動履歴。 |
| Fluid CSI Plug-in Ready Copies | 実行状態にある Fluid CSI プラグイン Pod の数。 |
| Historical Fluid CSI plug-in restarts | Fluid CSI プラグイン Pod の再起動回数。 |
| Fluid Component Restart | 過去 2 分間のモニタリングサイクルで最も再起動が多かった上位 5 つの Fluid コンポーネント。このパネルを使用して、注意が必要なコンポーネントを迅速に特定します。 |
Fluid コントローラー詳細インジケーター
このグループは、ランタイムおよび DataLoad コントローラーの内部パフォーマンスメトリックを公開します。データセットの調整が遅い場合や、API サーバーの負荷が増加している場合にこれを使用します。
| パネル | 説明 |
|---|---|
| Runtime Controller processing time | モニタリングサイクル内でランタイムリソースの処理にランタイム コントローラーが費やす時間 (パーセンタイル値として表示)。持続的に高い値は、コントローラーの過負荷を示している可能性があります。 |
| Number of Runtime controller processing failures | ランタイムリソース処理中の失敗の種類と数: ランタイムデプロイメントの失敗とランタイムヘルスチェックの失敗。ゼロ以外の値は調査が必要です。 |
| Runtime Number of controller threads | ランタイム コントローラーの現在のアクティブスレッドとサポートされる最大スレッド数。アクティブスレッドが最大値に近づくと、コントローラーがボトルネックになる可能性があります。 |
| DataLoad Controller Threads | DataLoad コントローラーの現在のアクティブスレッドとサポートされる最大スレッド数。 |
| Controller Queue Length | 各 Fluid コントローラーのワークキューの長さ。キューが増加している場合、コントローラーが調整要求に追いついていないことを示します。 |
| Total number of Kubernetes API requests | モニタリングサイクル内で、すべての Fluid コントローラー Pod から Kubernetes API サーバーに送信されたリクエストの総数。突然のスパイクは、API サーバーの速度制限を引き起こす可能性があります。 |
| Runtime Controller Kubernetes API requests | ランタイム コントローラーから Kubernetes API サーバーへのリクエスト (HTTP ステータスコード別に分類)。4xx または 5xx 応答の割合が高い場合、構成ミスまたは権限の問題を示します。 |
| Total time consumed by unfinished processing of controller | 各 Fluid コントローラーが進行中のタスクに費やした累積時間。継続的に高い値は、タスクがスタックしていることを示唆します。 |
Fluid Webhook 詳細インジケーター
このグループは、Pod 作成リクエストを傍受して FUSE サイドカーを注入する Fluid Webhook をモニターします。Webhook のレイテンシーは、新しい Pod の起動にかかる時間に直接影響します。
| パネル | 説明 |
|---|---|
| Fluid Webhook Pod CPU Usage | モニタリングサイクル内の各 Fluid Webhook Pod の CPU 使用率。 |
| Fluid Webhook Pod Memory Usage | モニタリングサイクル内の各 Fluid Webhook Pod のメモリ使用量。 |
| Total number of requests processed in Fluid Webhook | モニタリングサイクル内で Fluid Webhook によって処理されたリクエストの総数。 |
| The number of requests processed in each Fluid Webhook Pod | モニタリングサイクル内の各 Fluid Webhook Pod で処理されたリクエスト数。レプリカ間の負荷の不均衡を特定するためにこれを使用します。 |
| Fluid Webhook Request Processing Delay | Fluid Webhook の全体的なリクエスト処理レイテンシー (パーセンタイル値)。P99 レイテンシーが高いと、クラスター全体での Pod 起動が遅くなります。 |
| Request processing delay of each Fluid Webhook Pod | Pod ごとのリクエスト処理レイテンシー (パーセンタイル値)。テールレイテンシーを引き起こす単一の遅い Pod を特定するのに役立ちます。 |
リソース使用量
このグループは、すべての Fluid コントローラー Pod の CPU、メモリ、およびネットワークのメトリックを提供します。他のパネルグループで確認できる問題を引き起こす可能性のあるリソースの負荷を検出するためにこれを使用します。
| パネル | 説明 |
|---|---|
| CPU usage | モニタリングサイクル内の各 Fluid コントローラー Pod の CPU 使用率。 |
| Memory usage | モニタリングサイクル内の各 Fluid コントローラー Pod のメモリ使用量。 |
| Network Send Rate per Pod | モニタリングサイクル内の各 Fluid コントローラー Pod のネットワーク送信レート。 |
| Network Receive Rate per Pod | モニタリングサイクル内の各 Fluid コントローラー Pod のネットワーク受信レート。 |
Fluid JindoRuntime キャッシュ ダッシュボード
ダッシュボード変数
すべてのパネルをそのデータセットのキャッシュシステムにスコープするために、名前空間と名前でデータセットを選択します。
| 変数 | 説明 |
|---|---|
namespace | クラスター内のターゲット データセットの名前空間。 |
fluid_dataset | クラスター内のターゲット Fluid データセットの名前。 |
パネル
JindoRuntime キャッシュダッシュボードは、3 つのパネルグループに整理されています。まず、[データセットの概要]から始め、すべてのキャッシュ Pod が正常であることを確認します。次に、[キャッシュシステムメトリック]を確認して、キャッシュ効率と帯域幅を確認します。アプリケーションによって報告される高遅延など、FUSE レベルの問題が疑われる場合は、[FUSE メトリック]を使用して問題を特定します。
データセットの概要
| パネル | 説明 |
|---|---|
| Ready Pod Num | 選択されたキャッシュシステムの各コンポーネント (マスター、ワーカー、FUSE コンポーネントを含む) の準備完了 Pod 数。 |
| Pod Overview | 各コンポーネントの Pod に関する基本情報: 過去 1 時間の再起動回数、CPU リソースの要求と制限、およびメモリ リソースの要求と制限。 |
キャッシュシステム メトリック
このグループは、キャッシュのコアヘルスインジケーターをカバーします。キャッシュがどの程度いっぱいか、キャッシュからデータがどの程度効果的に提供されているか、およびアプリケーションに提供する帯域幅の量です。
| パネル | 説明 |
|---|---|
| Cache Capacity Usage (%) | 現在利用中のキャッシュ容量の割合。 |
| Cache Capacity Usage | 利用可能な最大キャッシュ容量と現在の使用量 (絶対値)。 |
| Cache Hit Ratio Per Minute | 選択されたキャッシュシステムの 1 分あたりのキャッシュヒット率。 |
| Read Bytes Per Minute | 1 分あたりのデータ読み取り (キャッシュヒット (Cache Hit) とバックエンドストレージから提供されるキャッシュミス (From Backend) に分割)。From Backend の割合が高い場合、ほとんどの読み取りがキャッシュをバイパスしていることを意味します。 |
| Cache System Aggregated Bandwidth | すべてのワーカー Pod ネットワークインターフェースを介したアウトバウンドトラフィックの合計。これは、キャッシュシステムがアプリケーションに配信する総帯域幅を表します。 説明 ワーカー Pod がホストネットワークで実行されている場合、この値は膨張する可能性があります。正確な読み取りのためには、ワーカー Pod をコンテナネットワークで実行してください。 |
| Cache Worker Pod Network I/O | ワーカー Pod ごとのネットワーク I/O。 説明 ワーカー Pod がホストネットワークで実行されている場合、この値は膨張する可能性があります。正確な読み取りのためには、ワーカー Pod をコンテナネットワークで実行してください。 |
| Cache System Pod Memory Usage | マスターおよびワーカー Pod のメモリ使用量。ワーカー Pod がプロセス メモリをキャッシュ媒体として使用する場合、消費するキャッシュ容量はこの数値に含まれます。 |
| Cache System Pod CPU Usage by Cores | マスターおよびワーカー Pod の CPU 使用率。 |
| Aggregated File Operation Requests | キャッシュシステム全体で集約されたファイルメタデータ操作のリクエスト頻度。GetAttr および ReadDir 操作のみがカウントされます。 |
FUSE メトリック (CSI 経由)
これらのパネルは、CSI ドライバー経由で注入された FUSE Pod をモニターします。アプリケーションが高いファイルアクセス レイテンシーや遅いメタデータ操作を報告する場合にこれらを使用します。
| パネル | 説明 |
|---|---|
| FUSE Network I/O | FUSE Pod ごとのネットワーク I/O。 説明 FUSE Pod がホストネットワークで実行されている場合、この値は膨張する可能性があります。正確な読み取りのためには、FUSE Pod をコンテナネットワークで実行してください。 |
| FUSE Memory Usage/Limit (%) | 各 FUSE Pod のメモリ制限に対する現在のメモリ使用量の割合。メモリ制限が設定されていない場合は空です。 |
| FUSE CPU Throttled Percent | 各 FUSE Pod の CPU スロットリングの割合。CPU 制限が設定されていない場合は空です。 |
| Meta Ops Per Second | 各 FUSE Pod の 1 秒あたりのファイルメタデータ操作 (GetAttr, ReadDir, Open) の頻度。 |
| Meta Ops P99 Latency | 各 FUSE Pod のメタデータ操作 (GetAttr, ReadDir, Open) の P99 レイテンシー。 |
| Read/Write Ops Per Second | 各 FUSE Pod の 1 秒あたりのファイル読み取りおよび書き込み操作の頻度。 |
| Read/Write Ops P99 Latency | 各 FUSE Pod のファイル読み取りおよび書き込み操作の P99 レイテンシー。 |
FUSE メトリック (サイドカー経由)
これらのパネルは、アプリケーション Pod に直接注入された FUSE サイドカーコンテナをモニターします。メトリックは CSI バリアントと同等ですが、サイドカーコンテナにスコープされます。
| パネル | 説明 |
|---|---|
| FUSE Memory Usage/Limit (%) | 各 FUSE サイドカーコンテナのメモリ制限に対する現在のメモリ使用量の割合。メモリ制限が設定されていない場合は空です。 |
| FUSE CPU Throttled Percent | 各 FUSE サイドカーコンテナの CPU スロットリングの割合。CPU 制限が設定されていない場合は空です。 |
| Meta Ops Per Second | FUSE サイドカーコンテナごとの 1 秒あたりのメタデータ操作 (GetAttr, ReadDir, Open) の頻度。 |
| Meta Ops P99 Latency | FUSE サイドカーコンテナごとのメタデータ操作 (GetAttr, ReadDir, Open) の P99 レイテンシー。 |
| Read/Write Ops Per Second | FUSE サイドカーコンテナごとの 1 秒あたりのファイル読み取りおよび書き込み操作の頻度。 |
| Read/Write Ops P99 Latency | FUSE サイドカーコンテナごとのファイル読み取りおよび書き込み操作の P99 レイテンシー。 |