Skip to content

Latest commit

 

History

History
3374 lines (1940 loc) · 85.3 KB

REFERENCE.md

File metadata and controls

3374 lines (1940 loc) · 85.3 KB

Reference

Table of Contents

Classes

Defined types

Data types

Classes

thanos

Init class of Thanos module. It can installes Thanos binaries and manages components as single Service.

Examples

include thanos

Parameters

The following parameters are available in the thanos class:

version

Data type: Pattern[/\d+\.\d+\.\d+/]

Thanos release. See https://github.com/thanos-io/thanos/releases

os

Data type: String

Operating system.

Default value: downcase($facts['kernel'])

manage_sidecar

Data type: Boolean

Whether to create a service to run Sidecar.

Default value: false

manage_query

Data type: Boolean

Whether to create a service to run Query.

Default value: false

manage_query_frontend

Data type: Boolean

Whether to create a service to run Query Frontend.

Default value: false

manage_rule

Data type: Boolean

Whether to create a service to run Rule.

Default value: false

manage_store

Data type: Boolean

Whether to create a service to run Store.

Default value: false

manage_compact

Data type: Boolean

Whether to create a service to run Compact.

Default value: false

manage_receive

Data type: Boolean

Whether to create a service to run Receiver.

Default value: false

manage_tools_bucket_web

Data type: Boolean

Whether to create a service to run Bucket Web interface.

Default value: false

install_method

Data type: Enum['url', 'package', 'none']

Installation method: url or package (only url is supported currently).

Default value: 'url'

package_ensure

Data type: Enum['present', 'absent', 'latest']

If package, then use this for package ensure default 'latest'.

Default value: 'latest'

package_name

Data type: String

Thanos package name - not available yet.

Default value: 'thanos'

base_url

Data type: Stdlib::HTTPUrl

Base URL for thanos.

Default value: 'https://github.com/thanos-io/thanos/releases/download'

download_extension

Data type: String

Extension of Thanos binaries archive.

Default value: 'tar.gz'

download_url

Data type: Optional[Stdlib::HTTPUrl]

Complete URL corresponding to the Thanos release, default to undef.

Default value: undef

base_dir

Data type: Stdlib::Absolutepath

Base directory where Thanos is extracted.

Default value: '/opt'

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located.

Default value: '/usr/local/bin'

config_dir

Data type: Stdlib::Absolutepath

Directory where configuration are located.

Default value: '/etc/thanos'

purge_config_dir

Data type: Boolean

Purge configuration directory.

Default value: true

tsdb_path

Data type: Stdlib::Absolutepath

Data directory of TSDB.

Default value: '/data'

manage_user

Data type: Boolean

Whether to create user for thanos or rely on external code for that.

Default value: true

manage_group

Data type: Boolean

Whether to create user for thanos or rely on external code for that.

Default value: true

user

Data type: String

User running thanos.

Default value: 'thanos'

group

Data type: String

Group under which thanos is running.

Default value: 'thanos'

usershell

Data type: Stdlib::Absolutepath

if requested, we create a user for thanos. The default shell is false. It can be overwritten to any valid path.

Default value: '/bin/false'

extra_groups

Data type: Array[String]

Add other groups to the managed user.

Default value: []

extract_command

Data type: Optional[String]

Custom command passed to the archive resource to extract the downloaded archive.

Default value: undef

manage_storage_config

Data type: Boolean

Whether to manage storage configuration file.

Default value: false

storage_config_file

Data type: Stdlib::Absolutepath

Path to storage configuration file.

Default value: "${config_dir}/storage.yaml"

storage_config

Data type: Hash[String, Data]

Storage configuration. type: one of ['S3', 'GCS', 'AZURE', 'SWIFT', 'COS', 'ALIYUNOSS', 'FILESYSTEM'] config: storage typed configuration in Hash[String, Data]

Default value: {}

manage_tracing_config

Data type: Boolean

Whether to manage tracing configuration file

Default value: false

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to tracing configuration file.

Default value: undef

tracing_config

Data type: Hash[String, Data]

Tracing configuration. type: one of ['JAEGER', 'STACKDRIVER', 'ELASTIC_APM', 'LIGHTSTEP'] config: tracing typed configuration in Hash[String, Data]

Default value: {}

manage_index_cache_config

Data type: Boolean

