8장. ServiceMonitor [monitoring.coreos.com/v1]
- 설명
- ServiceMonitor는 서비스 세트에 대한 모니터링을 정의합니다.
- 유형
-
object
- 필수 항목
-
spec
-
8.1. 사양
속성 | 유형 | 설명 |
---|---|---|
|
| APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 표준 오브젝트의 메타데이터입니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| Prometheus의 대상 검색에 필요한 서비스 선택 사양입니다. |
8.1.1. .spec
- 설명
- Prometheus의 대상 검색에 필요한 서비스 선택 사양입니다.
- 유형
-
object
- 필수 항목
-
끝점
-
선택기
-
속성 | 유형 | 설명 |
---|---|---|
|
| 검색된 대상에 노드 메타데이터를 연결합니다. Prometheus v2.37.0 이상이 필요합니다. |
|
| 이 ServiceMonitor의 일부로 허용되는 끝점 목록입니다. |
|
| 끝점은 Prometheus 지표를 제공하는 스크랩 가능한 끝점을 정의합니다. |
|
|
JobLabel은 모든 메트릭의 |
|
| 샘플에 허용되는 라벨 수에 대한 조각별 제한입니다. Prometheus 버전 2.27.0 이상에서만 유효합니다. |
|
| 샘플에 대해 허용되는 라벨 이름 길이에 대한 조각별 제한입니다. Prometheus 버전 2.27.0 이상에서만 유효합니다. |
|
| 샘플에 허용되는 라벨 값의 길이 제한입니다. Prometheus 버전 2.27.0 이상에서만 유효합니다. |
|
| Kubernetes 끝점 개체가 검색되는 네임스페이스를 선택하는 선택기입니다. |
|
|
PodTargetLabels는 Kubernetes |
|
| SampleLimit는 허용될 스크랩된 샘플 수에 대한 per-scrape 제한을 정의합니다. |
|
| 끝점 오브젝트를 선택하는 선택기입니다. |
|
|
TargetLabels는 Kubernetes |
|
| TargetLimit는 허용되는 스크랩 대상 수에 대한 제한을 정의합니다. |
8.1.2. .spec.attachMetadata
- 설명
- 검색된 대상에 노드 메타데이터를 연결합니다. Prometheus v2.37.0 이상이 필요합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| true로 설정하면 Prometheus에 노드를 가져올 수 있는 권한이 있어야 합니다. |
8.1.3. .spec.endpoints
- 설명
- 이 ServiceMonitor의 일부로 허용되는 끝점 목록입니다.
- 유형
-
array
8.1.4. .spec.endpoints[]
- 설명
- 끝점은 Prometheus 지표를 제공하는 스크랩 가능한 끝점을 정의합니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 이 끝점에 대한 권한 부여 섹션 |
|
| basicauth를 사용하면 끝점이 기본 인증 세부 정보를 통해 인증할 수 있습니다. https://prometheus.io/docs/operating/configuration/#endpoints |
|
| 스크랩 대상의 전달자 토큰을 읽기 위한 파일입니다. |
|
| 스크랩 대상의 전달자 토큰을 읽기 위해 마운트하는 시크릿입니다. 시크릿은 서비스 모니터와 동일한 네임스페이스에 있어야 하며 Prometheus Operator가 액세스할 수 있어야 합니다. |
|
| HTTP2를 활성화할지 여부입니다. |
|
| 실행 중이 아닌 Pod를 삭제합니다. (실패, 성공). 기본적으로 활성화되어 있습니다. 자세한 내용은 https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase |
|
| FollowRedirects는 스크랩 요청이 HTTP 3xx 리디렉션을 따르는지 여부를 구성합니다. |
|
| CryostatLabels는 대상 라벨이 있는 충돌 시 메트릭의 레이블을 선택합니다. |
|
| CryostatTimestamps는 Prometheus가 스크랩된 데이터에 존재하는 타임스탬프를 준수하는지 여부를 제어합니다. |
|
| Prometheus의 글로벌 스크랩 간격을 지정하지 않으면 메트릭을 스크랩해야 하는 간격입니다. |
|
| 수집 전에 샘플에 적용할 MetricRelabelConfigs |
|
|
RelabelConfig를 사용하면 레이블 세트를 동적 재작성하고 수집 전에 샘플에 적용할 수 있습니다. Prometheus 구성의 |
|
| URL용 OAuth2입니다. Prometheus 버전 2.27.0 이상에서만 유효합니다. |
|
| 선택적 HTTP URL 매개변수 |
|
| |
|
|
메트릭에 대해 스크랩할 HTTP 경로입니다. 비어 있는 경우 Prometheus는 기본값(예: |
|
| 이 엔드포인트에서 참조하는 서비스 포트의 이름입니다. targetPort와 함께 사용할 수 없습니다. |
|
| ProxyURL (예: http://proxyserver:2195 이 끝점을 통해 프록시 스크랩) |
|
|
스크랩 전에 샘플에 적용할 RelabelConfigs입니다. Prometheus Operator는 몇 가지 표준 Kubernetes 필드에 대한 레이블 재레이블을 자동으로 추가합니다. 원래 스크랩 작업 이름은 |
|
|
RelabelConfig를 사용하면 레이블 세트를 동적 재작성하고 수집 전에 샘플에 적용할 수 있습니다. Prometheus 구성의 |
|
| 스크랩에 사용할 HTTP 스키마입니다. |
|
|
스크랩이 종료된 후 시간 초과가 지정되지 않은 경우 후자가 사용되는 |
|
| 서비스 뒤에 있는 Pod의 대상 포트 이름 또는 번호, 컨테이너 포트 속성을 사용하여 포트를 지정해야 합니다. 포트와 함께 사용할 수 없습니다. |
|
| 끝점을 스크랩할 때 사용할 TLS 구성 |
8.1.5. .spec.endpoints[].authorization
- 설명
- 이 끝점에 대한 권한 부여 섹션
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 요청의 인증 정보가 포함된 시크릿의 키 |
|
| 인증 유형을 설정합니다. 기본값은 Bearer, Basic으로 인해 오류가 발생합니다. |
8.1.6. .spec.endpoints[].authorization.credentials
- 설명
- 요청의 인증 정보가 포함된 시크릿의 키
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.7. .spec.endpoints[].basicAuth
- 설명
- basicauth를 사용하면 끝점이 기본 인증 세부 정보를 통해 인증할 수 있습니다. https://prometheus.io/docs/operating/configuration/#endpoints
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 인증을 위한 암호가 포함된 서비스 모니터 네임스페이스의 시크릿입니다. |
|
| 인증을 위한 사용자 이름이 포함된 서비스 모니터 네임스페이스의 시크릿입니다. |
8.1.8. .spec.endpoints[].basicAuth.password
- 설명
- 인증을 위한 암호가 포함된 서비스 모니터 네임스페이스의 시크릿입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.9. .spec.endpoints[].basicAuth.username
- 설명
- 인증을 위한 사용자 이름이 포함된 서비스 모니터 네임스페이스의 시크릿입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.10. .spec.endpoints[].bearerTokenSecret
- 설명
- 스크랩 대상의 전달자 토큰을 읽기 위해 마운트하는 시크릿입니다. 시크릿은 서비스 모니터와 동일한 네임스페이스에 있어야 하며 Prometheus Operator가 액세스할 수 있어야 합니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.11. .spec.endpoints[].metricRelabelings
- 설명
- 수집 전에 샘플에 적용할 MetricRelabelConfigs
- 유형
-
array
8.1.12. .spec.endpoints[].metricRelabelings[]
- 설명
-
RelabelConfig를 사용하면 레이블 세트를 동적 재작성하고 수집 전에 샘플에 적용할 수 있습니다. Prometheus 구성의
<metric_relabel_configs
> -section을 정의합니다. 자세한 내용은 https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs - 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 정규 표현식 일치를 기반으로 수행할 작업입니다. 기본값은 'replace'. 대문자 및 소문자 작업에 Prometheus >= 2.36이 필요합니다. |
|
| 소스 레이블 값의 해시를 사용합니다. |
|
| 추출된 값이 일치하는 정규식입니다. 기본값은 '(.*)입니다. |
|
| 정규 표현식과 일치하는 경우 regex 교체가 수행되는 대체 값입니다. regex 캡처 그룹을 사용할 수 있습니다. 기본값은 '$1'입니다. |
|
| 연결된 소스 레이블 값 사이에 배치된 구분 기호입니다. 기본값은 ';'입니다. |
|
| 소스 레이블은 기존 라벨에서 값을 선택합니다. 해당 콘텐츠는 구성된 구분자를 사용하여 연결되고 교체, 보관 및 삭제 작업에 대해 구성된 정규식과 일치합니다. |
|
| 결과 값이 교체 작업에 기록되는 레이블입니다. 교체 작업은 필수입니다. regex 캡처 그룹을 사용할 수 있습니다. |
8.1.13. .spec.endpoints[].oauth2
- 설명
- URL용 OAuth2입니다. Prometheus 버전 2.27.0 이상에서만 유효합니다.
- 유형
-
object
- 필수 항목
-
clientId
-
clientSecret
-
tokenUrl
-
속성 | 유형 | 설명 |
---|---|---|
|
| OAuth2 클라이언트 ID를 포함하는 secret 또는 configmap |
|
| OAuth2 클라이언트 시크릿이 포함된 시크릿 |
|
| 토큰 URL에 추가할 매개변수 |
|
| 토큰 요청에 사용되는 OAuth2 범위 |
|
| 토큰을 가져올 URL |
8.1.14. .spec.endpoints[].oauth2.clientId
- 설명
- OAuth2 클라이언트 ID를 포함하는 secret 또는 configmap
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 대상에 사용할 데이터가 포함된 ConfigMap입니다. |
|
| 대상에 사용할 데이터가 포함된 시크릿입니다. |
8.1.15. .spec.endpoints[].oauth2.clientId.configMap
- 설명
- 대상에 사용할 데이터가 포함된 ConfigMap입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 키입니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| ConfigMap 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.16. .spec.endpoints[].oauth2.clientId.secret
- 설명
- 대상에 사용할 데이터가 포함된 시크릿입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.17. .spec.endpoints[].oauth2.clientSecret
- 설명
- OAuth2 클라이언트 시크릿이 포함된 시크릿
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.18. .spec.endpoints[].params
- 설명
- 선택적 HTTP URL 매개변수
- 유형
-
object
8.1.19. .spec.endpoints[].relabelings
- 설명
-
스크랩 전에 샘플에 적용할 RelabelConfigs입니다. Prometheus Operator는 몇 가지 표준 Kubernetes 필드에 대한 레이블 재레이블을 자동으로 추가합니다. 원래 스크랩 작업 이름은
\_tmp_prometheus_job_name
레이블을 통해 사용할 수 있습니다. 자세한 내용은 https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config - 유형
-
array
8.1.20. .spec.endpoints[].relabelings[]
- 설명
-
RelabelConfig를 사용하면 레이블 세트를 동적 재작성하고 수집 전에 샘플에 적용할 수 있습니다. Prometheus 구성의
<metric_relabel_configs
> -section을 정의합니다. 자세한 내용은 https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs - 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 정규 표현식 일치를 기반으로 수행할 작업입니다. 기본값은 'replace'. 대문자 및 소문자 작업에 Prometheus >= 2.36이 필요합니다. |
|
| 소스 레이블 값의 해시를 사용합니다. |
|
| 추출된 값이 일치하는 정규식입니다. 기본값은 '(.*)입니다. |
|
| 정규 표현식과 일치하는 경우 regex 교체가 수행되는 대체 값입니다. regex 캡처 그룹을 사용할 수 있습니다. 기본값은 '$1'입니다. |
|
| 연결된 소스 레이블 값 사이에 배치된 구분 기호입니다. 기본값은 ';'입니다. |
|
| 소스 레이블은 기존 라벨에서 값을 선택합니다. 해당 콘텐츠는 구성된 구분자를 사용하여 연결되고 교체, 보관 및 삭제 작업에 대해 구성된 정규식과 일치합니다. |
|
| 결과 값이 교체 작업에 기록되는 레이블입니다. 교체 작업은 필수입니다. regex 캡처 그룹을 사용할 수 있습니다. |
8.1.21. .spec.endpoints[].tlsConfig
- 설명
- 끝점을 스크랩할 때 사용할 TLS 구성
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 서버 인증서를 확인할 때 사용되는 인증 기관입니다. |
|
| 대상에 사용할 Prometheus 컨테이너의 CA 인증서 경로입니다. |
|
| 클라이언트 인증을 수행할 때 제공할 클라이언트 인증서입니다. |
|
| 대상의 Prometheus 컨테이너에 있는 클라이언트 인증서 파일의 경로입니다. |
|
| 대상 인증서 검증을 비활성화합니다. |
|
| 대상의 Prometheus 컨테이너에 있는 클라이언트 키 파일의 경로입니다. |
|
| 대상에 대한 클라이언트 키 파일이 포함된 시크릿입니다. |
|
| 대상의 호스트 이름을 확인하는 데 사용됩니다. |
8.1.22. .spec.endpoints[].tlsConfig.ca
- 설명
- 서버 인증서를 확인할 때 사용되는 인증 기관입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 대상에 사용할 데이터가 포함된 ConfigMap입니다. |
|
| 대상에 사용할 데이터가 포함된 시크릿입니다. |
8.1.23. .spec.endpoints[].tlsConfig.ca.configMap
- 설명
- 대상에 사용할 데이터가 포함된 ConfigMap입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 키입니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| ConfigMap 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.24. .spec.endpoints[].tlsConfig.ca.secret
- 설명
- 대상에 사용할 데이터가 포함된 시크릿입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.25. .spec.endpoints[].tlsConfig.cert
- 설명
- 클라이언트 인증을 수행할 때 제공할 클라이언트 인증서입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 대상에 사용할 데이터가 포함된 ConfigMap입니다. |
|
| 대상에 사용할 데이터가 포함된 시크릿입니다. |
8.1.26. .spec.endpoints[].tlsConfig.cert.configMap
- 설명
- 대상에 사용할 데이터가 포함된 ConfigMap입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 키입니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| ConfigMap 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.27. .spec.endpoints[].tlsConfig.cert.secret
- 설명
- 대상에 사용할 데이터가 포함된 시크릿입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.28. .spec.endpoints[].tlsConfig.keySecret
- 설명
- 대상에 대한 클라이언트 키 파일이 포함된 시크릿입니다.
- 유형
-
object
- 필수 항목
-
key
-
속성 | 유형 | 설명 |
---|---|---|
|
| 선택할 시크릿의 키입니다. 유효한 시크릿 키여야 합니다. |
|
| 추천자의 이름입니다. 자세한 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: 기타 유용한 필드를 추가합니다. apiVersion, kind, uid? |
|
| 시크릿 또는 해당 키를 정의해야 하는지 여부를 지정합니다. |
8.1.29. .spec.namespaceSelector
- 설명
- Kubernetes 끝점 개체가 검색되는 네임스페이스를 선택하는 선택기입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 부울은 모든 네임스페이스를 제한하는 목록과 달리 모든 네임스페이스를 선택하는지 여부를 설명합니다. |
|
| 선택할 네임스페이스 이름 목록입니다. |
8.1.30. .spec.selector
- 설명
- 끝점 오브젝트를 선택하는 선택기입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다. |
|
| 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다. |
|
| matchLabels는 {key,value} 쌍으로 구성된 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자는 "In"이고, values 배열에는 "value"만 포함된 matchExpressions 요소와 동일합니다. 요구 사항은 AND로 설정됩니다. |
8.1.31. .spec.selector.matchExpressions
- 설명
- matchExpressions는 라벨 선택기 요구 사항 목록입니다. 요구 사항은 AND로 설정됩니다.
- 유형
-
array
8.1.32. .spec.selector.matchExpressions[]
- 설명
- 레이블 선택기 요구 사항은 값, 키 및 키와 관련된 연산자를 포함하는 선택기입니다.
- 유형
-
object
- 필수 항목
-
key
-
operator
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 선택기가 적용되는 라벨 키입니다. |
|
| Operator는 일련의 값과의 키 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. |
|
| 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn인 경우 값 배열은 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist인 경우 값 배열은 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 교체됩니다. |