1296 lines
66 KiB
YAML
1296 lines
66 KiB
YAML
# https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.69.1/example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.11.1
|
|
operator.prometheus.io/version: 0.69.1
|
|
argocd.argoproj.io/sync-options: ServerSideApply=true
|
|
creationTimestamp: null
|
|
name: scrapeconfigs.monitoring.coreos.com
|
|
spec:
|
|
group: monitoring.coreos.com
|
|
names:
|
|
categories:
|
|
- prometheus-operator
|
|
kind: ScrapeConfig
|
|
listKind: ScrapeConfigList
|
|
plural: scrapeconfigs
|
|
shortNames:
|
|
- scfg
|
|
singular: scrapeconfig
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: ScrapeConfig defines a namespaced Prometheus scrape_config to
|
|
be aggregated across multiple namespaces into the Prometheus configuration.
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: ScrapeConfigSpec is a specification of the desired configuration
|
|
for a scrape configuration.
|
|
properties:
|
|
authorization:
|
|
description: Authorization header to use on every scrape request.
|
|
properties:
|
|
credentials:
|
|
description: Selects a key of a Secret in the namespace that contains
|
|
the credentials for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type:
|
|
description: "Defines the authentication type. The value is case-insensitive.
|
|
\n \"Basic\" is not a supported value. \n Default: \"Bearer\""
|
|
type: string
|
|
type: object
|
|
basicAuth:
|
|
description: BasicAuth information to use on every scrape request.
|
|
properties:
|
|
password:
|
|
description: The secret in the service monitor namespace that
|
|
contains the password for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
username:
|
|
description: The secret in the service monitor namespace that
|
|
contains the username for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
consulSDConfigs:
|
|
description: ConsulSDConfigs defines a list of Consul service discovery
|
|
configurations.
|
|
items:
|
|
description: ConsulSDConfig defines a Consul service discovery configuration
|
|
See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#consul_sd_config
|
|
properties:
|
|
allow_stale:
|
|
description: Allow stale Consul results (see https://www.consul.io/api/features/consistency.html).
|
|
Will reduce load on Consul. If unset, Prometheus uses its
|
|
default value.
|
|
type: boolean
|
|
authorization:
|
|
description: Authorization header configuration to authenticate
|
|
against the Consul Server.
|
|
properties:
|
|
credentials:
|
|
description: Selects a key of a Secret in the namespace
|
|
that contains the credentials for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type:
|
|
description: "Defines the authentication type. The value
|
|
is case-insensitive. \n \"Basic\" is not a supported value.
|
|
\n Default: \"Bearer\""
|
|
type: string
|
|
type: object
|
|
basicAuth:
|
|
description: 'BasicAuth information to authenticate against
|
|
the Consul Server. More info: https://prometheus.io/docs/operating/configuration/#endpoints'
|
|
properties:
|
|
password:
|
|
description: The secret in the service monitor namespace
|
|
that contains the password for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
username:
|
|
description: The secret in the service monitor namespace
|
|
that contains the username for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
datacenter:
|
|
description: Consul Datacenter name, if not provided it will
|
|
use the local Consul Agent Datacenter.
|
|
type: string
|
|
enable_http2:
|
|
description: Whether to enable HTTP2. If unset, Prometheus uses
|
|
its default value.
|
|
type: boolean
|
|
follow_redirects:
|
|
description: Configure whether HTTP requests follow HTTP 3xx
|
|
redirects. If unset, Prometheus uses its default value.
|
|
type: boolean
|
|
namespace:
|
|
description: Namespaces are only supported in Consul Enterprise.
|
|
type: string
|
|
no_proxy:
|
|
description: Comma-separated string that can contain IPs, CIDR
|
|
notation, domain names that should be excluded from proxying.
|
|
IP and domain names can contain port numbers.
|
|
type: string
|
|
node_meta:
|
|
additionalProperties:
|
|
type: string
|
|
description: Node metadata key/value pairs to filter nodes for
|
|
a given service.
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
oauth2:
|
|
description: Optional OAuth 2.0 configuration.
|
|
properties:
|
|
clientId:
|
|
description: The secret or configmap containing the OAuth2
|
|
client id
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its
|
|
key must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
clientSecret:
|
|
description: The secret containing the OAuth2 client secret
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
endpointParams:
|
|
additionalProperties:
|
|
type: string
|
|
description: Parameters to append to the token URL
|
|
type: object
|
|
scopes:
|
|
description: OAuth2 scopes used for the token request
|
|
items:
|
|
type: string
|
|
type: array
|
|
tokenUrl:
|
|
description: The URL to fetch the token from
|
|
minLength: 1
|
|
type: string
|
|
required:
|
|
- clientId
|
|
- clientSecret
|
|
- tokenUrl
|
|
type: object
|
|
partition:
|
|
description: Admin Partitions are only supported in Consul Enterprise.
|
|
type: string
|
|
proxy_connect_header:
|
|
additionalProperties:
|
|
description: SecretKeySelector selects a key of a Secret.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
description: Specifies headers to send to proxies during CONNECT
|
|
requests.
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
proxy_from_environment:
|
|
description: Use proxy URL indicated by environment variables
|
|
(HTTP_PROXY, https_proxy, HTTPs_PROXY, https_proxy, and no_proxy)
|
|
If unset, Prometheus uses its default value.
|
|
type: boolean
|
|
proxy_url:
|
|
description: Optional proxy URL.
|
|
type: string
|
|
refresh_interval:
|
|
description: The time after which the provided names are refreshed.
|
|
On large setup it might be a good idea to increase this value
|
|
because the catalog will change all the time. If unset, Prometheus
|
|
uses its default value.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
scheme:
|
|
description: HTTP Scheme default "http"
|
|
enum:
|
|
- HTTP
|
|
- HTTPS
|
|
type: string
|
|
server:
|
|
description: A valid string consisting of a hostname or IP followed
|
|
by an optional port number.
|
|
minLength: 1
|
|
type: string
|
|
services:
|
|
description: A list of services for which targets are retrieved.
|
|
If omitted, all services are scraped.
|
|
items:
|
|
type: string
|
|
type: array
|
|
x-kubernetes-list-type: atomic
|
|
tag_separator:
|
|
description: The string by which Consul tags are joined into
|
|
the tag label. If unset, Prometheus uses its default value.
|
|
type: string
|
|
tags:
|
|
description: An optional list of tags used to filter nodes for
|
|
a given service. Services must contain all tags in the list.
|
|
items:
|
|
type: string
|
|
type: array
|
|
x-kubernetes-list-type: atomic
|
|
tlsConfig:
|
|
description: TLS Config
|
|
properties:
|
|
ca:
|
|
description: Certificate authority used when verifying server
|
|
certificates.
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its
|
|
key must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
cert:
|
|
description: Client certificate to present when doing client-authentication.
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its
|
|
key must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
insecureSkipVerify:
|
|
description: Disable target certificate validation.
|
|
type: boolean
|
|
keySecret:
|
|
description: Secret containing the client key file for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
serverName:
|
|
description: Used to verify the hostname for the targets.
|
|
type: string
|
|
type: object
|
|
tokenRef:
|
|
description: Consul ACL TokenRef, if not provided it will use
|
|
the ACL from the local Consul Agent.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
required:
|
|
- server
|
|
type: object
|
|
type: array
|
|
dnsSDConfigs:
|
|
description: DNSSDConfigs defines a list of DNS service discovery
|
|
configurations.
|
|
items:
|
|
description: DNSSDConfig allows specifying a set of DNS domain names
|
|
which are periodically queried to discover a list of targets.
|
|
The DNS servers to be contacted are read from /etc/resolv.conf.
|
|
See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#dns_sd_config
|
|
properties:
|
|
names:
|
|
description: A list of DNS domain names to be queried.
|
|
items:
|
|
type: string
|
|
minItems: 1
|
|
type: array
|
|
port:
|
|
description: The port number used if the query type is not SRV
|
|
Ignored for SRV records
|
|
type: integer
|
|
refreshInterval:
|
|
description: RefreshInterval configures the time after which
|
|
the provided names are refreshed. If not set, Prometheus uses
|
|
its default value.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
type:
|
|
description: The type of DNS query to perform. One of SRV, A,
|
|
AAAA or MX. If not set, Prometheus uses its default value.
|
|
enum:
|
|
- SRV
|
|
- A
|
|
- AAAA
|
|
- MX
|
|
type: string
|
|
required:
|
|
- names
|
|
type: object
|
|
type: array
|
|
ec2SDConfigs:
|
|
description: EC2SDConfigs defines a list of EC2 service discovery
|
|
configurations.
|
|
items:
|
|
description: EC2SDConfig allow retrieving scrape targets from AWS
|
|
EC2 instances. The private IP address is used by default, but
|
|
may be changed to the public IP address with relabeling. The IAM
|
|
credentials used must have the ec2:DescribeInstances permission
|
|
to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config
|
|
properties:
|
|
accessKey:
|
|
description: AccessKey is the AWS API key.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
filters:
|
|
description: 'Filters can be used optionally to filter the instance
|
|
list by other criteria. Available filter criteria can be found
|
|
here: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html
|
|
Filter API documentation: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Filter.html'
|
|
items:
|
|
description: EC2Filter is the configuration for filtering
|
|
EC2 instances.
|
|
properties:
|
|
name:
|
|
type: string
|
|
values:
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- name
|
|
- values
|
|
type: object
|
|
type: array
|
|
port:
|
|
description: The port to scrape metrics from. If using the public
|
|
IP address, this must instead be specified in the relabeling
|
|
rule.
|
|
type: integer
|
|
refreshInterval:
|
|
description: RefreshInterval configures the refresh interval
|
|
at which Prometheus will re-read the instance list.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
region:
|
|
description: The AWS region
|
|
type: string
|
|
roleARN:
|
|
description: AWS Role ARN, an alternative to using AWS API keys.
|
|
type: string
|
|
secretKey:
|
|
description: SecretKey is the AWS API secret.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
type: object
|
|
type: array
|
|
fileSDConfigs:
|
|
description: FileSDConfigs defines a list of file service discovery
|
|
configurations.
|
|
items:
|
|
description: FileSDConfig defines a Prometheus file service discovery
|
|
configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#file_sd_config
|
|
properties:
|
|
files:
|
|
description: 'List of files to be used for file discovery. Recommendation:
|
|
use absolute paths. While relative paths work, the prometheus-operator
|
|
project makes no guarantees about the working directory where
|
|
the configuration file is stored. Files must be mounted using
|
|
Prometheus.ConfigMaps or Prometheus.Secrets.'
|
|
items:
|
|
description: SDFile represents a file used for service discovery
|
|
pattern: ^[^*]*(\*[^/]*)?\.(json|yml|yaml|JSON|YML|YAML)$
|
|
type: string
|
|
minItems: 1
|
|
type: array
|
|
refreshInterval:
|
|
description: RefreshInterval configures the refresh interval
|
|
at which Prometheus will reload the content of the files.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
required:
|
|
- files
|
|
type: object
|
|
type: array
|
|
honorLabels:
|
|
description: HonorLabels chooses the metric's labels on collisions
|
|
with target labels.
|
|
type: boolean
|
|
honorTimestamps:
|
|
description: HonorTimestamps controls whether Prometheus respects
|
|
the timestamps present in scraped data.
|
|
type: boolean
|
|
httpSDConfigs:
|
|
description: HTTPSDConfigs defines a list of HTTP service discovery
|
|
configurations.
|
|
items:
|
|
description: HTTPSDConfig defines a prometheus HTTP service discovery
|
|
configuration See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#http_sd_config
|
|
properties:
|
|
authorization:
|
|
description: Authorization header configuration to authenticate
|
|
against the target HTTP endpoint.
|
|
properties:
|
|
credentials:
|
|
description: Selects a key of a Secret in the namespace
|
|
that contains the credentials for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type:
|
|
description: "Defines the authentication type. The value
|
|
is case-insensitive. \n \"Basic\" is not a supported value.
|
|
\n Default: \"Bearer\""
|
|
type: string
|
|
type: object
|
|
basicAuth:
|
|
description: 'BasicAuth information to authenticate against
|
|
the target HTTP endpoint. More info: https://prometheus.io/docs/operating/configuration/#endpoints'
|
|
properties:
|
|
password:
|
|
description: The secret in the service monitor namespace
|
|
that contains the password for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
username:
|
|
description: The secret in the service monitor namespace
|
|
that contains the username for authentication.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
refreshInterval:
|
|
description: RefreshInterval configures the refresh interval
|
|
at which Prometheus will re-query the endpoint to update the
|
|
target list.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
tlsConfig:
|
|
description: TLS configuration applying to the target HTTP endpoint.
|
|
properties:
|
|
ca:
|
|
description: Certificate authority used when verifying server
|
|
certificates.
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its
|
|
key must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
cert:
|
|
description: Client certificate to present when doing client-authentication.
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its
|
|
key must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind,
|
|
uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
insecureSkipVerify:
|
|
description: Disable target certificate validation.
|
|
type: boolean
|
|
keySecret:
|
|
description: Secret containing the client key file for the
|
|
targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
serverName:
|
|
description: Used to verify the hostname for the targets.
|
|
type: string
|
|
type: object
|
|
url:
|
|
description: URL from which the targets are fetched.
|
|
minLength: 1
|
|
pattern: ^http(s)?://.+$
|
|
type: string
|
|
required:
|
|
- url
|
|
type: object
|
|
type: array
|
|
keepDroppedTargets:
|
|
description: "Per-scrape limit on the number of targets dropped by
|
|
relabeling that will be kept in memory. 0 means no limit. \n It
|
|
requires Prometheus >= v2.47.0."
|
|
format: int64
|
|
type: integer
|
|
kubernetesSDConfigs:
|
|
description: KubernetesSDConfigs defines a list of Kubernetes service
|
|
discovery configurations.
|
|
items:
|
|
description: KubernetesSDConfig allows retrieving scrape targets
|
|
from Kubernetes' REST API. See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config
|
|
properties:
|
|
role:
|
|
description: Role of the Kubernetes entities that should be
|
|
discovered.
|
|
enum:
|
|
- Node
|
|
- node
|
|
type: string
|
|
selectors:
|
|
description: Selector to select objects.
|
|
items:
|
|
description: K8SSelectorConfig is Kubernetes Selector Config
|
|
properties:
|
|
field:
|
|
type: string
|
|
label:
|
|
type: string
|
|
role:
|
|
description: K8SRole is role of the service in Kubernetes.
|
|
Currently the only supported role is "Node".
|
|
enum:
|
|
- Node
|
|
- node
|
|
type: string
|
|
required:
|
|
- role
|
|
type: object
|
|
type: array
|
|
x-kubernetes-list-map-keys:
|
|
- role
|
|
x-kubernetes-list-type: map
|
|
required:
|
|
- role
|
|
type: object
|
|
type: array
|
|
labelLimit:
|
|
description: Per-scrape limit on number of labels that will be accepted
|
|
for a sample. Only valid in Prometheus versions 2.27.0 and newer.
|
|
format: int64
|
|
type: integer
|
|
labelNameLengthLimit:
|
|
description: Per-scrape limit on length of labels name that will be
|
|
accepted for a sample. Only valid in Prometheus versions 2.27.0
|
|
and newer.
|
|
format: int64
|
|
type: integer
|
|
labelValueLengthLimit:
|
|
description: Per-scrape limit on length of labels value that will
|
|
be accepted for a sample. Only valid in Prometheus versions 2.27.0
|
|
and newer.
|
|
format: int64
|
|
type: integer
|
|
metricRelabelings:
|
|
description: MetricRelabelConfigs to apply to samples before ingestion.
|
|
items:
|
|
description: "RelabelConfig allows dynamic rewriting of the label
|
|
set for targets, alerts, scraped samples and remote write samples.
|
|
\n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
|
|
properties:
|
|
action:
|
|
default: replace
|
|
description: "Action to perform based on the regex matching.
|
|
\n `Uppercase` and `Lowercase` actions require Prometheus
|
|
>= v2.36.0. `DropEqual` and `KeepEqual` actions require Prometheus
|
|
>= v2.41.0. \n Default: \"Replace\""
|
|
enum:
|
|
- replace
|
|
- Replace
|
|
- keep
|
|
- Keep
|
|
- drop
|
|
- Drop
|
|
- hashmod
|
|
- HashMod
|
|
- labelmap
|
|
- LabelMap
|
|
- labeldrop
|
|
- LabelDrop
|
|
- labelkeep
|
|
- LabelKeep
|
|
- lowercase
|
|
- Lowercase
|
|
- uppercase
|
|
- Uppercase
|
|
- keepequal
|
|
- KeepEqual
|
|
- dropequal
|
|
- DropEqual
|
|
type: string
|
|
modulus:
|
|
description: "Modulus to take of the hash of the source label
|
|
values. \n Only applicable when the action is `HashMod`."
|
|
format: int64
|
|
type: integer
|
|
regex:
|
|
description: Regular expression against which the extracted
|
|
value is matched.
|
|
type: string
|
|
replacement:
|
|
description: "Replacement value against which a Replace action
|
|
is performed if the regular expression matches. \n Regex capture
|
|
groups are available."
|
|
type: string
|
|
separator:
|
|
description: Separator is the string between concatenated SourceLabels.
|
|
type: string
|
|
sourceLabels:
|
|
description: The source labels select values from existing labels.
|
|
Their content is concatenated using the configured Separator
|
|
and matched against the configured regular expression.
|
|
items:
|
|
description: LabelName is a valid Prometheus label name which
|
|
may only contain ASCII letters, numbers, as well as underscores.
|
|
pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
|
|
type: string
|
|
type: array
|
|
targetLabel:
|
|
description: "Label to which the resulting string is written
|
|
in a replacement. \n It is mandatory for `Replace`, `HashMod`,
|
|
`Lowercase`, `Uppercase`, `KeepEqual` and `DropEqual` actions.
|
|
\n Regex capture groups are available."
|
|
type: string
|
|
type: object
|
|
type: array
|
|
metricsPath:
|
|
description: MetricsPath HTTP path to scrape for metrics. If empty,
|
|
Prometheus uses the default value (e.g. /metrics).
|
|
type: string
|
|
params:
|
|
additionalProperties:
|
|
items:
|
|
type: string
|
|
type: array
|
|
description: Optional HTTP URL parameters
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
relabelings:
|
|
description: 'RelabelConfigs defines how to rewrite the target''s
|
|
labels before scraping. Prometheus Operator automatically adds relabelings
|
|
for a few standard Kubernetes fields. The original scrape job''s
|
|
name is available via the `__tmp_prometheus_job_name` label. More
|
|
info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config'
|
|
items:
|
|
description: "RelabelConfig allows dynamic rewriting of the label
|
|
set for targets, alerts, scraped samples and remote write samples.
|
|
\n More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config"
|
|
properties:
|
|
action:
|
|
default: replace
|
|
description: "Action to perform based on the regex matching.
|
|
\n `Uppercase` and `Lowercase` actions require Prometheus
|
|
>= v2.36.0. `DropEqual` and `KeepEqual` actions require Prometheus
|
|
>= v2.41.0. \n Default: \"Replace\""
|
|
enum:
|
|
- replace
|
|
- Replace
|
|
- keep
|
|
- Keep
|
|
- drop
|
|
- Drop
|
|
- hashmod
|
|
- HashMod
|
|
- labelmap
|
|
- LabelMap
|
|
- labeldrop
|
|
- LabelDrop
|
|
- labelkeep
|
|
- LabelKeep
|
|
- lowercase
|
|
- Lowercase
|
|
- uppercase
|
|
- Uppercase
|
|
- keepequal
|
|
- KeepEqual
|
|
- dropequal
|
|
- DropEqual
|
|
type: string
|
|
modulus:
|
|
description: "Modulus to take of the hash of the source label
|
|
values. \n Only applicable when the action is `HashMod`."
|
|
format: int64
|
|
type: integer
|
|
regex:
|
|
description: Regular expression against which the extracted
|
|
value is matched.
|
|
type: string
|
|
replacement:
|
|
description: "Replacement value against which a Replace action
|
|
is performed if the regular expression matches. \n Regex capture
|
|
groups are available."
|
|
type: string
|
|
separator:
|
|
description: Separator is the string between concatenated SourceLabels.
|
|
type: string
|
|
sourceLabels:
|
|
description: The source labels select values from existing labels.
|
|
Their content is concatenated using the configured Separator
|
|
and matched against the configured regular expression.
|
|
items:
|
|
description: LabelName is a valid Prometheus label name which
|
|
may only contain ASCII letters, numbers, as well as underscores.
|
|
pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
|
|
type: string
|
|
type: array
|
|
targetLabel:
|
|
description: "Label to which the resulting string is written
|
|
in a replacement. \n It is mandatory for `Replace`, `HashMod`,
|
|
`Lowercase`, `Uppercase`, `KeepEqual` and `DropEqual` actions.
|
|
\n Regex capture groups are available."
|
|
type: string
|
|
type: object
|
|
type: array
|
|
sampleLimit:
|
|
description: SampleLimit defines per-scrape limit on number of scraped
|
|
samples that will be accepted.
|
|
format: int64
|
|
type: integer
|
|
scheme:
|
|
description: Configures the protocol scheme used for requests. If
|
|
empty, Prometheus uses HTTP by default.
|
|
enum:
|
|
- HTTP
|
|
- HTTPS
|
|
type: string
|
|
scrapeInterval:
|
|
description: ScrapeInterval is the interval between consecutive scrapes.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
scrapeTimeout:
|
|
description: ScrapeTimeout is the number of seconds to wait until
|
|
a scrape request times out.
|
|
pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
|
|
type: string
|
|
staticConfigs:
|
|
description: StaticConfigs defines a list of static targets with a
|
|
common label set.
|
|
items:
|
|
description: StaticConfig defines a Prometheus static configuration.
|
|
See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config
|
|
properties:
|
|
labels:
|
|
additionalProperties:
|
|
type: string
|
|
description: Labels assigned to all metrics scraped from the
|
|
targets.
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
targets:
|
|
description: List of targets for this static configuration.
|
|
items:
|
|
description: Target represents a target for Prometheus to
|
|
scrape
|
|
type: string
|
|
type: array
|
|
type: object
|
|
type: array
|
|
targetLimit:
|
|
description: TargetLimit defines a limit on the number of scraped
|
|
targets that will be accepted.
|
|
format: int64
|
|
type: integer
|
|
tlsConfig:
|
|
description: TLS configuration to use on every scrape request
|
|
properties:
|
|
ca:
|
|
description: Certificate authority used when verifying server
|
|
certificates.
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
cert:
|
|
description: Client certificate to present when doing client-authentication.
|
|
properties:
|
|
configMap:
|
|
description: ConfigMap containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key to select.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the ConfigMap or its key
|
|
must be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
secret:
|
|
description: Secret containing data to use for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must
|
|
be a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must
|
|
be defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
type: object
|
|
insecureSkipVerify:
|
|
description: Disable target certificate validation.
|
|
type: boolean
|
|
keySecret:
|
|
description: Secret containing the client key file for the targets.
|
|
properties:
|
|
key:
|
|
description: The key of the secret to select from. Must be
|
|
a valid secret key.
|
|
type: string
|
|
name:
|
|
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
|
|
TODO: Add other useful fields. apiVersion, kind, uid?'
|
|
type: string
|
|
optional:
|
|
description: Specify whether the Secret or its key must be
|
|
defined
|
|
type: boolean
|
|
required:
|
|
- key
|
|
type: object
|
|
x-kubernetes-map-type: atomic
|
|
serverName:
|
|
description: Used to verify the hostname for the targets.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
required:
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|