Whether to manage index cache configuration file

Default value: false

index_cache_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to index cache configuration file.

Default value: undef

index_cache_config

Data type: Hash[String, Data]

Index cache configuration. type: one of ['IN-MEMORY', 'MEMCACHED'] config: index cache typed configuration in Hash[String, Data]

Default value: {}

thanos::compact

This class install Compact as service to continuously compacts blocks in an object store bucket.

Examples

include thanos::compact

Parameters

The following parameters are available in the thanos::compact class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

data_dir

Data type: Optional[Stdlib::Absolutepath]

Data directory in which to cache blocks and process compactions.

Default value: undef

objstore_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains object store configuration. See format details: https://thanos.io/storage.md/#configuration

Default value: $thanos::storage_config_file

consistency_delay

Data type: String

Minimum age of fresh (non-compacted) blocks before they are being processed. Malformed blocks older than the maximum of consistency-delay and 30m0s will be removed.

Default value: '30m'

retention_resolution_raw

Data type: String

How long to retain raw samples in bucket. 0d - disables this retention

Default value: '0d'

retention_resolution_5m

Data type: String

How long to retain samples of resolution 1 (5 minutes) in bucket. 0d - disables this retention

Default value: '0d'

retention_resolution_1h

Data type: String

How long to retain samples of resolution 2 (1 hour) in bucket. 0d - disables this retention

Default value: '0d'

wait

Data type: Boolean

Do not exit after all compactions have been processed and wait for new work.

Default value: false

wait_interval

Data type: String

Wait interval between consecutive compaction runs and bucket refreshes. Only works when --wait flag specified.

Default value: '5m'

downsampling_disable

Data type: Boolean

Disables downsampling. This is not recommended as querying long time ranges without non-downsampled data is not efficient and useful e.g it is not possible to render all samples for a human eye anyway

Default value: false

block_sync_concurrency

Data type: Integer

Number of goroutines to use when syncing block metadata from object storage.

Default value: 20

block_viewer_global_sync_block_interval

Data type: String

Repeat interval for syncing the blocks between local and remote view for /global Block Viewer UI.

Default value: '1m'

compact_concurrency

Data type: Integer

Number of goroutines to use when compacting groups.

Default value: 1

delete_delay

Data type: String

Time before a block marked for deletion is deleted from bucket. If delete-delay is non zero, blocks will be marked for deletion and compactor component will delete blocks marked for deletion from the bucket. If delete-delay is 0, blocks will be deleted straight away. Note that deleting blocks immediately can cause query failures, if store gateway still has the block loaded, or compactor is ignoring the deletion because it's compacting the block at the same time.

Default value: '48h'

selector_relabel_config_file

Data type: Optional[Stdlib::Absolutepath]

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

Default value: undef

web_external_prefix

Data type: Optional[String]

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.

Default value: undef

web_prefix_header

Data type: Optional[String]

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.

Default value: undef

bucket_web_label

Data type: Optional[String]

Prometheus label to use as timeline title in the bucket web UI

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::config

This class install and manage configuration files like object store and tracing.

Examples

include thanos::config

Parameters

The following parameters are available in the thanos::config class:

manage_storage_config

Data type: Boolean

Whether to manage storage configuration file.

Default value: $thanos::manage_storage_config

storage_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to storage configuration file.

Default value: $thanos::storage_config_file

storage_config

Data type: Hash[String, Data]

Storage configuration. type: one of ['S3', 'GCS', 'AZURE', 'SWIFT', 'COS', 'ALIYUNOSS', 'FILESYSTEM'] config: storage typed configuration in Hash[String, Data]

Default value: $thanos::storage_config

manage_tracing_config

Data type: Boolean

Whether to manage tracing configuration file

Default value: $thanos::manage_tracing_config

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to tracing configuration file.

Default value: $thanos::tracing_config_file

tracing_config

Data type: Hash[String, Data]

Tracing configuration. type: one of ['JAEGER', 'STACKDRIVER', 'ELASTIC_APM', 'LIGHTSTEP'] config: tracing typed configuration in Hash[String, Data]

Default value: $thanos::tracing_config

manage_index_cache_config

Data type: Boolean

Whether to manage index cache configuration file

Default value: $thanos::manage_index_cache_config

index_cache_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to index cache configuration file.

