-
Notifications
You must be signed in to change notification settings - Fork 0
/
values-thanos.yaml
173 lines (168 loc) · 4.83 KB
/
values-thanos.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
global:
thanos:
enabled: true
# For Thanos Installs, Allow Higher Concurrency from Cost-Model
# Still may require tweaking for some installs, but the thanos-query-frontend
# will greatly assist in reduction memory bloat in query.
kubecostModel:
maxQueryConcurrency: 5
# This configuration is applied to thanos only. Expresses the resolution to
# use for longer query ranges. Options: raw, 5m, 1h - Default: raw
maxSourceResolution: 5m
prometheus:
server:
extraArgs:
storage.tsdb.min-block-duration: 2h
storage.tsdb.max-block-duration: 2h
storage.tsdb.retention: 2w
securityContext:
runAsNonRoot: true
runAsUser: 1001
extraVolumes:
- name: object-store-volume
secret:
# Ensure this secret name matches thanos.storeSecretName
secretName: kubecost-thanos
enableAdminApi: true
sidecarContainers:
- name: thanos-sidecar
image: thanosio/thanos:v0.32.5
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop:
- ALL
args:
- sidecar
- --log.level=debug
- --tsdb.path=/data/
- --prometheus.url=http://127.0.0.1:9090
- --objstore.config-file=/etc/config/object-store.yaml
# 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.
- --min-time=-3h
env:
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
ports:
- name: http
containerPort: 10902
- name: grpc
containerPort: 10901
- name: cluster
containerPort: 10900
volumeMounts:
- name: config-volume
mountPath: /etc/prometheus
- name: storage-volume
mountPath: /data
subPath: ""
- name: object-store-volume
mountPath: /etc/config
thanos:
store:
enabled: true
grpcSeriesMaxConcurrency: 20
blockSyncConcurrency: 20
extraEnv:
- name: GOGC
value: "100"
- name: GODEBUG
value: "madvdontneed=1"
resources:
requests:
memory: "2.5Gi"
query:
enabled: true
timeout: 3m
# Maximum number of queries processed concurrently by query node.
maxConcurrent: 8
# Maximum number of select requests made concurrently per a query.
maxConcurrentSelect: 2
resources:
requests:
memory: "2.5Gi"
autoDownsampling: false
extraEnv:
- name: GOGC
value: "100"
- name: GODEBUG
value: "madvdontneed=1"
http:
# http listen port number
port: 9090
# Service definition for query http service
service:
type: ClusterIP
# Annotations to query http service
annotations: {}
# Labels to query http service
labels: {}
matchLabels: {}
# Set up ingress for the http service
ingress:
enabled: false
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
labels: {}
path: "/"
pathType: ImplementationSpecific
hosts:
- "/"
tls: []
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
# Thanos Query Frontend
queryFrontend:
enabled: true
compressResponses: true
# Downstream Tripper Configuration
downstreamTripper:
enabled: true
idleConnectionTimeout: 90s
responseHeaderTimeout: 2m
tlsHandshakeTimeout: 10s
expectContinueTimeout: 1s
maxIdleConnections: 200
maxIdleConnectionsPerHost: 100
maxConnectionsPerHost: 0
# Response Cache Configuration
# Configure either a max size constraint or max items.
responseCache:
enabled: true
# Maximum memory size of the cache in bytes. A unit suffix (KB, MB, GB) may be applied.
maxSize: 1.25GB
# Maximum number of entries in the cache.
maxSizeItems: 0
# The expiry duration for the cache.
validity: 2m
extraEnv:
- name: GOGC
value: "100"
- name: GODEBUG
value: "madvdontneed=1"
resources:
requests:
memory: "1.5Gi"
# Thanos Sidecar Service Discovery
# Disabling removes the prometheus sidecar from querier store discovery. This ensures
# that all clusters read from the same data in remote store.
sidecar:
enabled: true
bucket:
enabled: false
compact:
enabled: true
dataVolume:
persistentVolumeClaim:
claimName: compact-data-volume
storage: 100Gi
# This secret name should match the sidecar configured secret name volume
# in the prometheus.server.extraVolumes entry
storeSecretName: kubecost-thanos