第8章 ServiceMonitor [monitoring.coreos.com/v1]


説明
ServiceMonitor は、一連のサービスの監視を定義します。
object
必須
  • spec

8.1. 仕様

Expand
プロパティー説明

apiVersion

string

apiVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。

kind

string

kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。これは更新できません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。

metadata

ObjectMeta

標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。

spec

object

Prometheus によるターゲット検出に必要なサービス選択の仕様。

8.1.1. .spec

説明
Prometheus によるターゲット検出に必要なサービス選択の仕様。
object
必須
  • endpoints
  • selector
Expand
プロパティー説明

endpoints

array

この ServiceMonitor の一部として許可されているエンドポイントのリスト。

endpoints[]

object

Endpoint は、Prometheus メトリックを提供するスクレイプ可能なエンドポイントを定義します。

jobLabel

string

jobLabel は、関連付けられた Kubernetes Service オブジェクトからラベルを選択します。このラベルは、すべてのメトリクスの job ラベルとして使用されます。例: ServiceMonitor.spec.jobLabel: foo および Service.metadata.labels.foo: bar で、job="bar" ラベルがすべてのメトリクスに追加されます。このフィールドの値が空の場合、または指定されたサービスにそのラベルが存在しない場合、メトリクスの job ラベルのデフォルトは、関連付けられている Kubernetes Service の名前になります。

labelLimit

integer

サンプルに受け入れられるラベルの数のスクレープごとの制限。Prometheus バージョン 2.27.0 以降でのみ有効です。

labelNameLengthLimit

integer

サンプルで受け入れられるラベル名の長さのスクレープごとの制限。Prometheus バージョン 2.27.0 以降でのみ有効です。

labelValueLengthLimit

integer

サンプルに受け入れられるラベル値の長さのスクレープごとの制限。Prometheus バージョン 2.27.0 以降でのみ有効です。

namespaceSelector

object

KubernetesEndpoints オブジェクトが検出される名前空間を選択するためのセレクター。

podTargetLabels

array (string)

PodTargetLabels は、Kubernetes Pod のラベルを作成されたメトリックに転送します。

sampleLimit

integer

SampleLimit は、受け入れられるスクレイプされたサンプルの数に対するスクレイプごとの制限を定義します。

selector

object

エンドポイントオブジェクトを選択するためのセレクター。

targetLabels

array (string)

TargetLabels は、ラベルを Kubernetes サービス から作成されたメトリックに転送します。

targetLimit

integer

TargetLimit は、受け入れられるスクレイプされたターゲットの数の制限を定義します。

8.1.2. .spec.endpoints

Description
この ServiceMonitor の一部として許可されているエンドポイントのリスト。
タイプ
array

8.1.3. .spec.endpoints[]

Description
Endpoint は、Prometheus メトリックを提供するスクレイプ可能なエンドポイントを定義します。
タイプ
object
Expand
プロパティー説明

authorization

object

このエンドポイントの承認セクション

basicAuth

object

BasicAuth を使用すると、エンドポイントは基本認証を介して認証できます。詳細: https://prometheus.io/docs/operating/configuration/#endpoints

bearerTokenFile

string

ターゲットをスクレイピングするためのベアラトークンを読み取るためのファイル。

bearerTokenSecret

object

ターゲットをスクレイピングするためのベアラトークンを読み取るためにマウントする秘密。シークレットは、サービスモニターと同じ名前空間にあり、PrometheusOperator がアクセスできる必要があります。

enableHttp2

boolean

HTTP2 を有効にするかどうか。

followRedirects

boolean

FollowRedirects は、収集リクエストが HTTP 3xx リダイレクトされるかどうかを設定します。

honorLabels

ブール値

HonorLabels は、ターゲットラベルとの衝突時にメトリックのラベルを選択します。

honorTimestamps

ブール値

HonorTimestamps は、Prometheus がスクレイピングされたデータに存在するタイムスタンプを尊重するかどうかを制御します。

interval

string

指定されていない場合に Prometheus のグローバルスクレイプ間隔が使用される場合にスクレイプする間隔。

metricRelabelings

array

取り込み前にサンプルに適用する MetricRelabelConfigs。