Default value: $thanos::index_cache_config_file

index_cache_config

Data type: Hash[String, Data]

Index cache configuration. type: one of ['IN-MEMORY', 'MEMCACHED'] config: index cache typed configuration in Hash[String, Data]

Default value: $thanos::index_cache_config

thanos::install

This class install Thanos requirements and binaries.

Examples

include thanos::install

Parameters

The following parameters are available in the thanos::install class:

version

Data type: Pattern[/\d+\.\d+\.\d+/]

Thanos release. See https://github.com/thanos-io/thanos/releases

Default value: $thanos::version

package_name

Data type: String

Thanos package name - not available yet.

Default value: $thanos::package_name

os

Data type: String

Operating system.

Default value: $thanos::os

real_arch

Data type: String

Architecture (amd64 or arm64).

Default value: $thanos::real_arch

package_ensure

Data type: Enum['present', 'absent', 'latest']

If package, then use this for package ensurel default 'latest'.

Default value: $thanos::package_ensure

install_method

Data type: Enum['url', 'package', 'none']

Installation method: url or package (only url is supported currently).

Default value: $thanos::install_method

download_extension

Data type: String

Extension of Thanos binaries archive.

Default value: $thanos::download_extension

download_url

Data type: Stdlib::HTTPUrl

Complete URL corresponding to the Prometheus release, default to undef.

Default value: $thanos::real_download_url

extract_command

Data type: Optional[String]

Custom command passed to the archive resource to extract the downloaded archive.

Default value: $thanos::extract_command

base_dir

Data type: Stdlib::Absolutepath

Base directory where Thanos is extracted.

Default value: $thanos::base_dir

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located.

Default value: $thanos::bin_dir

config_dir

Data type: Stdlib::Absolutepath

Directory where configuration are located.

Default value: $thanos::config_dir

purge_config_dir

Data type: Boolean

Purge configuration directory.

Default value: $thanos::purge_config_dir

notify_services

Data type: Array[Type[Resource]]

Services to notify when binaries changed.

Default value: $thanos::notify_services

manage_user

Data type: Boolean

Whether to create user for thanos or rely on external code for that.

Default value: $thanos::manage_user

manage_group

Data type: Boolean

Whether to create user for thanos or rely on external code for that.

Default value: $thanos::manage_group

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

usershell

Data type: Stdlib::Absolutepath

if requested, we create a user for thanos. The default shell is false. It can be overwritten to any valid path.

Default value: $thanos::usershell

extra_groups

Data type: Array[String]

Add other groups to the managed user.

Default value: $thanos::extra_groups

thanos::query

This class install Query as service query node exposing PromQL enabled Query API with data retrieved from multiple store nodes.

Examples

include thanos::query

Parameters

The following parameters are available in the thanos::query class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

grpc_address

Data type: String

Listen ip:port address for gRPC endpoints (StoreAPI). Make sure this address is routable from other components.

Default value: '0.0.0.0:10901'

grpc_grace_period

Data type: String

Time to wait after an interrupt received for GRPC Server.

Default value: '2m'

grpc_server_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificate for gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_client_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA to verify clients against. If no client CA is specified, there is no client verification on server side. (tls.NoClientCert)

Default value: undef

grpc_client_tls_secure

Data type: Boolean

Use TLS when talking to the gRPC server

Default value: false

grpc_client_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificates to use to identify this client to the server

Default value: undef

grpc_client_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the client's certificate

Default value: undef

grpc_client_tls_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA Certificates to use to verify gRPC servers

Default value: undef

grpc_client_server_name

Data type: Optional[String]

Server name to verify the hostname on the returned gRPC certificates. See https://tools.ietf.org/html/rfc4366#section-3.1

Default value: undef

web_route_prefix

Data type: Optional[String]

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.

Default value: undef

web_external_prefix

Data type: Optional[String]

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.

Default value: undef

web_prefix_header

Data type: Optional[String]

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.

Default value: undef

log_request_decision

Data type: Optional[String]

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.

Default value: undef

query_timeout

Data type: String

Maximum time to process query by query node.

Default value: '2m'

query_max_concurrent

Data type: Integer

Maximum number of queries processed concurrently by query node.

Default value: 20

query_loopback_delta

Data type: Optional[String]

