Skip to content
Snippets Groups Projects
prometheus-operator-0prometheusCustomResourceDefinition.yaml 319 KiB
Newer Older
Jesse Bye's avatar
Jesse Bye committed
                          description: The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime.
paulfantom's avatar
paulfantom committed
                          properties:
                            add:
                              description: Added capabilities
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: Capability represent POSIX capabilities type
paulfantom's avatar
paulfantom committed
                                type: string
                              type: array
                            drop:
                              description: Removed capabilities
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: Capability represent POSIX capabilities type
paulfantom's avatar
paulfantom committed
                                type: string
                              type: array
                          type: object
                        privileged:
Jesse Bye's avatar
Jesse Bye committed
                          description: Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        procMount:
Jesse Bye's avatar
Jesse Bye committed
                          description: procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled.
                          type: string
paulfantom's avatar
paulfantom committed
                        readOnlyRootFilesystem:
Jesse Bye's avatar
Jesse Bye committed
                          description: Whether this container has a read-only root filesystem. Default is false.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        runAsGroup:
Jesse Bye's avatar
Jesse Bye committed
                          description: The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          format: int64
                          type: integer
                        runAsNonRoot:
Jesse Bye's avatar
Jesse Bye committed
                          description: Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          type: boolean
                        runAsUser:
Jesse Bye's avatar
Jesse Bye committed
                          description: The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          format: int64
                          type: integer
                        seLinuxOptions:
Jesse Bye's avatar
Jesse Bye committed
                          description: The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container.  May also be set in PodSecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          properties:
                            level:
Jesse Bye's avatar
Jesse Bye committed
                              description: Level is SELinux level label that applies to the container.
Lili Cosic's avatar
Lili Cosic committed
                              type: string
paulfantom's avatar
paulfantom committed
                            role:
Jesse Bye's avatar
Jesse Bye committed
                              description: Role is a SELinux role label that applies to the container.
Lili Cosic's avatar
Lili Cosic committed
                              type: string
paulfantom's avatar
paulfantom committed
                            type:
Jesse Bye's avatar
Jesse Bye committed
                              description: Type is a SELinux type label that applies to the container.
paulfantom's avatar
paulfantom committed
                              type: string
                            user:
Jesse Bye's avatar
Jesse Bye committed
                              description: User is a SELinux user label that applies to the container.
paulfantom's avatar
paulfantom committed
                              type: string
                          type: object
                        windowsOptions:
Jesse Bye's avatar
Jesse Bye committed
                          description: The Windows specific settings applied to all containers. If unspecified, the options from the PodSecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                          properties:
                            gmsaCredentialSpec:
Jesse Bye's avatar
Jesse Bye committed
                              description: GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field.
paulfantom's avatar
paulfantom committed
                              type: string
                            gmsaCredentialSpecName:
Jesse Bye's avatar
Jesse Bye committed
                              description: GMSACredentialSpecName is the name of the GMSA credential spec to use.
paulfantom's avatar
paulfantom committed
                              type: string
                            runAsUserName:
Jesse Bye's avatar
Jesse Bye committed
                              description: The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                              type: string
                          type: object
                      type: object
                    startupProbe:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'StartupProbe indicates that the Pod has successfully initialized. If specified, no other probes are executed until this completes successfully. If this probe fails, the Pod will be restarted, just as if the livenessProbe failed. This can be used to provide different probe parameters at the beginning of a Pod''s lifecycle, when it might take a long time to load data or warm a cache, than during steady-state operation. This cannot be updated. This is a beta feature enabled by the StartupProbe feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                      properties:
                        exec:
Jesse Bye's avatar
Jesse Bye committed
                          description: One and only one of the following should be specified. Exec specifies the action to take.
paulfantom's avatar
paulfantom committed
                          properties:
                            command:
Jesse Bye's avatar
Jesse Bye committed
                              description: Command is the command line to execute inside the container, the working directory for the command  is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.
paulfantom's avatar
paulfantom committed
                              items:
                                type: string
                              type: array
                          type: object
                        failureThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        httpGet:
                          description: HTTPGet specifies the http request to perform.
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead.
paulfantom's avatar
paulfantom committed
                              type: string
                            httpHeaders:
Jesse Bye's avatar
Jesse Bye committed
                              description: Custom headers to set in the request. HTTP allows repeated headers.
paulfantom's avatar
paulfantom committed
                              items:
Jesse Bye's avatar
Jesse Bye committed
                                description: HTTPHeader describes a custom header to be used in HTTP probes
paulfantom's avatar
paulfantom committed
                                properties:
                                  name:
                                    description: The header field name
                                    type: string
                                  value:
                                    description: The header field value
                                    type: string
                                required:
                                - name
                                - value
                                type: object
                              type: array
                            path:
                              description: Path to access on the HTTP server.
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                            scheme:
Jesse Bye's avatar
Jesse Bye committed
                              description: Scheme to use for connecting to the host. Defaults to HTTP.
paulfantom's avatar
paulfantom committed
                              type: string
                          required:
                          - port
                          type: object
                        initialDelaySeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        periodSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        successThreshold:
Jesse Bye's avatar
Jesse Bye committed
                          description: Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness and startup. Minimum value is 1.
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                        tcpSocket:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported TODO: implement a realistic TCP lifecycle hook'
paulfantom's avatar
paulfantom committed
                          properties:
                            host:
Jesse Bye's avatar
Jesse Bye committed
                              description: 'Optional: Host name to connect to, defaults to the pod IP.'
paulfantom's avatar
paulfantom committed
                              type: string
                            port:
                              anyOf:
                              - type: integer
                              - type: string
Jesse Bye's avatar
Jesse Bye committed
                              description: Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME.
paulfantom's avatar
paulfantom committed
                              x-kubernetes-int-or-string: true
                          required:
                          - port
                          type: object
                        timeoutSeconds:
Jesse Bye's avatar
Jesse Bye committed
                          description: 'Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes'
paulfantom's avatar
paulfantom committed
                          format: int32
                          type: integer
                      type: object
                    stdin:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    stdinOnce:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false
paulfantom's avatar
paulfantom committed
                      type: boolean
                    terminationMessagePath:
Jesse Bye's avatar
Jesse Bye committed
                      description: 'Optional: Path at which the file to which the container''s termination message will be written is mounted into the container''s filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated.'
paulfantom's avatar
paulfantom committed
                      type: string
                    terminationMessagePolicy:
Jesse Bye's avatar
Jesse Bye committed
                      description: Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                    tty:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    volumeDevices:
Jesse Bye's avatar
Jesse Bye committed
                      description: volumeDevices is the list of block devices to be used by the container.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: volumeDevice describes a mapping of a raw block device within a container.
Lili Cosic's avatar
Lili Cosic committed
                        properties:
paulfantom's avatar
paulfantom committed
                          devicePath:
Jesse Bye's avatar
Jesse Bye committed
                            description: devicePath is the path inside of the container that the device will be mapped to.
Lili Cosic's avatar
Lili Cosic committed
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
Jesse Bye's avatar
Jesse Bye committed
                            description: name must match the name of a persistentVolumeClaim in the pod
Lili Cosic's avatar
Lili Cosic committed
                            type: string
paulfantom's avatar
paulfantom committed
                        required:
                        - devicePath
                        - name
Lili Cosic's avatar
Lili Cosic committed
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
                    volumeMounts:
Jesse Bye's avatar
Jesse Bye committed
                      description: Pod volumes to mount into the container's filesystem. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        description: VolumeMount describes a mounting of a Volume within a container.
Lili Cosic's avatar
Lili Cosic committed
                        properties:
paulfantom's avatar
paulfantom committed
                          mountPath:
Jesse Bye's avatar
Jesse Bye committed
                            description: Path within the container at which the volume should be mounted.  Must not contain ':'.
Lili Cosic's avatar
Lili Cosic committed
                            type: string
paulfantom's avatar
paulfantom committed
                          mountPropagation:
Jesse Bye's avatar
Jesse Bye committed
                            description: mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationNone is used. This field is beta in 1.10.
Sergiusz Urbaniak's avatar
Sergiusz Urbaniak committed
                            type: string
paulfantom's avatar
paulfantom committed
                          name:
                            description: This must match the Name of a Volume.
Sergiusz Urbaniak's avatar
Sergiusz Urbaniak committed
                            type: string
paulfantom's avatar
paulfantom committed
                          readOnly:
Jesse Bye's avatar
Jesse Bye committed
                            description: Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false.
paulfantom's avatar
paulfantom committed
                            type: boolean
                          subPath:
Jesse Bye's avatar
Jesse Bye committed
                            description: Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root).
Sergiusz Urbaniak's avatar
Sergiusz Urbaniak committed
                            type: string
paulfantom's avatar
paulfantom committed
                          subPathExpr:
Jesse Bye's avatar
Jesse Bye committed
                            description: Expanded path within the volume from which the container's volume should be mounted. Behaves similarly to SubPath but environment variable references $(VAR_NAME) are expanded using the container's environment. Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive.
Sergiusz Urbaniak's avatar
Sergiusz Urbaniak committed
                            type: string
                        required:
paulfantom's avatar
paulfantom committed
                        - mountPath
                        - name
Sergiusz Urbaniak's avatar
Sergiusz Urbaniak committed
                        type: object
paulfantom's avatar
paulfantom committed
                      type: array
                    workingDir:
Jesse Bye's avatar
Jesse Bye committed
                      description: Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated.
paulfantom's avatar
paulfantom committed
                      type: string
                  required:
                  - name
                  type: object
                type: array
              listenLocal:
Jesse Bye's avatar
Jesse Bye committed
                description: ListenLocal makes the Prometheus server listen on loopback, so that it does not bind against the Pod IP.
paulfantom's avatar
paulfantom committed
                type: boolean
              logFormat:
                description: Log format for Prometheus to be configured with.
                type: string
              logLevel:
                description: Log level for Prometheus to be configured with.
                type: string
              nodeSelector:
                additionalProperties:
                  type: string
                description: Define which Nodes the Pods are scheduled on.
                type: object
              overrideHonorLabels:
Jesse Bye's avatar
Jesse Bye committed
                description: OverrideHonorLabels if set to true overrides all user configured honor_labels. If HonorLabels is set in ServiceMonitor or PodMonitor to true, this overrides honor_labels to false.
paulfantom's avatar
paulfantom committed
                type: boolean
              overrideHonorTimestamps:
Jesse Bye's avatar
Jesse Bye committed
                description: OverrideHonorTimestamps allows to globally enforce honoring timestamps in all scrape configs.
paulfantom's avatar
paulfantom committed
                type: boolean
              paused:
Jesse Bye's avatar
Jesse Bye committed
                description: When a Prometheus deployment is paused, no actions except for deletion will be performed on the underlying objects.
paulfantom's avatar
paulfantom committed
                type: boolean
              podMetadata:
Jesse Bye's avatar
Jesse Bye committed
                description: PodMetadata configures Labels and Annotations which are propagated to the prometheus pods.
paulfantom's avatar
paulfantom committed
                properties:
                  annotations:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    description: 'Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations'
Sergiusz Urbaniak's avatar
Sergiusz Urbaniak committed
                    type: object
paulfantom's avatar
paulfantom committed
                  labels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    description: 'Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels'
paulfantom's avatar
paulfantom committed
                    type: object
                  name:
Jesse Bye's avatar
Jesse Bye committed
                    description: 'Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names'
Lili Cosic's avatar
Lili Cosic committed
                    type: string
paulfantom's avatar
paulfantom committed
                type: object
              podMonitorNamespaceSelector:
paulfantom's avatar
paulfantom committed
                description: Namespace's labels to match for PodMonitor discovery. If nil, only check own namespace.
paulfantom's avatar
paulfantom committed
                properties:
                  matchExpressions:
Jesse Bye's avatar
Jesse Bye committed
                    description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
Lili Cosic's avatar
Lili Cosic committed
                    items:
Jesse Bye's avatar
Jesse Bye committed
                      description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Lili Cosic's avatar
Lili Cosic committed
                      properties:
paulfantom's avatar
paulfantom committed
                        key:
Jesse Bye's avatar
Jesse Bye committed
                          description: key is the label key that the selector applies to.
Lili Cosic's avatar
Lili Cosic committed
                          type: string
paulfantom's avatar
paulfantom committed
                        operator:
Jesse Bye's avatar
Jesse Bye committed
                          description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
Lili Cosic's avatar
Lili Cosic committed
                          type: string
paulfantom's avatar
paulfantom committed
                        values:
Jesse Bye's avatar
Jesse Bye committed
                          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.
paulfantom's avatar
paulfantom committed
                          items:
                            type: string
                          type: array
Lili Cosic's avatar
Lili Cosic committed
                      required:
paulfantom's avatar
paulfantom committed
                      - key
                      - operator
Lili Cosic's avatar
Lili Cosic committed
                      type: object
                    type: array
paulfantom's avatar
paulfantom committed
                  matchLabels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    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.
paulfantom's avatar
paulfantom committed
                    type: object
                type: object
              podMonitorSelector:
Jesse Bye's avatar
Jesse Bye committed
                description: '*Experimental* PodMonitors to be selected for target discovery. *Deprecated:* if neither this nor serviceMonitorSelector are specified, configuration is unmanaged.'
paulfantom's avatar
paulfantom committed
                properties:
                  matchExpressions:
Jesse Bye's avatar
Jesse Bye committed
                    description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
Lili Cosic's avatar
Lili Cosic committed
                    items:
Jesse Bye's avatar
Jesse Bye committed
                      description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Lili Cosic's avatar
Lili Cosic committed
                      properties:
paulfantom's avatar
paulfantom committed
                        key:
Jesse Bye's avatar
Jesse Bye committed
                          description: key is the label key that the selector applies to.
Lili Cosic's avatar
Lili Cosic committed
                          type: string
paulfantom's avatar
paulfantom committed
                        operator:
Jesse Bye's avatar
Jesse Bye committed
                          description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
Lili Cosic's avatar
Lili Cosic committed
                          type: string
paulfantom's avatar
paulfantom committed
                        values:
Jesse Bye's avatar
Jesse Bye committed
                          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.
paulfantom's avatar
paulfantom committed
                          items:
                            type: string
                          type: array
Lili Cosic's avatar
Lili Cosic committed
                      required:
paulfantom's avatar
paulfantom committed
                      - key
                      - operator
Lili Cosic's avatar
Lili Cosic committed
                      type: object
                    type: array
paulfantom's avatar
paulfantom committed
                  matchLabels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    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.
paulfantom's avatar
paulfantom committed
                    type: object
Lili Cosic's avatar
Lili Cosic committed
                type: object
paulfantom's avatar
paulfantom committed
              portName:
Jesse Bye's avatar
Jesse Bye committed
                description: Port name used for the pods and governing service. This defaults to web
paulfantom's avatar
paulfantom committed
                type: string
              priorityClassName:
                description: Priority class assigned to the Pods
                type: string
              probeNamespaceSelector:
Jesse Bye's avatar
Jesse Bye committed
                description: '*Experimental* Namespaces to be selected for Probe discovery. If nil, only check own namespace.'
                properties:
                  matchExpressions:
Jesse Bye's avatar
Jesse Bye committed
                    description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
Jesse Bye's avatar
Jesse Bye committed
                      description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Jesse Bye's avatar
Jesse Bye committed
                          description: key is the label key that the selector applies to.
Jesse Bye's avatar
Jesse Bye committed
                          description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
Jesse Bye's avatar
Jesse Bye committed
                          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.
                          items:
                            type: string
                          type: array
                      required:
                      - key
                      - operator
                      type: object
                    type: array
                  matchLabels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    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.
                    type: object
                type: object
              probeSelector:
                description: '*Experimental* Probes to be selected for target discovery.'
                properties:
                  matchExpressions:
Jesse Bye's avatar
Jesse Bye committed
                    description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
Jesse Bye's avatar
Jesse Bye committed
                      description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
Jesse Bye's avatar
Jesse Bye committed
                          description: key is the label key that the selector applies to.
Jesse Bye's avatar
Jesse Bye committed
                          description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
Jesse Bye's avatar
Jesse Bye committed
                          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.
                          items:
                            type: string
                          type: array
                      required:
                      - key
                      - operator
                      type: object
                    type: array
                  matchLabels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    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.
                    type: object
                type: object
paulfantom's avatar
paulfantom committed
              prometheusExternalLabelName:
Jesse Bye's avatar
Jesse Bye committed
                description: Name of Prometheus external label used to denote Prometheus instance name. Defaults to the value of `prometheus`. External label will _not_ be added when value is set to empty string (`""`).
paulfantom's avatar
paulfantom committed
                type: string
              prometheusRulesExcludedFromEnforce:
Jesse Bye's avatar
Jesse Bye committed
                description: PrometheusRulesExcludedFromEnforce - list of prometheus rules to be excluded from enforcing of adding namespace labels. Works only if enforcedNamespaceLabel set to true. Make sure both ruleNamespace and ruleName are set for each pair
Jesse Bye's avatar
Jesse Bye committed
                  description: PrometheusRuleExcludeConfig enables users to configure excluded PrometheusRule names and their namespaces to be ignored while enforcing namespace label for alerts and metrics.
                  properties:
                    ruleName:
                      description: RuleNamespace - name of excluded rule
                      type: string
                    ruleNamespace:
                      description: RuleNamespace - namespace of excluded rule
                      type: string
                  required:
                  - ruleName
                  - ruleNamespace
                  type: object
                type: array
paulfantom's avatar
paulfantom committed
              query:
Jesse Bye's avatar
Jesse Bye committed
                description: QuerySpec defines the query command line flags when starting Prometheus.
paulfantom's avatar
paulfantom committed
                properties:
                  lookbackDelta:
Jesse Bye's avatar
Jesse Bye committed
                    description: The delta difference allowed for retrieving metrics during expression evaluations.
                    type: string
paulfantom's avatar
paulfantom committed
                  maxConcurrency:
                    description: Number of concurrent queries that can be run at once.
                    format: int32
                    type: integer
                  maxSamples:
Jesse Bye's avatar
Jesse Bye committed
                    description: Maximum number of samples a single query can load into memory. Note that queries will fail if they would load more samples than this into memory, so this also limits the number of samples a query can return.
paulfantom's avatar
paulfantom committed
                    format: int32
                    type: integer
                  timeout:
                    description: Maximum time a query may take before being aborted.
                    type: string
paulfantom's avatar
paulfantom committed
                type: object
              queryLogFile:
Jesse Bye's avatar
Jesse Bye committed
                description: QueryLogFile specifies the file to which PromQL queries are logged. Note that this location must be writable, and can be persisted using an attached volume. Alternatively, the location can be set to a stdout location such as `/dev/stdout` to log querie information to the default Prometheus log stream. This is only available in versions of Prometheus >= 2.16.0. For more details, see the Prometheus docs (https://prometheus.io/docs/guides/query-log/)
paulfantom's avatar
paulfantom committed
                type: string
              remoteRead:
Jesse Bye's avatar
Jesse Bye committed
                description: If specified, the remote_read spec. This is an experimental feature, it may change in any upcoming release in a breaking way.
paulfantom's avatar
paulfantom committed
                items:
Jesse Bye's avatar
Jesse Bye committed
                  description: RemoteReadSpec defines the remote_read configuration for prometheus.
paulfantom's avatar
paulfantom committed
                  properties:
                    basicAuth:
                      description: BasicAuth for the URL.
                      properties:
                        password:
Jesse Bye's avatar
Jesse Bye committed
                          description: The secret in the service monitor namespace that contains the password for authentication.
paulfantom's avatar
paulfantom committed
                          properties:
                            key:
Jesse Bye's avatar
Jesse Bye committed
                              description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                              type: string
                            name:
Jesse Bye's avatar
Jesse Bye committed
                              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?'
paulfantom's avatar
paulfantom committed
                              type: string
                            optional:
Jesse Bye's avatar
Jesse Bye committed
                              description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                              type: boolean
                          required:
                          - key
                          type: object
                        username:
Jesse Bye's avatar
Jesse Bye committed
                          description: The secret in the service monitor namespace that contains the username for authentication.
paulfantom's avatar
paulfantom committed
                          properties:
                            key:
Jesse Bye's avatar
Jesse Bye committed
                              description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                              type: string
                            name:
Jesse Bye's avatar
Jesse Bye committed
                              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?'
paulfantom's avatar
paulfantom committed
                              type: string
                            optional:
Jesse Bye's avatar
Jesse Bye committed
                              description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                              type: boolean
                          required:
                          - key
                          type: object
                      type: object
                    bearerToken:
                      description: bearer token for remote read.
                      type: string
                    bearerTokenFile:
                      description: File to read bearer token for remote read.
                      type: string
                    name:
Jesse Bye's avatar
Jesse Bye committed
                      description: The name of the remote read queue, must be unique if specified. The name is used in metrics and logging in order to differentiate read configurations.  Only valid in Prometheus versions 2.15.0 and newer.
paulfantom's avatar
paulfantom committed
                      type: string
                    proxyUrl:
                      description: Optional ProxyURL
                      type: string
                    readRecent:
Jesse Bye's avatar
Jesse Bye committed
                      description: Whether reads should be made for queries for time ranges that the local storage should have complete data for.
paulfantom's avatar
paulfantom committed
                      type: boolean
                    remoteTimeout:
                      description: Timeout for requests to the remote read endpoint.
                      type: string
                    requiredMatchers:
                      additionalProperties:
Frederic Branczyk's avatar
Frederic Branczyk committed
                        type: string
Jesse Bye's avatar
Jesse Bye committed
                      description: An optional list of equality matchers which have to be present in a selector to query the remote read endpoint.
paulfantom's avatar
paulfantom committed
                      type: object
                    tlsConfig:
                      description: TLS Config to use for remote read.
                      properties:
                        ca:
                          description: Struct containing the CA cert to use for the targets.
paulfantom's avatar
paulfantom committed
                          properties:
                            configMap:
Jesse Bye's avatar
Jesse Bye committed
                              description: ConfigMap containing data to use for the targets.
paulfantom's avatar
paulfantom committed
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
Jesse Bye's avatar
Jesse Bye committed
                                  description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                          type: object
                        caFile:
Jesse Bye's avatar
Jesse Bye committed
                          description: Path to the CA cert in the Prometheus container to use for the targets.
Frederic Branczyk's avatar
Frederic Branczyk committed
                          type: string
paulfantom's avatar
paulfantom committed
                        cert:
Jesse Bye's avatar
Jesse Bye committed
                          description: Struct containing the client cert file for the targets.
paulfantom's avatar
paulfantom committed
                          properties:
                            configMap:
Jesse Bye's avatar
Jesse Bye committed
                              description: ConfigMap containing data to use for the targets.
paulfantom's avatar
paulfantom committed
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
Jesse Bye's avatar
Jesse Bye committed
                                  description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                          type: object
                        certFile:
Jesse Bye's avatar
Jesse Bye committed
                          description: Path to the client cert file in the Prometheus container for the targets.
Frederic Branczyk's avatar
Frederic Branczyk committed
                          type: string
paulfantom's avatar
paulfantom committed
                        insecureSkipVerify:
                          description: Disable target certificate validation.
                          type: boolean
                        keyFile:
Jesse Bye's avatar
Jesse Bye committed
                          description: Path to the client key file in the Prometheus container for the targets.
paulfantom's avatar
paulfantom committed
                          type: string
                        keySecret:
Jesse Bye's avatar
Jesse Bye committed
                          description: Secret containing the client key file for the targets.
paulfantom's avatar
paulfantom committed
                          properties:
                            key:
Jesse Bye's avatar
Jesse Bye committed
                              description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                              type: string
                            name:
Jesse Bye's avatar
Jesse Bye committed
                              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?'
paulfantom's avatar
paulfantom committed
                              type: string
                            optional:
Jesse Bye's avatar
Jesse Bye committed
                              description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                              type: boolean
                          required:
                          - key
                          type: object
                        serverName:
                          description: Used to verify the hostname for the targets.
                          type: string
                      type: object
                    url:
                      description: The URL of the endpoint to send samples to.
                      type: string
paulfantom's avatar
paulfantom committed
                  required:
                  - url
                  type: object
                type: array
              remoteWrite:
Jesse Bye's avatar
Jesse Bye committed
                description: If specified, the remote_write spec. This is an experimental feature, it may change in any upcoming release in a breaking way.
paulfantom's avatar
paulfantom committed
                items:
Jesse Bye's avatar
Jesse Bye committed
                  description: RemoteWriteSpec defines the remote_write configuration for prometheus.
paulfantom's avatar
paulfantom committed
                  properties:
                    basicAuth:
                      description: BasicAuth for the URL.
                      properties:
                        password:
Jesse Bye's avatar
Jesse Bye committed
                          description: The secret in the service monitor namespace that contains the password for authentication.
paulfantom's avatar
paulfantom committed
                          properties:
                            key:
Jesse Bye's avatar
Jesse Bye committed
                              description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                              type: string
                            name:
Jesse Bye's avatar
Jesse Bye committed
                              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?'
paulfantom's avatar
paulfantom committed
                              type: string
                            optional:
Jesse Bye's avatar
Jesse Bye committed
                              description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                              type: boolean
                          required:
                          - key
                          type: object
                        username:
Jesse Bye's avatar
Jesse Bye committed
                          description: The secret in the service monitor namespace that contains the username for authentication.
paulfantom's avatar
paulfantom committed
                          properties:
                            key:
Jesse Bye's avatar
Jesse Bye committed
                              description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                              type: string
                            name:
Jesse Bye's avatar
Jesse Bye committed
                              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?'
paulfantom's avatar
paulfantom committed
                              type: string
                            optional:
Jesse Bye's avatar
Jesse Bye committed
                              description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                              type: boolean
                          required:
                          - key
                          type: object
                      type: object
                    bearerToken:
                      description: File to read bearer token for remote write.
                      type: string
                    bearerTokenFile:
                      description: File to read bearer token for remote write.
                      type: string
                    name:
Jesse Bye's avatar
Jesse Bye committed
                      description: The name of the remote write queue, must be unique if specified. The name is used in metrics and logging in order to differentiate queues. Only valid in Prometheus versions 2.15.0 and newer.
paulfantom's avatar
paulfantom committed
                      type: string
                    proxyUrl:
                      description: Optional ProxyURL
                      type: string
                    queueConfig:
Jesse Bye's avatar
Jesse Bye committed
                      description: QueueConfig allows tuning of the remote write queue parameters.
paulfantom's avatar
paulfantom committed
                      properties:
                        batchSendDeadline:
Jesse Bye's avatar
Jesse Bye committed
                          description: BatchSendDeadline is the maximum time a sample will wait in buffer.
paulfantom's avatar
paulfantom committed
                          type: string
                        capacity:
Jesse Bye's avatar
Jesse Bye committed
                          description: Capacity is the number of samples to buffer per shard before we start dropping them.
paulfantom's avatar
paulfantom committed
                          type: integer
                        maxBackoff:
                          description: MaxBackoff is the maximum retry delay.
                          type: string
                        maxRetries:
Jesse Bye's avatar
Jesse Bye committed
                          description: MaxRetries is the maximum number of times to retry a batch on recoverable errors.
paulfantom's avatar
paulfantom committed
                          type: integer
                        maxSamplesPerSend:
Jesse Bye's avatar
Jesse Bye committed
                          description: MaxSamplesPerSend is the maximum number of samples per send.
paulfantom's avatar
paulfantom committed
                          type: integer
                        maxShards:
Jesse Bye's avatar
Jesse Bye committed
                          description: MaxShards is the maximum number of shards, i.e. amount of concurrency.
paulfantom's avatar
paulfantom committed
                          type: integer
                        minBackoff:
Jesse Bye's avatar
Jesse Bye committed
                          description: MinBackoff is the initial retry delay. Gets doubled for every retry.
paulfantom's avatar
paulfantom committed
                          type: string
                        minShards:
Jesse Bye's avatar
Jesse Bye committed
                          description: MinShards is the minimum number of shards, i.e. amount of concurrency.
paulfantom's avatar
paulfantom committed
                          type: integer
                      type: object
                    remoteTimeout:
                      description: Timeout for requests to the remote write endpoint.
                      type: string
                    tlsConfig:
                      description: TLS Config to use for remote write.
                      properties:
                        ca:
                          description: Struct containing the CA cert to use for the targets.
paulfantom's avatar
paulfantom committed
                          properties:
                            configMap:
Jesse Bye's avatar
Jesse Bye committed
                              description: ConfigMap containing data to use for the targets.
paulfantom's avatar
paulfantom committed
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
Jesse Bye's avatar
Jesse Bye committed
                                  description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                          type: object
                        caFile:
Jesse Bye's avatar
Jesse Bye committed
                          description: Path to the CA cert in the Prometheus container to use for the targets.
paulfantom's avatar
paulfantom committed
                          type: string
                        cert:
Jesse Bye's avatar
Jesse Bye committed
                          description: Struct containing the client cert file for the targets.
paulfantom's avatar
paulfantom committed
                          properties:
                            configMap:
Jesse Bye's avatar
Jesse Bye committed
                              description: ConfigMap containing data to use for the targets.
paulfantom's avatar
paulfantom committed
                              properties:
                                key:
                                  description: The key to select.
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the ConfigMap or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                            secret:
                              description: Secret containing data to use for the targets.
                              properties:
                                key:
Jesse Bye's avatar
Jesse Bye committed
                                  description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                                  type: string
                                name:
Jesse Bye's avatar
Jesse Bye committed
                                  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?'
paulfantom's avatar
paulfantom committed
                                  type: string
                                optional:
Jesse Bye's avatar
Jesse Bye committed
                                  description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                                  type: boolean
                              required:
                              - key
                              type: object
                          type: object
                        certFile:
Jesse Bye's avatar
Jesse Bye committed
                          description: Path to the client cert file in the Prometheus container for the targets.
paulfantom's avatar
paulfantom committed
                          type: string
                        insecureSkipVerify:
                          description: Disable target certificate validation.
                          type: boolean
                        keyFile:
Jesse Bye's avatar
Jesse Bye committed
                          description: Path to the client key file in the Prometheus container for the targets.
paulfantom's avatar
paulfantom committed
                          type: string
                        keySecret:
Jesse Bye's avatar
Jesse Bye committed
                          description: Secret containing the client key file for the targets.
paulfantom's avatar
paulfantom committed
                          properties:
                            key:
Jesse Bye's avatar
Jesse Bye committed
                              description: The key of the secret to select from.  Must be a valid secret key.
paulfantom's avatar
paulfantom committed
                              type: string
                            name:
Jesse Bye's avatar
Jesse Bye committed
                              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?'
paulfantom's avatar
paulfantom committed
                              type: string
                            optional:
Jesse Bye's avatar
Jesse Bye committed
                              description: Specify whether the Secret or its key must be defined
paulfantom's avatar
paulfantom committed
                              type: boolean
                          required:
                          - key
                          type: object
                        serverName:
                          description: Used to verify the hostname for the targets.
                          type: string
                      type: object
                    url:
                      description: The URL of the endpoint to send samples to.
                      type: string
                    writeRelabelConfigs:
                      description: The list of remote write relabel configurations.
                      items:
Jesse Bye's avatar
Jesse Bye committed
                        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'
paulfantom's avatar
paulfantom committed
                        properties:
                          action:
Jesse Bye's avatar
Jesse Bye committed
                            description: Action to perform based on regex matching. Default is 'replace'
paulfantom's avatar
paulfantom committed
                            type: string
                          modulus:
Jesse Bye's avatar
Jesse Bye committed
                            description: Modulus to take of the hash of the source label values.
paulfantom's avatar
paulfantom committed
                            format: int64
                            type: integer
                          regex:
Jesse Bye's avatar
Jesse Bye committed
                            description: Regular expression against which the extracted value is matched. Default is '(.*)'
paulfantom's avatar
paulfantom committed
                            type: string
                          replacement:
Jesse Bye's avatar
Jesse Bye committed
                            description: Replacement value against which a regex replace is performed if the regular expression matches. Regex capture groups are available. Default is '$1'
paulfantom's avatar
paulfantom committed
                            type: string
                          separator:
Jesse Bye's avatar
Jesse Bye committed
                            description: Separator placed between concatenated source label values. default is ';'.
paulfantom's avatar
paulfantom committed
                            type: string
                          sourceLabels:
Jesse Bye's avatar
Jesse Bye committed
                            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.
paulfantom's avatar
paulfantom committed
                            items:
                              type: string
                            type: array
                          targetLabel:
Jesse Bye's avatar
Jesse Bye committed
                            description: Label to which the resulting value is written in a replace action. It is mandatory for replace actions. Regex capture groups are available.
paulfantom's avatar
paulfantom committed
                            type: string
                        type: object
                      type: array
                  required:
                  - url
                  type: object
                type: array
              replicaExternalLabelName:
Jesse Bye's avatar
Jesse Bye committed
                description: Name of Prometheus external label used to denote replica name. Defaults to the value of `prometheus_replica`. External label will _not_ be added when value is set to empty string (`""`).
paulfantom's avatar
paulfantom committed
                type: string
              replicas:
Lili Cosic's avatar
Lili Cosic committed
                description: Number of replicas of each shard to deploy for a Prometheus deployment. Number of replicas multiplied by shards is the total number of Pods created.
paulfantom's avatar
paulfantom committed
                format: int32
                type: integer
              resources:
                description: Define resources requests and limits for single Pods.
                properties:
                  limits:
                    additionalProperties:
Lili Cosic's avatar
Lili Cosic committed
                      anyOf:
                      - type: integer
                      - type: string
                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                      x-kubernetes-int-or-string: true
Jesse Bye's avatar
Jesse Bye committed
                    description: 'Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
paulfantom's avatar
paulfantom committed
                    type: object
                  requests:
                    additionalProperties:
Lili Cosic's avatar
Lili Cosic committed
                      anyOf:
                      - type: integer
                      - type: string
                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                      x-kubernetes-int-or-string: true
Jesse Bye's avatar
Jesse Bye committed
                    description: 'Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
paulfantom's avatar
paulfantom committed
                    type: object
                type: object
              retention:
Jesse Bye's avatar
Jesse Bye committed
                description: Time duration Prometheus shall retain data for. Default is '24h', and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)` (milliseconds seconds minutes hours days weeks years).
paulfantom's avatar
paulfantom committed
                type: string
              retentionSize:
paulfantom's avatar
paulfantom committed
                description: 'Maximum amount of disk space used by blocks. Supported units: B, KB, MB, GB, TB, PB, EB. Ex: `512MB`.'
paulfantom's avatar
paulfantom committed
                type: string
              routePrefix:
Jesse Bye's avatar
Jesse Bye committed
                description: The route prefix Prometheus registers HTTP handlers for. This is useful, if using ExternalURL and a proxy is rewriting HTTP routes of a request, and the actual ExternalURL is still true, but the server serves requests under a different route prefix. For example for use with `kubectl proxy`.
paulfantom's avatar
paulfantom committed
                type: string
              ruleNamespaceSelector:
Jesse Bye's avatar
Jesse Bye committed
                description: Namespaces to be selected for PrometheusRules discovery. If unspecified, only the same namespace as the Prometheus object is in is used.
paulfantom's avatar
paulfantom committed
                properties:
                  matchExpressions:
Jesse Bye's avatar
Jesse Bye committed
                    description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
paulfantom's avatar
paulfantom committed
                    items:
Jesse Bye's avatar
Jesse Bye committed
                      description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
paulfantom's avatar
paulfantom committed
                      properties:
                        key:
Jesse Bye's avatar
Jesse Bye committed
                          description: key is the label key that the selector applies to.
paulfantom's avatar
paulfantom committed
                          type: string
                        operator:
Jesse Bye's avatar
Jesse Bye committed
                          description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
paulfantom's avatar
paulfantom committed
                          type: string
                        values:
Jesse Bye's avatar
Jesse Bye committed
                          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.
paulfantom's avatar
paulfantom committed
                          items:
                            type: string
                          type: array
                      required:
                      - key
                      - operator
                      type: object
                    type: array
                  matchLabels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    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.
paulfantom's avatar
paulfantom committed
                    type: object
                type: object
              ruleSelector:
Jesse Bye's avatar
Jesse Bye committed
                description: A selector to select which PrometheusRules to mount for loading alerting/recording rules from. Until (excluding) Prometheus Operator v0.24.0 Prometheus Operator will migrate any legacy rule ConfigMaps to PrometheusRule custom resources selected by RuleSelector. Make sure it does not match any config maps that you do not want to be migrated.
paulfantom's avatar
paulfantom committed
                properties:
                  matchExpressions:
Jesse Bye's avatar
Jesse Bye committed
                    description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
paulfantom's avatar
paulfantom committed
                    items:
Jesse Bye's avatar
Jesse Bye committed
                      description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
paulfantom's avatar
paulfantom committed
                      properties:
                        key:
Jesse Bye's avatar
Jesse Bye committed
                          description: key is the label key that the selector applies to.
paulfantom's avatar
paulfantom committed
                          type: string
                        operator:
Jesse Bye's avatar
Jesse Bye committed
                          description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
paulfantom's avatar
paulfantom committed
                          type: string
                        values:
Jesse Bye's avatar
Jesse Bye committed
                          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.
paulfantom's avatar
paulfantom committed
                          items:
                            type: string
                          type: array
                      required:
                      - key
                      - operator
                      type: object
                    type: array
                  matchLabels:
                    additionalProperties:
                      type: string
Jesse Bye's avatar
Jesse Bye committed
                    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.
paulfantom's avatar
paulfantom committed
                    type: object
                type: object
              rules:
                description: /--rules.*/ command-line arguments.
                properties:
                  alert:
                    description: /--rules.alert.*/ command-line arguments
                    properties:
                      forGracePeriod:
Jesse Bye's avatar
Jesse Bye committed
                        description: Minimum duration between alert and restored 'for' state. This is maintained only for alerts with configured 'for' time greater than grace period.
paulfantom's avatar
paulfantom committed
                        type: string
                      forOutageTolerance:
Jesse Bye's avatar
Jesse Bye committed
                        description: Max time to tolerate prometheus outage for restoring 'for' state of alert.
paulfantom's avatar
paulfantom committed
                        type: string
                      resendDelay:
Jesse Bye's avatar
Jesse Bye committed
                        description: Minimum amount of time to wait before resending an alert to Alertmanager.
paulfantom's avatar
paulfantom committed
                        type: string
                    type: object
                type: object
              scrapeInterval:
                description: Interval between consecutive scrapes.
                type: string
              scrapeTimeout:
Jesse Bye's avatar
Jesse Bye committed
                description: Number of seconds to wait for target to respond before erroring.
                type: string
paulfantom's avatar
paulfantom committed
              secrets:
Jesse Bye's avatar
Jesse Bye committed
                description: Secrets is a list of Secrets in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods. The Secrets are mounted into /etc/prometheus/secrets/<secret-name>.
paulfantom's avatar
paulfantom committed
                items:
                  type: string
                type: array
              securityContext:
Jesse Bye's avatar
Jesse Bye committed
                description: SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext.
paulfantom's avatar
paulfantom committed
                properties:
                  fsGroup:
Jesse Bye's avatar
Jesse Bye committed
                    description: "A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: \n 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- \n If unset, the Kubelet will not modify the ownership and permissions of any volume."
paulfantom's avatar
paulfantom committed
                    format: int64
                    type: integer
                  fsGroupChangePolicy:
Jesse Bye's avatar
Jesse Bye committed
                    description: 'fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are "OnRootMismatch" and "Always". If not specified defaults to "Always".'
paulfantom's avatar
paulfantom committed
                    type: string
                  runAsGroup:
Jesse Bye's avatar
Jesse Bye committed
                    description: The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container.
paulfantom's avatar
paulfantom committed
                    format: int64
                    type: integer
                  runAsNonRoot:
Jesse Bye's avatar
Jesse Bye committed
                    description: Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.
paulfantom's avatar
paulfantom committed
                    type: boolean
                  runAsUser:
Jesse Bye's avatar
Jesse Bye committed
                    description: The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container.
paulfantom's avatar
paulfantom committed
                    format: int64
                    type: integer
                  seLinuxOptions:
Jesse Bye's avatar
Jesse Bye committed
                    description: The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container.  May also be set in SecurityContext.  If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container.
paulfantom's avatar
paulfantom committed
                    properties:
                      level:
Jesse Bye's avatar
Jesse Bye committed
                        description: Level is SELinux level label that applies to the container.
paulfantom's avatar
paulfantom committed
                        type: string
                      role:
Jesse Bye's avatar
Jesse Bye committed
                        description: Role is a SELinux role label that applies to the container.
paulfantom's avatar
paulfantom committed
                        type: string
                      type:
Jesse Bye's avatar
Jesse Bye committed
                        description: Type is a SELinux type label that applies to the container.
paulfantom's avatar
paulfantom committed
                        type: string
                      user:
Jesse Bye's avatar
Jesse Bye committed
                        description: User is a SELinux user label that applies to the container.
paulfantom's avatar
paulfantom committed
                        type: string
                    type: object
                  supplementalGroups:
Jesse Bye's avatar
Jesse Bye committed
                    description: A list of groups applied to the first process run in each container, in addition to the container's primary GID.  If unspecified, no groups will be added to any container.
paulfantom's avatar
paulfantom committed
                    items:
                      format: int64
                      type: integer
                    type: array
                  sysctls:
Jesse Bye's avatar
Jesse Bye committed
                    description: Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch.
paulfantom's avatar
paulfantom committed
                    items:
                      description: Sysctl defines a kernel parameter to be set
                      properties:
                        name:
                          description: Name of a property to set
                          type: string
                        value:
                          description: Value of a property to set
                          type: string
                      required:
                      - name
                      - value
                      type: object
                    type: array