metricRelabelings[]

object

RelabelConfig を使用すると、取り込み前にサンプルに適用されたラベルセットの動的な書き換えが可能になります。Prometheus 設定の <metric_relabel_configs> セクションを定義します。詳細: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs

oauth2

object

URL の OAuth2。Prometheus バージョン 2.27.0 以降でのみ有効です。

params

object

オプションの HTTPURL パラメーター

params{}

array (string)

 

path

string

メトリックをスクレイプするための HTTP パス。空の場合、Prometheus はデフォルト値 (例: /metrics) を使用します。

port

string

このエンドポイントが参照するサービスポートの名前。targetPort と相互に排他的です。

proxyUrl

string

ProxyURL 例: http://proxyserver:2195 このエンドポイントを介してスクレイプをプロキシーに送信します。

relabelings

array

スクレイピングする前にサンプルに適用する RelabelConfigs。Operator は、いくつかの標準 Kubernetes フィールドのラベルの再設定を自動的に追加します。元のスクレイプジョブの名前は、\__tmp_prometheus_job_name ラベルから取得できます。詳細: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config

relabelings[]

object

RelabelConfig を使用すると、取り込み前にサンプルに適用されたラベルセットの動的な書き換えが可能になります。Prometheus 設定の <metric_relabel_configs> セクションを定義します。詳細: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs

scheme

string

スクレイピングに使用する HTTP スキーム。

scrapeTimeout

string

スクレイプが終了した後のタイムアウト。指定されていない場合、Prometheus グローバルスクレイプのタイムアウトは、後者が使用される Interval 未満でない限り使用されます。

targetPort

integer-or-string

サービスの背後にある Pod のターゲットポートの名前または番号。ポートはコンテナーポートプロパティーで指定する必要があります。ポートと相互に排他的です。

tlsConfig

object

エンドポイントをスクレイピングするときに使用する TLS 設定

8.1.4. .spec.endpoints[].authorization

Description
このエンドポイントの承認セクション
object
Expand
プロパティー説明

credentials

object

リクエストのクレデンシャルを含むシークレットのキー

type

string

認証タイプを設定します。デフォルトは Bearer で、Basic はエラーを引き起こします

8.1.5. .spec.endpoints[].authorization.credentials

Description
リクエストのクレデンシャルを含むシークレットのキー
タイプ
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.6. .spec.endpoints[].basicAuth

Description
BasicAuth を使用すると、エンドポイントは基本認証を介して認証できます。詳細: https://prometheus.io/docs/operating/configuration/#endpoints
タイプ
object
Expand
プロパティー説明

password

object

認証用のパスワードを含むサービスモニター名前空間のシークレット。

username

object

認証用のユーザー名を含むサービスモニター名前空間のシークレット。

8.1.7. .spec.endpoints[].basicAuth.password

Description
認証用のパスワードを含むサービスモニター名前空間のシークレット。
タイプ
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.8. .spec.endpoints[].basicAuth.username

Description
認証用のユーザー名を含むサービスモニター名前空間のシークレット。
タイプ
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.9. .spec.endpoints[].bearerTokenSecret

Description
ターゲットをスクレイピングするためのベアラトークンを読み取るためにマウントする秘密。シークレットは、サービスモニターと同じ名前空間にあり、PrometheusOperator がアクセスできる必要があります。
タイプ
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.10. .spec.endpoints[].metricRelabelings

Description
取り込み前にサンプルに適用する MetricRelabelConfigs。
array

8.1.11. .spec.endpoints[].metricRelabelings[]

Description
RelabelConfig を使用すると、取り込み前にサンプルに適用されたラベルセットの動的な書き換えが可能になります。Prometheus 設定の <metric_relabel_configs> セクションを定義します。詳細: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
タイプ
object
Expand
プロパティー説明

action

string

正規表現のマッチングに基づいて実行するアクション。デフォルトは置換です。大文字および小文字のアクションには、Prometheus >= 2.36 が必要です。

modulus

integer

ソースラベル値のハッシュを取得するためのモジュラス。

regex

string

抽出された値が一致する正規表現。デフォルトは (.*) です。

