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: []