k8s.io/perf-tests/clusterloader2@v0.0.0-20240304094227-64bdb12da87e/pkg/prometheus/manifests/0prometheus-operator-0podmonitorCustomResourceDefinition.yaml (about)

     1  apiVersion: apiextensions.k8s.io/v1
     2  kind: CustomResourceDefinition
     3  metadata:
     4    annotations:
     5      controller-gen.kubebuilder.io/version: v0.4.1
     6    creationTimestamp: null
     7    name: podmonitors.monitoring.coreos.com
     8  spec:
     9    group: monitoring.coreos.com
    10    names:
    11      kind: PodMonitor
    12      listKind: PodMonitorList
    13      plural: podmonitors
    14      singular: podmonitor
    15    scope: Namespaced
    16    versions:
    17    - name: v1
    18      schema:
    19        openAPIV3Schema:
    20          description: PodMonitor defines monitoring for a set of pods.
    21          properties:
    22            apiVersion:
    23              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'
    24              type: string
    25            kind:
    26              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'
    27              type: string
    28            metadata:
    29              type: object
    30            spec:
    31              description: Specification of desired Pod selection for target discovery by Prometheus.
    32              properties:
    33                jobLabel:
    34                  description: The label to use to retrieve the job name from.
    35                  type: string
    36                namespaceSelector:
    37                  description: Selector to select which namespaces the Endpoints objects are discovered from.
    38                  properties:
    39                    any:
    40                      description: Boolean describing whether all namespaces are selected in contrast to a list restricting them.
    41                      type: boolean
    42                    matchNames:
    43                      description: List of namespace names.
    44                      items:
    45                        type: string
    46                      type: array
    47                  type: object
    48                podMetricsEndpoints:
    49                  description: A list of endpoints allowed as part of this PodMonitor.
    50                  items:
    51                    description: PodMetricsEndpoint defines a scrapeable endpoint of a Kubernetes Pod serving Prometheus metrics.
    52                    properties:
    53                      basicAuth:
    54                        description: 'BasicAuth allow an endpoint to authenticate over basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint'
    55                        properties:
    56                          password:
    57                            description: The secret in the service monitor namespace that contains the password for authentication.
    58                            properties:
    59                              key:
    60                                description: The key of the secret to select from.  Must be a valid secret key.
    61                                type: string
    62                              name:
    63                                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?'
    64                                type: string
    65                              optional:
    66                                description: Specify whether the Secret or its key must be defined
    67                                type: boolean
    68                            required:
    69                            - key
    70                            type: object
    71                          username:
    72                            description: The secret in the service monitor namespace that contains the username for authentication.
    73                            properties:
    74                              key:
    75                                description: The key of the secret to select from.  Must be a valid secret key.
    76                                type: string
    77                              name:
    78                                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?'
    79                                type: string
    80                              optional:
    81                                description: Specify whether the Secret or its key must be defined
    82                                type: boolean
    83                            required:
    84                            - key
    85                            type: object
    86                        type: object
    87                      bearerTokenSecret:
    88                        description: Secret to mount to read bearer token for scraping targets. The secret needs to be in the same namespace as the pod monitor and accessible by the Prometheus Operator.
    89                        properties:
    90                          key:
    91                            description: The key of the secret to select from.  Must be a valid secret key.
    92                            type: string
    93                          name:
    94                            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?'
    95                            type: string
    96                          optional:
    97                            description: Specify whether the Secret or its key must be defined
    98                            type: boolean
    99                        required:
   100                        - key
   101                        type: object
   102                      honorLabels:
   103                        description: HonorLabels chooses the metric's labels on collisions with target labels.
   104                        type: boolean
   105                      honorTimestamps:
   106                        description: HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data.
   107                        type: boolean
   108                      interval:
   109                        description: Interval at which metrics should be scraped
   110                        type: string
   111                      metricRelabelings:
   112                        description: MetricRelabelConfigs to apply to samples before ingestion.
   113                        items:
   114                          description: 'RelabelConfig allows dynamic rewriting of the label set, being applied to samples before ingestion. It defines `<metric_relabel_configs>`-section of Prometheus configuration. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs'
   115                          properties:
   116                            action:
   117                              description: Action to perform based on regex matching. Default is 'replace'
   118                              type: string
   119                            modulus:
   120                              description: Modulus to take of the hash of the source label values.
   121                              format: int64
   122                              type: integer
   123                            regex:
   124                              description: Regular expression against which the extracted value is matched. Default is '(.*)'
   125                              type: string
   126                            replacement:
   127                              description: Replacement value against which a regex replace is performed if the regular expression matches. Regex capture groups are available. Default is '$1'
   128                              type: string
   129                            separator:
   130                              description: Separator placed between concatenated source label values. default is ';'.
   131                              type: string
   132                            sourceLabels:
   133                              description: The source labels select values from existing labels. Their content is concatenated using the configured separator and matched against the configured regular expression for the replace, keep, and drop actions.
   134                              items:
   135                                type: string
   136                              type: array
   137                            targetLabel:
   138                              description: Label to which the resulting value is written in a replace action. It is mandatory for replace actions. Regex capture groups are available.
   139                              type: string
   140                          type: object
   141                        type: array
   142                      params:
   143                        additionalProperties:
   144                          items:
   145                            type: string
   146                          type: array
   147                        description: Optional HTTP URL parameters
   148                        type: object
   149                      path:
   150                        description: HTTP path to scrape for metrics.
   151                        type: string
   152                      port:
   153                        description: Name of the pod port this endpoint refers to. Mutually exclusive with targetPort.
   154                        type: string
   155                      proxyUrl:
   156                        description: ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.
   157                        type: string
   158                      relabelings:
   159                        description: 'RelabelConfigs to apply to samples before ingestion. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config'
   160                        items:
   161                          description: 'RelabelConfig allows dynamic rewriting of the label set, being applied to samples before ingestion. It defines `<metric_relabel_configs>`-section of Prometheus configuration. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs'
   162                          properties:
   163                            action:
   164                              description: Action to perform based on regex matching. Default is 'replace'
   165                              type: string
   166                            modulus:
   167                              description: Modulus to take of the hash of the source label values.
   168                              format: int64
   169                              type: integer
   170                            regex:
   171                              description: Regular expression against which the extracted value is matched. Default is '(.*)'
   172                              type: string
   173                            replacement:
   174                              description: Replacement value against which a regex replace is performed if the regular expression matches. Regex capture groups are available. Default is '$1'
   175                              type: string
   176                            separator:
   177                              description: Separator placed between concatenated source label values. default is ';'.
   178                              type: string
   179                            sourceLabels:
   180                              description: The source labels select values from existing labels. Their content is concatenated using the configured separator and matched against the configured regular expression for the replace, keep, and drop actions.
   181                              items:
   182                                type: string
   183                              type: array
   184                            targetLabel:
   185                              description: Label to which the resulting value is written in a replace action. It is mandatory for replace actions. Regex capture groups are available.
   186                              type: string
   187                          type: object
   188                        type: array
   189                      scheme:
   190                        description: HTTP scheme to use for scraping.
   191                        type: string
   192                      scrapeTimeout:
   193                        description: Timeout after which the scrape is ended
   194                        type: string
   195                      targetPort:
   196                        anyOf:
   197                        - type: integer
   198                        - type: string
   199                        description: 'Deprecated: Use ''port'' instead.'
   200                        x-kubernetes-int-or-string: true
   201                      tlsConfig:
   202                        description: TLS configuration to use when scraping the endpoint.
   203                        properties:
   204                          ca:
   205                            description: Struct containing the CA cert to use for the targets.
   206                            properties:
   207                              configMap:
   208                                description: ConfigMap containing data to use for the targets.
   209                                properties:
   210                                  key:
   211                                    description: The key to select.
   212                                    type: string
   213                                  name:
   214                                    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?'
   215                                    type: string
   216                                  optional:
   217                                    description: Specify whether the ConfigMap or its key must be defined
   218                                    type: boolean
   219                                required:
   220                                - key
   221                                type: object
   222                              secret:
   223                                description: Secret containing data to use for the targets.
   224                                properties:
   225                                  key:
   226                                    description: The key of the secret to select from.  Must be a valid secret key.
   227                                    type: string
   228                                  name:
   229                                    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?'
   230                                    type: string
   231                                  optional:
   232                                    description: Specify whether the Secret or its key must be defined
   233                                    type: boolean
   234                                required:
   235                                - key
   236                                type: object
   237                            type: object
   238                          cert:
   239                            description: Struct containing the client cert file for the targets.
   240                            properties:
   241                              configMap:
   242                                description: ConfigMap containing data to use for the targets.
   243                                properties:
   244                                  key:
   245                                    description: The key to select.
   246                                    type: string
   247                                  name:
   248                                    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?'
   249                                    type: string
   250                                  optional:
   251                                    description: Specify whether the ConfigMap or its key must be defined
   252                                    type: boolean
   253                                required:
   254                                - key
   255                                type: object
   256                              secret:
   257                                description: Secret containing data to use for the targets.
   258                                properties:
   259                                  key:
   260                                    description: The key of the secret to select from.  Must be a valid secret key.
   261                                    type: string
   262                                  name:
   263                                    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?'
   264                                    type: string
   265                                  optional:
   266                                    description: Specify whether the Secret or its key must be defined
   267                                    type: boolean
   268                                required:
   269                                - key
   270                                type: object
   271                            type: object
   272                          insecureSkipVerify:
   273                            description: Disable target certificate validation.
   274                            type: boolean
   275                          keySecret:
   276                            description: Secret containing the client key file for the targets.
   277                            properties:
   278                              key:
   279                                description: The key of the secret to select from.  Must be a valid secret key.
   280                                type: string
   281                              name:
   282                                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?'
   283                                type: string
   284                              optional:
   285                                description: Specify whether the Secret or its key must be defined
   286                                type: boolean
   287                            required:
   288                            - key
   289                            type: object
   290                          serverName:
   291                            description: Used to verify the hostname for the targets.
   292                            type: string
   293                        type: object
   294                    type: object
   295                  type: array
   296                podTargetLabels:
   297                  description: PodTargetLabels transfers labels on the Kubernetes Pod onto the target.
   298                  items:
   299                    type: string
   300                  type: array
   301                sampleLimit:
   302                  description: SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.
   303                  format: int64
   304                  type: integer
   305                selector:
   306                  description: Selector to select Pod objects.
   307                  properties:
   308                    matchExpressions:
   309                      description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
   310                      items:
   311                        description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
   312                        properties:
   313                          key:
   314                            description: key is the label key that the selector applies to.
   315                            type: string
   316                          operator:
   317                            description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
   318                            type: string
   319                          values:
   320                            description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
   321                            items:
   322                              type: string
   323                            type: array
   324                        required:
   325                        - key
   326                        - operator
   327                        type: object
   328                      type: array
   329                    matchLabels:
   330                      additionalProperties:
   331                        type: string
   332                      description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
   333                      type: object
   334                  type: object
   335                targetLimit:
   336                  description: TargetLimit defines a limit on the number of scraped targets that will be accepted.
   337                  format: int64
   338                  type: integer
   339              required:
   340              - podMetricsEndpoints
   341              - selector
   342              type: object
   343          required:
   344          - spec
   345          type: object
   346      served: true
   347      storage: true
   348  status:
   349    acceptedNames:
   350      kind: ""
   351      plural: ""
   352    conditions: []
   353    storedVersions: []