replacement

string

正規表現が一致する場合に正規表現置換が実行される置換値。正規表現キャプチャグループが利用可能です。デフォルトは $1 です。

separator

string

連結されたソースラベル値の間に配置されたセパレータ。デフォルトは ';' です。

sourceLabels

array (string)

ソースラベルは、既存のラベルから値を選択します。それらのコンテンツは、設定されたセパレーターを使用して連結され、置換、保持、および削除アクションの設定された正規表現と照合されます。

targetLabel

string

結果の値が置換アクションで書き込まれるラベル。置換アクションには必須です。正規表現キャプチャグループが利用可能です。

8.1.12. .spec.endpoints[].oauth2

Description
URL の OAuth2。Prometheus バージョン 2.27.0 以降でのみ有効です。
object
必須
  • clientId
  • clientSecret
  • tokenUrl
Expand
プロパティー説明

clientId

object

OAuth2 クライアント ID を含むシークレットまたは設定マップ

clientSecret

object

OAuth2 クライアントシークレットを含むシークレット

endpointParams

object (string)

トークン URL に追加するパラメーター

scopes

array (string)

トークンリクエストに使用される OAuth2 スコープ

tokenUrl

string

トークンをフェッチする URL

8.1.13. .spec.endpoints[].oauth2.clientId

Description
OAuth2 クライアント ID を含むシークレットまたは設定マップ
タイプ
object
Expand
プロパティー説明

configMap

object

ターゲットに使用するデータを含む ConfigMap。

secret

object

ターゲットに使用するデータを含むシークレット。

8.1.14. .spec.endpoints[].oauth2.clientId.configMap

説明
ターゲットに使用するデータを含む ConfigMap。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するキー。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

ConfigMap かそのキーを定義する必要があるかどうかを指定します。

8.1.15. .spec.endpoints[].oauth2.clientId.secret

説明
ターゲットに使用するデータを含むシークレット。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.16. .spec.endpoints[].oauth2.clientSecret

Description
OAuth2 クライアントシークレットを含むシークレット
タイプ
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.17. .spec.endpoints[].params

Description
オプションの HTTPURL パラメーター
タイプ
object

8.1.18. .spec.endpoints[].relabelings

Description
スクレイピングする前にサンプルに適用する RelabelConfigs。Operator は、いくつかの標準 Kubernetes フィールドのラベルの再設定を自動的に追加します。元のスクレイプジョブの名前は、\__tmp_prometheus_job_name ラベルから取得できます。詳細: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
array

8.1.19. .spec.endpoints[].relabelings[]

Description
RelabelConfig を使用すると、取り込み前にサンプルに適用されたラベルセットの動的な書き換えが可能になります。Prometheus 設定の <metric_relabel_configs> セクションを定義します。詳細: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
タイプ
object
Expand
プロパティー説明

action

string

正規表現のマッチングに基づいて実行するアクション。デフォルトは置換です。大文字および小文字のアクションには、Prometheus >= 2.36 が必要です。

modulus

integer

ソースラベル値のハッシュを取得するためのモジュラス。

regex

string

抽出された値が一致する正規表現。デフォルトは (.*) です。

replacement

string

正規表現が一致する場合に正規表現置換が実行される置換値。正規表現キャプチャグループが利用可能です。デフォルトは $1 です。

separator

string

連結されたソースラベル値の間に配置されたセパレータ。デフォルトは ';' です。

sourceLabels

array (string)

ソースラベルは、既存のラベルから値を選択します。それらのコンテンツは、設定されたセパレーターを使用して連結され、置換、保持、および削除アクションの設定された正規表現と照合されます。

targetLabel

string

結果の値が置換アクションで書き込まれるラベル。置換アクションには必須です。正規表現キャプチャグループが利用可能です。

8.1.20. .spec.endpoints[].tlsConfig

Description
エンドポイントをスクレイピングするときに使用する TLS 設定
タイプ
object
Expand
プロパティー説明

ca

object

ターゲットに使用する CA 証明書を含む構造体。

caFile

string

ターゲットに使用する Prometheus コンテナー内の CA 証明書へのパス。

cert

object

