ThanosSpec 🔗︎
ThanosSpec defines the desired state of Thanos 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
queryDiscovery | bool | No | - | |
storeGateway | *StoreGateway | No | - | |
rule | *Rule | No | - | |
query | *Query | No | - | |
queryFrontend | *QueryFrontend | No | - | |
clusterDomain | string | No | - | |
enableRecreateWorkloadOnImmutableFieldChange | bool | No | - |
Metrics 🔗︎
Metrics defines the service monitor endpoints 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
interval | string | No | - | |
timeout | string | No | - | |
port | int32 | No | - | |
path | string | No | - | |
serviceMonitor | bool | No | - | |
prometheusAnnotations | bool | No | - |
Ingress 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
ingressOverrides | *typeoverride.IngressNetworkingV1beta1 | No | - | |
certificate | string | No | - | Certificate in the ingress namespace |
host | string | No | - | |
path | string | No | - |
QueryFrontend 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metaOverrides | *typeoverride.ObjectMeta | No | - | |
deploymentOverrides | *typeoverride.Deployment | No | - | |
serviceOverrides | *typeoverride.Service | No | - | |
metrics | *Metrics | No | - | |
HTTPIngress | *Ingress | No | - | |
logLevel | string | No | - | |
logFormat | string | No | - | |
queryRangeSplit | string | No | - | Split queries by an interval and execute in parallel, 0 disables it. |
queryRangeMaxRetriesPerRequest | int | No | - | Maximum number of retries for a single request; beyond this, the downstream error is returned. |
queryRangeMaxQueryLength | int | No | - | Limit the query time range (end - start time) in the query-frontend, 0 disables it. |
queryRangeMaxQueryParallelism | int | No | - | Maximum number of queries will be scheduled in parallel by the frontend. |
queryRangeResponseCacheMaxFreshness | string | No | - | Most recent allowed cacheable result, to prevent caching very recent results that might still be in flux. |
queryRangePartialResponse | *bool | No | - | Enable partial response for queries if no partial_response param is specified. |
queryRangeResponseCacheConfigFile | string | No | - | Path to YAML file that contains response cache configuration. |
queryRangeResponseCache | string | No | - | Alternative to ‘query-range.response-cache-config-file’ flag (lower priority). Content of YAML file that contains response cache configuration. |
httpAddress | string | No | - | Listen host:port for HTTP endpoints. |
http_grace_period | string | No | - | Time to wait after an interrupt received for HTTP Server. |
queryFrontendDownstreamURL | string | No | - | URL of downstream Prometheus Query compatible API. |
queryFrontendCompressResponses | *bool | No | - | Compress HTTP responses. |
queryFrontendLogQueriesLongerThan | int | No | - | Log queries that are slower than the specified duration. Set to 0 to disable. Set to < 0 to enable on all queries. |
logRequestDecision | string | No | - | Request Logging for logging the start and end of requests. LogFinishCall is enabled by default. LogFinishCall : Logs the finish call of the requests. LogStartAndFinishCall : Logs the start and finish call of the requests. NoLogCall : Disable request logging. |
Query 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metaOverrides | typeoverride.ObjectMeta | No | - | |
deploymentOverrides | *typeoverride.Deployment | No | - | |
serviceOverrides | *typeoverride.Service | No | - | |
metrics | *Metrics | No | - | |
HTTPIngress | *Ingress | No | - | |
GRPCIngress | *Ingress | No | - | |
GRPCClientCertificate | string | No | - | Cert and key expected under tls.crt, tls.key |
GRPCClientCA | string | No | - | CA bundle to verify servers against, expected under ca.crt |
GRPCClientServerName | string | No | - | Server name to verify server certificate against |
GRPCServerCertificate | string | No | - | Cert and key expected under tls.crt, tls.key |
GRPCServerCA | string | No | - | CA bundle to verify clients against, expected under ca.crt |
logLevel | string | No | - | |
logFormat | string | No | - | |
httpAddress | string | No | - | Listen host:port for HTTP endpoints. |
http_grace_period | string | No | - | Time to wait after an interrupt received for HTTP Server. |
grpcAddress | string | No | - | Listen ip:port address for gRPC endpoints |
grpcGracePeriod | string | No | - | Time to wait after an interrupt received for GRPC Server. |
webRoutePrefix | string | No | - | Prefix for API and UI endpoints. This allows thanos UI to be served on a sub-path. This option is analogous to –web.route-prefix of Promethus. |
webExternalPrefix | string | No | - | Static prefix for all HTML links and redirect URLs in the UI query web interface. Actual endpoints are still served on / or the web.route-prefix. This allows thanos UI to be served behind a reverse proxy that strips a URL sub-path. |
webPrefixHeader | string | No | - | Name of HTTP request header used for dynamic prefixing of UI links and redirects. This option is ignored if web.external-prefix argument is set. Security risk: enable this option only if a reverse proxy in front of thanos is resetting the header. The –web.prefix-header=X-Forwarded-Prefix option can be useful, for example, if Thanos UI is served via Traefik reverse proxy with PathPrefixStrip option enabled, which sends the stripped prefix value in X-Forwarded-Prefix header. This allows thanos UI to be served on a sub-path. |
queryTimeout | metav1.Duration | No | - | Maximum time to process query by query node. |
queryMaxConcurrent | int | No | - | Maximum number of queries processed concurrently by query node. |
queryReplicaLabel | []string | No | - | Labels to treat as a replica indicator along which data is deduplicated. Still you will be able to query without deduplication using ‘dedup=false’ parameter. |
selectorLabels | map[string]string | No | - | Query selector labels that will be exposed in info endpoint (repeated). |
stores | []string | No | - | Addresses of statically configured store API servers (repeatable). The scheme may be prefixed with ‘dns+’ or ‘dnssrv+’ to detect store API servers through respective DNS lookups. |
storeSDDNSInterval | metav1.Duration | No | - | Interval between DNS resolutions. |
storeUnhealthyTimeout | metav1.Duration | No | - | Timeout before an unhealthy store is cleaned from the store UI page. |
queryAutoDownsampling | bool | No | - | Enable automatic adjustment (step / 5) to what source of data should be used in store gateways if no max_source_resolution param is specified. |
queryPartialResponse | bool | No | - | Enable partial response for queries if no partial_response param is specified. |
queryDefaultEvaluationInterval | metav1.Duration | No | - | Set default evaluation interval for sub queries. |
storeResponseTimeout | metav1.Duration | No | - | If a Store doesn’t send any data in this specified duration then a Store will be ignored and partial data will be returned if it’s enabled. 0 disables timeout. |
ThanosDiscovery 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metav1.LabelSelector | No | - |
TimeRange 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
minTime | string | No | - | Start of time range limit to serve. Thanos Store will serve only metrics, which happened later than this value. Option can be a constant time in RFC3339 format or time duration relative to current time, such as -1d or 2h45m. Valid duration units are ms, s, m, h, d, w, y. |
maxTime | string | No | - | End of time range limit to serve. Thanos Store will serve only blocks, which happened eariler than this value. Option can be a constant time in RFC3339 format or time duration relative to current time, such as -1d or 2h45m. Valid duration units are ms, s, m, h, d, w, y. |
StoreGateway 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metaOverrides | *typeoverride.ObjectMeta | No | - | |
deploymentOverrides | *typeoverride.Deployment | No | - | |
serviceOverride | *typeoverride.Service | No | - | |
metrics | *Metrics | No | - | |
GRPCServerCertificate | string | No | - | |
logLevel | string | No | - | |
logFormat | string | No | - | |
httpAddress | string | No | - | Listen host:port for HTTP endpoints. |
http_grace_period | string | No | - | Time to wait after an interrupt received for HTTP Server. |
grpcAddress | string | No | - | Listen ip:port address for gRPC endpoints |
grpcGracePeriod | string | No | - | Time to wait after an interrupt received for GRPC Server. |
indexCacheSize | string | No | - | Maximum size of items held in the in-memory index cache. |
indexCacheConfigFile | string | No | - | Path to YAML file that contains index cache configuration. See format details: https://thanos.io/tip/components/store.md/#index-cache |
indexCacheConfig | string | No | - | Alternative to ‘index-cache.config-file’ flag (lower priority). Content of YAML file that contains index cache configuration. See format details: https://thanos.io/tip/components/store.md/#index-cache |
chunkPoolSize | string | No | - | Maximum size of concurrently allocatable bytes for chunks. |
storeGRPCSeriesSampleLimit | string | No | - | Maximum amount of samples returned via a single Series call. 0 means no limit. NOTE: For efficiency we take 120 as the number of samples in chunk (it cannot be bigger than that), so the actual number of samples might be lower, even though the maximum could be hit. |
storeGRPCTouchedSeriesSampleLimit | int | No | - | Maximum amount of touched series returned via a single Series call. The Series call fails if this limit is exceeded. 0 means no limit. |
storeGRPCSeriesMaxConcurrency | int | No | - | Maximum number of concurrent Series calls. |
syncBlockDuration | string | No | - | Repeat interval for syncing the blocks between local and remote view. |
blockSyncConcurrency | int | No | - | Number of goroutines to use when constructing index-cache.json blocks from object storage. |
blockMetaFetchConcurrency | int | No | - | Number of goroutines to use when fetching block metadata from object storage. |
selectorRelabelConfigFile | string | No | - | Path to YAML file that contains relabeling configuration that allows selecting blocks. It follows native Prometheus relabel-config syntax. See format details: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
selectorRelabelConfig | string | No | - | Alternative to ‘selector.relabel-config-file’ flag (lower priority). Content of YAML file that contains relabeling configuration that allows selecting blocks. It follows native Prometheus relabel-config syntax. See format details: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config |
consistencyDelay | string | No | - | Minimum age of all blocks before they are being read. Set it to safe value (e.g 30m) if your object storage is eventually consistent. GCS and S3 are (roughly) strongly consistent. |
ignoreDeletionMarksDelay | string | No | - | Duration after which the blocks marked for deletion will be filtered out while fetching blocks. The idea of ignore-deletion-marks-delay is to ignore blocks that are marked for deletion with some delay. This ensures store can still serve blocks that are meant to be deleted but do not have a replacement yet. If delete-delay duration is provided to compactor or bucket verify component, it will upload deletion-mark.json file to mark after what duration the block should be deleted rather than deleting the block straight away. If delete-delay is non-zero for compactor or bucket verify component, ignore-deletion-marks-delay should be set to (delete-delay)/2 so that blocks marked for deletion are filtered out while fetching blocks before being deleted from bucket. Default is 24h, half of the default value for –delete-delay on compactor. |
storeEnableIndexHeaderLazyReader | *bool | No | - | If true, Store Gateway will lazy memory map index-header only once the block is required by a query. |
webExternalPrefix | string | No | - | Static prefix for all HTML links and redirect URLs in the bucket web UI interface. Actual endpoints are still served on / or the web.route-prefix. This allows thanos bucket web UI to be served behind a reverse proxy that strips a URL sub-path. |
webPrefixHeader | string | No | - | Name of HTTP request header used for dynamic prefixing of UI links and redirects. This option is ignored if web.external-prefix argument is set. Security risk: enable this option only if a reverse proxy in front of thanos is resetting the header. The –web.prefix-header=X-Forwarded-Prefix option can be useful, for example, if Thanos UI is served via Traefik reverse proxy with PathPrefixStrip option enabled, which sends the stripped prefix value in X-Forwarded-Prefix header. This allows thanos UI to be served on a sub-path. |
timeRanges | []TimeRange | No | - | TimeRanges is a list of TimeRange to partition Store Gateway |
Rule 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metaOverrides | *typeoverride.ObjectMeta | No | - | |
statefulsetOverrides | *typeoverride.StatefulSet | No | - | |
serviceOverrides | *typeoverride.Service | No | - | |
metrics | *Metrics | No | - | |
HTTPIngress | *Ingress | No | - | |
GRPCIngress | *Ingress | No | - | |
logLevel | string | No | - | |
logFormat | string | No | - | |
httpAddress | string | No | - | Listen host:port for HTTP endpoints. |
http_grace_period | string | No | - | Time to wait after an interrupt received for HTTP Server. |
dataDir | string | No | - | Data directory. |
dataVolume | *volume.KubernetesVolume | No | - | Kubernetes volume abstraction refers to different types of volumes to be mounted to pods: emptyDir, hostPath, pvc. |
grpcAddress | string | No | - | Listen ip:port address for gRPC endpoints |
grpcGracePeriod | string | No | - | Time to wait after an interrupt received for GRPC Server. |
labels | map[string]string | No | - | Labels to be applied to all generated metrics (repeated). Similar to external labels for Prometheus, used to identify ruler and its blocks as unique source. |
rules | string | No | - | Rules |
resendDelay | string | No | - | Minimum amount of time to wait before resending an alert to Alertmanager. |
evalInterval | string | No | - | The default evaluation interval to use. |
tsdbBlockDuration | string | No | - | Block duration for TSDB block. |
tsdbRetention | string | No | - | Block retention time on local disk. |
alertmanagersURLs | []string | No | - | Alertmanager replica URLs to push firing alerts. Ruler claims success if push to at least one alertmanager from discovered succeeds. The scheme should not be empty e.g http might be used. The scheme may be prefixed with ‘dns+’ or ‘dnssrv+’ to detectAlertmanager IPs through respective DNS lookups. The port defaults to 9093 or the SRV record’s value. The URL path is used as a prefix for the regular Alertmanager API path. |
alertmanagersSendTimeout | string | No | - | Timeout for sending alerts to Alertmanager |
alertmanagersSDDNSInterval | string | No | - | Interval between DNS resolutions of Alertmanager hosts. |
alertQueryUrl | string | No | - | The external Thanos Query URL that would be set in all alerts ‘Source’ field |
alertLabelDrop | map[string]string | No | - | Labels by name to drop before sending to alertmanager. This allows alert to be deduplicated on replica label (repeated). Similar Prometheus alert relabelling |
webRoutePrefix | string | No | - | Prefix for API and UI endpoints. This allows thanos UI to be served on a sub-path. This option is analogous to –web.route-prefix of Promethus. |
webExternalPrefix | string | No | - | Static prefix for all HTML links and redirect URLs in the UI query web interface. Actual endpoints are still served on / or the web.route-prefix. This allows thanos UI to be served behind a reverse proxy that strips a URL sub-path. |
webPrefixHeader | string | No | - | Name of HTTP request header used for dynamic prefixing of UI links and redirects. This option is ignored if web.external-prefix argument is set. Security risk: enable this option only if a reverse proxy in front of thanos is resetting the header. The –web.prefix-header=X-Forwarded-Prefix option can be useful, for example, if Thanos UI is served via Traefik reverse proxy with PathPrefixStrip option enabled, which sends the stripped prefix value in X-Forwarded-Prefix header. This allows thanos UI to be served on a sub-path. |
queries | []string | No | - | Addresses of statically configured query API servers (repeatable). The scheme may be prefixed with ‘dns+’ or ‘dnssrv+’ to detect query API servers through respective DNS lookups. |
querySddnsInterval | string | No | - | Interval between DNS resolutions. |
ThanosStatus 🔗︎
ThanosStatus defines the observed state of Thanos 🔗︎
Variable Name | Type | Required | Default | Description |
---|
Thanos 🔗︎
Thanos is the Schema for the thanos API 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metav1.TypeMeta | Yes | - | ||
metadata | metav1.ObjectMeta | No | - | |
spec | ThanosSpec | No | - | |
status | ThanosStatus | No | - |
ThanosList 🔗︎
ThanosList contains a list of Thanos 🔗︎
Variable Name | Type | Required | Default | Description |
---|---|---|---|---|
metav1.TypeMeta | Yes | - | ||
metadata | metav1.ListMeta | No | - | |
items | []Thanos | Yes | - |