The maximum lookback duration for retrieving metrics during expression evaluations. PromQL always evaluates the query for the certain timestamp (query range timestamps are deduced by step). Since scrape intervals might be different, PromQL looks back for given amount of time to get latest sample. If it exceeds the maximum lookback delta it assumes series is stale and returns none (a gap). This is why lookback delta should be set to at least 2 times of the slowest scrape interval. If unset it will use the promql default of 5m.

Default value: undef

query_max_concurrent_select

Data type: Integer

Maximum number of select requests made concurrently per a query.

Default value: 4

query_replica_label

Data type: Optional[String]

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.

Default value: undef

selector_labels

Data type: Array[String]

Query selector labels that will be exposed in info endpoint.

Default value: []

endpoints

Data type: Array[String]

(Replace stores) Addresses of statically configured store API servers. The scheme may be prefixed with 'dns+' or 'dnssrv+' to detect store API servers through respective DNS lookups.

Default value: []

store_strict

Data type: Optional[String]

Addresses of only statically configured store API servers that are always used, even if the health check fails. Useful if you have a caching layer on top.

Default value: undef

store_sd_files

Data type: Array[Stdlib::Absolutepath]

Path to files that contain addresses of store API servers. The path can be a glob pattern.

Default value: []

store_sd_interval

Data type: String

Refresh interval to re-read file SD files. It is used as a resync fallback.

Default value: '5m'

store_sd_dns_interval

Data type: String

Interval between DNS resolutions.

Default value: '30s'

store_unhealthy_timeout

Data type: String

Timeout before an unhealthy store is cleaned from the store UI page.

Default value: '30s'

query_auto_downsampling

Data type: Boolean

Enable automatic adjustment (step / 5) to what source of data should be used in store gateways if no max_source_resolution param is specified.

Default value: false

query_partial_response

Data type: Boolean

Enable partial response for queries if no partial_response param is specified. --no-query.partial-response for disabling.

Default value: false

query_default_evaluation_interval

Data type: String

Set default evaluation interval for sub queries.

Default value: '1m'

store_response_timeout

Data type: String

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.

Default value: '0ms'

max_open_files

Data type: Optional[Integer]

Define how many open files the service is able to use In some cases, the default value (1024) needs to be increased

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::query_frontend

This class install Query Frontend as service that can be put in front of Thanos Queriers to improve the read path.

Examples

include thanos::query

Parameters

The following parameters are available in the thanos::query_frontend class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

query_range_split_interval

Data type: String

Split queries by an interval and execute in parallel, 0 disables it.

Default value: '24h'

query_range_max_retries_per_request

Data type: Integer

Maximum number of retries for a single request; beyond this, the downstream error is returned.

Default value: 5

query_range_max_query_length

Data type: Integer

Limit the query time range (end - start time) in the query-frontend, 0 disables it.

Default value: 0

query_range_max_query_parrallelism

Data type: Integer

Maximum number of queries will be scheduled in parallel by the frontend.

Default value: 14

query_range_response_cache_max_freshness

Data type: String

Most recent allowed cacheable result, to prevent caching very recent results that might still be in flux.

Default value: '1m'

query_range_partial_response

Data type: Boolean

Enable partial response for queries if no partial_response param is specified. --no-query-range.partial-response for disabling.

Default value: false

query_range_response_cache_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains response cache configuration.

Default value: undef

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

query_frontend_downstream_url

Data type: Stdlib::HTTPUrl

URL of downstream Prometheus Query compatible API.

Default value: 'http://localhost:9090'

query_frontend_compress_responses

Data type: Boolean

Compress HTTP responses.

Default value: false

query_frontend_log_queries_longer_than

Data type: Integer

Log queries that are slower than the specified duration. Set to 0 to disable. Set to < 0 to enable on all queries.

Default value: 0

log_request_decision

Data type: Optional[String]

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.

Default value: undef

max_open_files

Data type: Optional[Integer]

Define how many open files the service is able to use In some cases, the default value (1024) needs to be increased

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::receive

This class install Receiver as service that implements the Prometheus Remote Write API.

Examples

include thanos::downsample

Parameters

The following parameters are available in the thanos::receive class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

grpc_address

Data type: String

Listen ip:port address for gRPC endpoints (StoreAPI). Make sure this address is routable from other components.

Default value: '0.0.0.0:10901'

grpc_grace_period

Data type: String

Time to wait after an interrupt received for GRPC Server.

Default value: '2m'

grpc_server_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificate for gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_client_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA to verify clients against. If no client CA is specified, there is no client verification on server side. (tls.NoClientCert)

Default value: undef

remote_write_address

Data type: String

Address to listen on for remote write requests.

Default value: '0.0.0.0:19291'

remote_write_server_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificate for HTTP server, leave blank to disable TLS.

Default value: undef

remote_write_server_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the HTTP server, leave blank to disable TLS.

Default value: undef

remote_write_server_tls_client_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA to verify clients against. If no client CA is specified, there is no client verification on server side. (tls.NoClientCert)

Default value: undef

remote_write_client_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificates to use to identify this client to the server.

Default value: undef

remote_write_client_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the client's certificate.

Default value: undef

remote_write_client_tls_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA Certificates to use to verify servers.

Default value: undef

remote_write_client_server_name

Data type: Optional[String]

Server name to verify the hostname on the returned gRPC certificates. See https://tools.ietf.org/html/rfc4366#section-3.1

Default value: undef

data_dir

Data type: Optional[Stdlib::Absolutepath]

Data directory in which to cache blocks and process downsamplings.

Default value: undef

objstore_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains object store configuration. See format details: https://thanos.io/storage.md/#configuration

Default value: $thanos::storage_config_file

tsdb_retention

Data type: String

How long to retain raw samples on local storage. 0d - disables this retention.

Default value: '15d'

receive_hashrings_file

Data type: Optional[Stdlib::Absolutepath]

Path to file that contains the hashring configuration.

Default value: undef

receive_hashrings_file_refresh_interval

Data type: String

Refresh interval to re-read the hashring configuration file. (used as a fallback)

Default value: '5m'

receive_local_endpoint

Data type: Optional[String]

Endpoint of local receive node. Used to identify the local node in the hashring configuration.

Default value: undef

receive_tenant_header

Data type: String

HTTP header to determine tenant for write requests.

Default value: 'THANOS-TENANT'

receive_default_tenant_id

Data type: String

HDefault tenant ID to use when none is provided via a header.

Default value: 'default-tenant'

receive_tenant_label_name

Data type: String

Label name through which the tenant will be announced.

Default value: 'tenant_id'

receive_replica_header

Data type: String

HTTP header specifying the replica number of a write request.

Default value: 'THANOS-REPLICA'

receive_replication_factor

Data type: Integer

How many times to replicate incoming write requests.

Default value: 1

tsdb_wal_compression

Data type: Boolean

Compress the tsdb WAL.

Default value: false

tsdb_no_lockfile

Data type: Boolean

Do not create lockfile in TSDB data directory. In any case, the lockfiles will be deleted on next startup.

Default value: false

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::rule

This class install Rule as service ruler evaluating Prometheus rules against given Query nodes, exposing Store API and storing old blocks in bucket.

Examples

include thanos::rule

Parameters

The following parameters are available in the thanos::rule class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

grpc_address

Data type: String

Listen ip:port address for gRPC endpoints (StoreAPI). Make sure this address is routable from other components.

Default value: '0.0.0.0:10901'

grpc_grace_period

Data type: String

Time to wait after an interrupt received for GRPC Server.

Default value: '2m'

grpc_server_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificate for gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_client_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA to verify clients against. If no client CA is specified, there is no client verification on server side. (tls.NoClientCert)

Default value: undef

labels

Data type: Array[String]

Labels to be applied to all generated metrics. Similar to external labels for Prometheus, used to identify ruler and its blocks as unique source.

Default value: []

data_dir

Data type: Optional[Stdlib::Absolutepath]

Data directory.

Default value: undef

rule_files

Data type: Array[Stdlib::Absolutepath]

Rule files that should be used by rule manager. Can be in glob format.

Default value: []

resend_delay

Data type: String

Minimum amount of time to wait before resending an alert to Alertmanager.

Default value: '1m'

eval_interval

Data type: String

The default evaluation interval to use.

Default value: '30s'

tsdb_block_duration

Data type: String

Block duration for TSDB block.

Default value: '2h'

tsdb_retention

Data type: String

Block retention time on local disk.

Default value: '48h'

tsdb_no_lockfile

Data type: Boolean

Do not create lockfile in TSDB data directory. In any case, the lockfiles will be deleted on next startup.

Default value: false

tsdb_wal_compression

Data type: Boolean

Compress the tsdb WAL.

Default value: false

alertmanagers_url

Data type: Array[Stdlib::HTTPUrl]

Alertmanager replica URLs to push firing alerts. Ruler claims success if push to at least one alertmanager from discovered succeeds. The scheme may be prefixed with 'dns+' or 'dnssrv+' to detect Alertmanager 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.

Default value: []

alertmanagers_send_timeout

Data type: String

Timeout for sending alerts to alertmanager

Default value: '10s'

alertmanagers_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains alerting configuration. See format details: https://thanos.io/components/rule.md/#configuration. If defined, it takes precedence over the alertmanagers_url and alertmanagers_send_timeout options.

Default value: undef

alertmanagers_sd_dns_interval

Data type: String

Interval between DNS resolutions of Alertmanager hosts.

Default value: '30s'

alert_query_url

Data type: Optional[Stdlib::HTTPUrl]

The external Thanos Query URL that would be set in all alerts 'Source' field

Default value: undef

alert_label_drop

Data type: Array[String]

Labels by name to drop before sending to alertmanager. This allows alert to be deduplicated on replica label. Similar Prometheus alert relabelling

Default value: []

web_route_prefix

Data type: Optional[String]

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 Prometheus.

Default value: undef

web_external_prefix

Data type: Optional[String]

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.

Default value: undef

web_prefix_header

Data type: Optional[String]

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, hich sends the stripped prefix value in X-Forwarded-Prefix header. This allows thanos UI to be served on a sub-path.

Default value: undef

log_request_decision

Data type: Optional[String]

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.

Default value: undef

objstore_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains object store configuration. See format details: https://thanos.io/storage.md/#configuration

Default value: undef

queries

Data type: Array[String]

Addresses of statically configured query API servers. The scheme may be prefixed with 'dns+' or 'dnssrv+' to detect query API servers through respective DNS lookups.

Default value: []

query_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains query API servers configuration. See format details: https://thanos.io/components/rule.md/#configuration. If defined, it takes precedence over the queries and query.sd-files options.

Default value: undef

query_sd_files

Data type: Array[Stdlib::Absolutepath]

Path to file that contain addresses of query peers. The path can be a glob pattern.

Default value: []

query_sd_interval

Data type: String

Refresh interval to re-read file SD files. (used as a fallback)

Default value: '5m'

query_sd_dns_interval

Data type: String

Interval between DNS resolutions.

Default value: '30s'

max_open_files

Data type: Optional[Integer]

Define how many open files the service is able to use In some cases, the default value (1024) needs to be increased

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::sidecar

This class install Sidecar as service sidecar for Prometheus server.

Examples

include thanos::sidecar

Parameters

The following parameters are available in the thanos::sidecar class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

grpc_address

Data type: String

Listen ip:port address for gRPC endpoints (StoreAPI). Make sure this address is routable from other components.

Default value: '0.0.0.0:10901'

grpc_grace_period

Data type: String

Time to wait after an interrupt received for GRPC Server.

Default value: '2m'

grpc_server_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificate for gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_client_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA to verify clients against. If no client CA is specified, there is no client verification on server side. (tls.NoClientCert)

Default value: undef

prometheus_url

Data type: Stdlib::HTTPUrl

URL at which to reach Prometheus's API. For better performance use local network.

Default value: 'http://localhost:9090'

prometheus_ready_timeout

Data type: String

Maximum time to wait for the Prometheus instance to start up

Default value: '10m'

tsdb_path

Data type: Stdlib::Absolutepath

Data directory of TSDB.

Default value: $thanos::tsdb_path

reloader_config_file

Data type: Optional[Stdlib::Absolutepath]

Config file watched by the reloader.

Default value: undef

reloader_config_envsubst_file

Data type: Optional[Stdlib::Absolutepath]

Output file for environment variable substituted config file.

Default value: undef

reloader_rule_dirs

Data type: Array[Stdlib::Absolutepath]

Rule directories for the reloader to refresh.

Default value: []

reloader_watch_interval

Data type: String

Controls how often reloader re-reads config and rules.

Default value: '3m'

reloader_retry_interval

Data type: String

Controls how often reloader retries config reload in case of error.

Default value: '5s'

objstore_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains object store configuration. See format details: https://thanos.io/storage.md/#configuration

Default value: $thanos::storage_config_file

shipper_upload_compacted

Data type: Boolean

If true sidecar will try to upload compacted blocks as well. Useful for migration purposes. Works only if compaction is disabled on Prometheus. Do it once and then disable the flag when done.

Default value: false

min_time

Data type: Optional[String]

Start of time range limit to serve. Thanos sidecar 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.

Default value: undef

max_open_files

Data type: Optional[Integer]

Define how many open files the service is able to use In some cases, the default value (1024) needs to be increased

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::store

This class install Store as service store node giving access to blocks in a bucket provider. Now supported GCS, S3, Azure, Swift and Tencent COS..

Examples

include thanos::store

Parameters

The following parameters are available in the thanos::store class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

grpc_address

Data type: String

Listen ip:port address for gRPC endpoints (StoreAPI). Make sure this address is routable from other components.

Default value: '0.0.0.0:10901'

grpc_grace_period

Data type: String

Time to wait after an interrupt received for GRPC Server.

Default value: '2m'

grpc_server_tls_cert

Data type: Optional[Stdlib::Absolutepath]

TLS Certificate for gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_key

Data type: Optional[Stdlib::Absolutepath]

TLS Key for the gRPC server, leave blank to disable TLS

Default value: undef

grpc_server_tls_client_ca

Data type: Optional[Stdlib::Absolutepath]

TLS CA to verify clients against. If no client CA is specified, there is no client verification on server side. (tls.NoClientCert)

Default value: undef

data_dir

Data type: Optional[Stdlib::Absolutepath]

Data directory in which to cache remote blocks.

Default value: undef

index_cache_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains index cache configuration. See format details: https://thanos.io/components/store.md/#index-cache

Default value: undef

index_cache_size

Data type: String

Maximum size of items held in the index cache.

Default value: '250MB'

chunck_pool_size

Data type: String

Maximum size of concurrently allocatable bytes for chunks.

Default value: '2GB'

store_grpc_series_sample_limit

Data type: Integer

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.

Default value: 0

store_grpc_series_max_concurrency

Data type: Integer

Maximum number of concurrent Series calls.

Default value: 20

objstore_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains object store configuration. See format details: https://thanos.io/storage.md/#configuration

Default value: $thanos::storage_config_file

sync_block_duration

Data type: String

Repeat interval for syncing the blocks between local and remote view.

Default value: '3m'

block_sync_concurrency

Data type: Integer

Number of goroutines to use when syncing blocks from object storage.

Default value: 20

min_time

Data type: Optional[String]

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.

Default value: undef

max_time

Data type: Optional[String]

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.

Default value: undef

selector_relabel_config_file

Data type: Optional[Stdlib::Absolutepath]

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

Default value: undef

consistency_delay

Data type: String

Minimum age of all blocks before they are being read.

Default value: '30m'

ignore_deletion_marks_delay

Data type: String

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.

Default value: '24h'

web_external_prefix

Data type: Optional[String]

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.

Default value: undef

web_prefix_header

Data type: Optional[String]

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.

Default value: undef

max_open_files

Data type: Optional[Integer]

Define how many open files the service is able to use In some cases, the default value (1024) needs to be increased

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

thanos::tools::bucket_web

This class install Web interface for remote storage bucket.

Examples

include thanos::bucket_web

Parameters

The following parameters are available in the thanos::tools::bucket_web class:

ensure

Data type: Enum['present', 'absent']

State ensured from compact service.

Default value: 'present'

user

Data type: String

User running thanos.

Default value: $thanos::user

group

Data type: String

Group under which thanos is running.

Default value: $thanos::group

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

Default value: $thanos::bin_path

log_level

Data type: Thanos::Log_level

Only log messages with the given severity or above. One of: [debug, info, warn, error, fatal]

Default value: 'info'

log_format

Data type: Enum['logfmt', 'json']

Output format of log messages. One of: [logfmt, json]

Default value: 'logfmt'

tracing_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file with tracing configuration. See format details: https://thanos.io/tracing.md/#configuration

Default value: $thanos::tracing_config_file

objstore_config_file

Data type: Optional[Stdlib::Absolutepath]

Path to YAML file that contains object store configuration. See format details: https://thanos.io/storage.md/#configuration

Default value: $thanos::storage_config_file

http_address

Data type: String

Listen host:port for HTTP endpoints.

Default value: '0.0.0.0:10902'

http_grace_period

Data type: String

Time to wait after an interrupt received for HTTP Server.

Default value: '2m'

web_external_prefix

Data type: Optional[String]

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.

Default value: undef

web_prefix_header

Data type: Optional[String]

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.

Default value: undef

refresh

Data type: String

Refresh interval to download metadata from remote storage

Default value: '30m'

timeout

Data type: String

Timeout to download metadata from remote storage

Default value: '5m'

label

Data type: Optional[String]

Prometheus label to use as timeline title

Default value: undef

max_open_files

Data type: Optional[Integer]

Define how many open files the service is able to use In some cases, the default value (1024) needs to be increased

Default value: undef

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

Defined types

thanos::config::index_cache

Manage Index cache configuration file.

Examples

thanos::config::index_cache { '/etc/thanos/index_cache.yaml':
  ensure => 'present',
  type   => 'IN-MEMORY',
  config => {
    max_size      => 0,
    max_item_size => 0,
  },
}

Parameters

The following parameters are available in the thanos::config::index_cache defined type:

ensure

Data type: Enum['present', 'absent']

State ensured from configuration file.

type

Data type: Thanos::Index_cache_type

Type of Index cache. One of ['IN-MEMORY', 'MEMCACHED']

config

Data type: Hash[String, Data]

Configuration to typed index cache.

thanos::config::storage

Manage Storage configuration file.

Examples

thanos::config::storage { '/etc/thanos/storage.yaml':
  ensure => 'present',
  type   => 'FILESYSTEM',
  config => {
    directory => '/data',
  },
}

Parameters

The following parameters are available in the thanos::config::storage defined type:

ensure

Data type: Enum['present', 'absent']

State ensured from configuration file.

type

Data type: Thanos::Storage_type

Type of Storage configurarion. One of ['S3', 'GCS', 'AZURE', 'SWIFT', 'COS', 'ALIYUNOSS', 'FILESYSTEM']

config

Data type: Hash[String, Data]

Configuration to typed storage.

thanos::config::tracing

Manage Tracing configuration file

Examples

thanos::config::tracing { '/etc/thanos/tracing.yaml':
  ensure => 'present',
  type   => 'JAEGER',
  config => {...},
}

Parameters

The following parameters are available in the thanos::config::tracing defined type:

ensure

Data type: Enum['present', 'absent']

State ensured from configuration file.

type

Data type: Thanos::Tracing_type

Type of Tracing configurarion. One of ['JAEGER', 'STACKDRIVER', 'ELASTIC_APM', 'LIGHTSTEP']

config

Data type: Hash[String, Data]

Configuration to typed tracing.

thanos::resources::service

This defined type create component's service.

Examples

thanos::resources::service { 'component_name':
  ensure => 'running',
  bin_path => '/usr/local/bin/thanos',
}

Parameters

The following parameters are available in the thanos::resources::service defined type:

ensure

Data type: Variant[Stdlib::Ensure::Service, Enum['absent']]

State ensured from component service.

bin_path

Data type: Stdlib::Absolutepath

Path where binary is located.

user

Data type: String

User running thanos.

group

Data type: String

Group under which thanos is running.

max_open_files

Data type: Optional[Integer]

Define the maximum open files the service is allowed to use

Default value: undef

params

Data type: Hash

Parameters passed to the binary.

Default value: {}

extra_params

Data type: Hash

Parameters passed to the binary, ressently released in latest version of Thanos.

Default value: {}

Data types

Thanos::Index_cache_type

Thanos index cache type

Alias of

Enum['IN-MEMORY', 'MEMCACHED']

Thanos::Log_level

Thanos Log Level type

Alias of

Enum['debug', 'info', 'warn', 'error', 'fatal']

Thanos::Storage_type

Thanos Storage type

Alias of

Enum['S3', 'GCS', 'AZURE', 'SWIFT', 'COS', 'ALIYUNOSS', 'FILESYSTEM']

Thanos::Tracing_type

Thanos Tracing type

Alias of

Enum['JAEGER', 'STACKDRIVER', 'ELASTIC_APM', 'LIGHTSTEP']