ターゲットのクライアント証明書ファイルを含む構造体。

certFile

string

ターゲットの Prometheus コンテナー内のクライアント証明書ファイルへのパス。

insecureSkipVerify

boolean

ターゲット証明書の検証を無効にします。

keyFile

string

ターゲットの Prometheus コンテナー内のクライアントキーファイルへのパス。

keySecret

object

ターゲットのクライアントキーファイルを含むシークレット。

serverName

string

ターゲットのホスト名を確認するために使用されます。

8.1.21. .spec.endpoints[].tlsConfig.ca

Description
ターゲットに使用する CA 証明書を含む構造体。
タイプ
object
Expand
プロパティー説明

configMap

object

ターゲットに使用するデータを含む ConfigMap。

secret

object

ターゲットに使用するデータを含むシークレット。

8.1.22. .spec.endpoints[].tlsConfig.ca.configMap

説明
ターゲットに使用するデータを含む ConfigMap。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するキー。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

ConfigMap かそのキーを定義する必要があるかどうかを指定します。

8.1.23. .spec.endpoints[].tlsConfig.ca.secret

説明
ターゲットに使用するデータを含むシークレット。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.24. .spec.endpoints[].tlsConfig.cert

Description
ターゲットのクライアント証明書ファイルを含む構造体。
タイプ
object
Expand
プロパティー説明

configMap

object

ターゲットに使用するデータを含む ConfigMap。

secret

object

ターゲットに使用するデータを含むシークレット。

8.1.25. .spec.endpoints[].tlsConfig.cert.configMap

説明
ターゲットに使用するデータを含む ConfigMap。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するキー。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

ConfigMap かそのキーを定義する必要があるかどうかを指定します。

8.1.26. .spec.endpoints[].tlsConfig.cert.secret

説明
ターゲットに使用するデータを含むシークレット。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.27. .spec.endpoints[].tlsConfig.keySecret

説明
ターゲットのクライアントキーファイルを含むシークレット。
object
必須
  • key
Expand
プロパティー説明

key

string

選択するシークレットのキー。有効な秘密鍵でなければなりません。

name

string

参照先の名前。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: その他の便利なルール度を追加。apiVersion、kind、uid

任意

boolean

シークレットかそのキーを定義する必要があるかどうかを指定します。

8.1.28. .spec.namespaceSelector

Description
KubernetesEndpoints オブジェクトが検出される名前空間を選択するためのセレクター。
タイプ
object
Expand
プロパティー説明

any

boolean

それらを制限するリストとは対照的に、すべての namespace が選択されているかどうかを説明するブール値。

matchNames

array (string)

選択する namespace 名のリスト。

8.1.29. .spec.selector

Description
エンドポイントオブジェクトを選択するためのセレクター。
タイプ
object
Expand
プロパティー説明

matchExpressions

array

matchExpressions はラベルセレクターの要件のリストです。要件は AND で結合されます。

matchExpressions[]

object

ラベルセレクター要件は、値、キー、およびキーと値を関連付ける Operator を含むセレクターです。

matchLabels

object (string)

matchLabels は、{key,value} ペアのマップです。matchLabels マップの 1 つの {key,value} は matchExpressions の要素と同じで、キーフィールドには "key"、演算子には "In"、値配列には "value" のみが含まれます。要件は AND で結合されます。

8.1.30. .spec.selector.matchExpressions

説明
matchExpressions はラベルセレクターの要件のリストです。要件は AND で結合されます。
array

8.1.31. .spec.selector.matchExpressions[]

説明
ラベルセレクター要件は、値、キー、およびキーと値を関連付ける Operator を含むセレクターです。
object
必須
  • key
  • operator
Expand
プロパティー説明

key

string

key は、セレクターの適用先のラベルキーです。

operator

string

operator はキーと値のセットの関係を表します。有効な演算子は In、NotIn、Exists、および DoesNotExist です。

values

array (string)

values は文字列値の配列です。operator が In または NotIn の場合には、values 配列を空白にできません。operator が Exists または DoesNotExist の場合には、values 配列は空白でなければなりません。この配列は、ストラテジーに基づいたマージパッチの適用中に置き換えられます。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る