ThanosRuler defines a ThanosRuler deployment.
ThanosRuler defines a ThanosRuler deployment.
object
spec
Property | Type | 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 |
|
|
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 |
|
Standard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata |
|
|
|
Specification of the desired behavior of the ThanosRuler cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
|
|
Most recent observed status of the ThanosRuler cluster. Read-only. Not included when requesting from the apiserver, only from the ThanosRuler Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
Specification of the desired behavior of the ThanosRuler cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
object
Property | Type | Description |
---|---|---|
|
|
If specified, the pod’s scheduling constraints. |
|
|
AlertDropLabels configure the label names which should be dropped in ThanosRuler alerts. If |
|
|
The external Query URL the Thanos Ruler will set in the 'Source' field of all alerts. Maps to the '--alert.query-url' CLI arg. |
|
|
Define configuration for connecting to alertmanager. Only available with thanos v0.10.0 and higher. Maps to the |
|
|
Define URLs to send alerts to Alertmanager. For Thanos v0.10.0 and higher, AlertManagersConfig should be used instead. Note: this field will be ignored if AlertManagersConfig is specified. Maps to the |
|
|
Containers allows injecting additional containers or modifying operator generated containers. This can be used to allow adding an authentication proxy to a ThanosRuler pod or to change the behavior of an operator generated container. Containers described here modify an operator generated container if they share the same name and modifications are done via a strategic merge patch. The current container names are: |
|
|
A single application container that you want to run within a pod. |
|
|
EnforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created. The label value will always be the namespace of the object that is being created. |
|
|
Interval between consecutive evaluations. |
|
|
The external URL the Thanos Ruler instances will be available under. This is necessary to generate correct URLs. This is necessary if Thanos Ruler is not served from root of a DNS name. |
|
|
GRPCServerTLSConfig configures the gRPC server from which Thanos Querier reads recorded rule data. Note: Currently only the CAFile, CertFile, and KeyFile fields are supported. Maps to the '--grpc-server-tls-*' CLI args. |
|
|
Thanos container image URL. |
|
|
An optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod |
|
|
LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. |
|
|
InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. fetch secrets for injection into the ThanosRuler configuration from external sources. Any errors during the execution of an initContainer will lead to a restart of the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ Using initContainers for any use case other then secret fetching is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice. |
|
|
A single application container that you want to run within a pod. |
|
|
Labels configure the external label pairs to ThanosRuler. If not provided, default replica label |
|
|
ListenLocal makes the Thanos ruler listen on loopback, so that it does not bind against the Pod IP. |
|
|
Log format for ThanosRuler to be configured with. |
|
|
Log level for ThanosRuler to be configured with. |
|
|
Minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready) This is an alpha field and requires enabling StatefulSetMinReadySeconds feature gate. |
|
|
Define which Nodes the Pods are scheduled on. |
|
|
ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority. |
|
|
ObjectStorageConfigFile specifies the path of the object storage configuration file. When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence. |
|
|
When a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects. |
|
|
PodMetadata contains Labels and Annotations gets propagated to the thanos ruler pods. |
|
|
Port name used for the pods and governing service. This defaults to web |
|
|
Priority class assigned to the Pods |
|
|
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 |
|
|
PrometheusRuleExcludeConfig enables users to configure excluded PrometheusRule names and their namespaces to be ignored while enforcing namespace label for alerts and metrics. |
|
|
Define configuration for connecting to thanos query instances. If this is defined, the QueryEndpoints field will be ignored. Maps to the |
|
|
QueryEndpoints defines Thanos querier endpoints from which to query metrics. Maps to the --query flag of thanos ruler. |
|
|
Number of thanos ruler instances to deploy. |
|
|
Resources defines the resource requirements for single Pods. If not provided, no requests/limits will be set |
|
|
Time duration ThanosRuler shall retain data for. Default is '24h', and must match the regular expression |
|
|
The route prefix ThanosRuler registers HTTP handlers for. This allows thanos UI to be served on a sub-path. |
|
|
Namespaces to be selected for Rules discovery. If unspecified, only the same namespace as the ThanosRuler object is in is used. |
|
|
A label selector to select which PrometheusRules to mount for alerting and recording. |
|
|
SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext. |
|
|