This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.13. ユーザー定義プロジェクトでバインドされていないメトリクス属性の影響の制御
開発者は、キーと値のペアの形式でメトリックの属性を定義するためにラベルを作成できます。使用できる可能性のあるキーと値のペアの数は、属性について使用できる可能性のある値の数に対応します。数が無制限の値を持つ属性は、バインドされていない属性と呼ばれます。たとえば、customer_id
属性は、使用できる値が無限にあるため、バインドされていない属性になります。
割り当てられるキーと値のペアにはすべて、一意の時系列があります。ラベルに多くのバインドされていない属性を使用すると、指数関数的により時系列を作成できます。これにより、Prometheus のパフォーマンスおよび利用可能なディスク領域に影響を与える可能性があります。
クラスター管理者は、以下の手段を使用して、ユーザー定義プロジェクトでのバインドされていないメトリクス属性の影響を制御できます。
- ユーザー定義プロジェクトでターゲット収集ごとに受け入れ可能なサンプル数を制限します。
- 収集されたラベルの数、ラベル名の長さ、およびラベル値の長さを制限します。
- 収集サンプルのしきい値に達するか、ターゲットを収集できない場合に実行されるアラートを作成します。
多くのバインドされていない属性を追加して発生する問題を防ぐには、メトリックに定義する収集サンプル、ラベル名、およびバインドされていない属性の数を制限します。また、制限された一連の値にバインドされる属性を使用して、潜在的なキーと値のペアの組み合わせの数を減らします。
2.13.1. ユーザー定義プロジェクトの収集サンプルおよびラベル制限の設定 リンクのコピーリンクがクリップボードにコピーされました!
ユーザー定義プロジェクトで、ターゲット収集ごとに受け入れ可能なサンプル数を制限できます。収集されたラベルの数、ラベル名の長さ、およびラベル値の長さを制限することもできます。
サンプルまたはラベルの制限を設定している場合、制限に達した後にそのターゲット収集についての追加のサンプルデータは取得されません。
前提条件
-
cluster-admin
クラスターロールを持つユーザーとして、またはopenshift-user-workload-monitoring
プロジェクトのuser-workload-monitoring-config-edit
ロールを持つユーザーとして、クラスターにアクセスできる。 - ユーザー定義プロジェクトのモニタリングを有効にしている。
-
OpenShift CLI (
oc
) がインストールされている。
手順
openshift-user-workload-monitoring
プロジェクトでuser-workload-monitoring-config
ConfigMap
オブジェクトを編集します。oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
$ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow enforcedSampleLimit
設定をdata/config.yaml
に追加し、ユーザー定義プロジェクトのターゲットの収集ごとに受け入れ可能なサンプルの数を制限できます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- このパラメーターが指定されている場合は、値が必要です。この
enforcedSampleLimit
の例では、ユーザー定義プロジェクトのターゲット収集ごとに受け入れ可能なサンプル数を 50,000 に制限します。
enforcedLabelLimit
、enforcedLabelNameLengthLimit
、およびenforcedLabelValueLengthLimit
設定をdata/config.yaml
に追加し、収集されるラベルの数、ラベル名の長さ、およびユーザー定義プロジェクトでのラベル値の長さを制限します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 変更を適用するためにファイルを保存します。制限は自動的に適用されます。
注記user-workload-monitoring-config
ConfigMap
オブジェクトに適用される設定は、クラスター管理者がユーザー定義プロジェクトのモニタリングを有効にしない限りアクティブにされません。警告変更が
user-workload-monitoring-config
ConfigMap
オブジェクトに保存されると、openshift-user-workload-monitoring
プロジェクトの Pod および他のリソースは再デプロイされる可能性があります。該当するプロジェクトの実行中のモニタリングプロセスも再起動する可能性があります。
2.13.2. 収集サンプルアラートの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の場合に通知するアラートを作成できます。
-
ターゲットを収集できず、指定された
for
の期間利用できない -
指定された
for
の期間、収集サンプルのしきい値に達するか、この値を上回る
前提条件
-
cluster-admin
クラスターロールを持つユーザーとして、またはopenshift-user-workload-monitoring
プロジェクトのuser-workload-monitoring-config-edit
ロールを持つユーザーとして、クラスターにアクセスできる。 - ユーザー定義プロジェクトのモニタリングを有効にしている。
-
user-workload-monitoring-config
ConfigMap
オブジェクトを作成している。 -
enforcedSampleLimit
を使用して、ユーザー定義プロジェクトのターゲット収集ごとに受け入れ可能なサンプル数を制限している。 -
OpenShift CLI (
oc
) がインストールされている。
手順
ターゲットがダウンし、実行されたサンプル制限に近づく際に通知するアラートを指定して YAML ファイルを作成します。この例のファイルは
monitoring-stack-alerts.yaml
という名前です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- アラートルールの名前を定義します。
- 2
- アラートルールをデプロイするユーザー定義のプロジェクトを指定します。
- 3
TargetDown
アラートは、for
の期間にターゲットを収集できないか、利用できない場合に実行されます。- 4
TargetDown
アラートが実行される場合に出力されるメッセージ。- 5
- アラートが実行される前に、
TargetDown
アラートの条件がこの期間中 true である必要があります。 - 6
TargetDown
アラートの重大度を定義します。- 7
ApproachingEnforcedSamplesLimit
アラートは、指定されたfor
の期間に定義された収集サンプルのしきい値に達するか、この値を上回る場合に実行されます。- 8
ApproachingEnforcedSamplesLimit
アラートの実行時に出力されるメッセージ。- 9
ApproachingEnforcedSamplesLimit
アラートのしきい値。この例では、ターゲット収集ごとのサンプル数が実行されたサンプル制限50000
の 80% を超えるとアラートが実行されます。アラートが実行される前に、for
の期間も経過している必要があります。式scrape_samples_scraped/<number> > <threshold>
の<number>
はuser-workload-monitoring-config
ConfigMap
オブジェクトで定義されるenforcedSampleLimit
値に一致する必要があります。- 10
- アラートが実行される前に、
ApproachingEnforcedSamplesLimit
アラートの条件がこの期間中 true である必要があります。 - 11
ApproachingEnforcedSamplesLimit
アラートの重大度を定義します。
設定をユーザー定義プロジェクトに適用します。
oc apply -f monitoring-stack-alerts.yaml
$ oc apply -f monitoring-stack-alerts.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow