/
loki.gotmpl
150 lines (133 loc) · 3.47 KB
/
loki.gotmpl
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
{{- $v := .Values -}}
{{- $l := $v.apps | get "loki" }}
{{- $teamNames := "" }}
{{- range $name, $config := $v.teamConfig }}
{{- $teamNames = print "%s%s" $teamNames $name }}
{{- end }}
# enable tracing for debug, need install jaeger and specify right jaeger_agent_host
# @TODO:
image:
tag: 2.4.1
tracing:
jaegerAgentHost:
config:
auth_enabled: {{ $v.otomi.isMultitenant }}
limits_config:
reject_old_samples_max_age: {{ $l | get "retention.duration" "24h" }}
schema_config:
configs:
{{- if $l | get "v11StartDate" nil }}
- from: '2018-04-15'
store: boltdb
object_store: filesystem
schema: v9
index:
prefix: index_
period: {{ $l | get "retention.period" "24h" }}
{{- end }}
- from: {{ $l | get "v11StartDate" "2021-05-12" }}
store: boltdb-shipper
object_store: {{ $l | get "storageType" "filesystem" }}
schema: v11
index:
prefix: index_
period: 24h
storage_config:
boltdb_shipper:
shared_store: {{ $l | get "storageType" "filesystem" }}
filesystem:
directory: /data/loki/chunks
{{- if ne ($l | get "storageType" "filesystem") "filesystem" }}
{{ $l.storageType }}: {{- $l | get $l.storageType | toYaml | nindent 6 }}
{{- end }}
compactor:
retention_enabled: true
shared_store: {{ $l | get "storageType" "filesystem" }}
chunk_store_config:
max_look_back_period: {{ $l | get "retention.period" "24h" }}
table_manager:
retention_deletes_enabled: true
retention_period: {{ $l | get "retention.period" "24h" }}
networkPolicy:
enabled: false
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
## If you set enabled as "True", you need :
## - create a pv which above 10Gi and has same namespace with loki
## - keep storageClassName same with below setting
persistence:
enabled: true
accessModes:
- ReadWriteOnce
size: {{ $l | get "persistence.size" "20Gi" }}
{{- if $v._derived.supportedCloud }}
storageClassName: fast
{{- end }}
## Assign a PriorityClassName to pods if set
# priorityClassName:
resources:
{{- with $l | get "resources" nil }}
{{- toYaml . | nindent 2 }}
{{- else }}
limits:
cpu: 800m
memory: 512Mi
requests:
cpu: 100m
memory: 128Mi
{{- end }}
fullnameOverride: loki
promtail:
serviceName: promtail
extraContainers:
{{- if $v.otomi.isMultitenant }}
- name: reverse-proxy
image: angelbarrera92/basic-auth-reverse-proxy:dev
args:
- "serve"
- "--upstream=http://localhost:3100"
- "--auth-config=/etc/reverse-proxy-conf/authn.yaml"
ports:
- name: http
containerPort: 11811
protocol: TCP
resources:
limits:
cpu: 250m
memory: 200Mi
requests:
cpu: 50m
memory: 40Mi
volumeMounts:
- name: reverse-proxy-auth-config
mountPath: /etc/reverse-proxy-conf
{{- end }}
extraVolumes:
{{- if $v.otomi.isMultitenant }}
- name: reverse-proxy-auth-config
secret:
secretName: reverse-proxy-auth-config
{{- end }}
extraVolumeMounts: []
extraPorts:
{{- if $v.otomi.isMultitenant }}
- port: 11811
protocol: TCP
name: http
targetPort: http
{{- end }}
serviceMonitor:
enabled: true
additionalLabels:
prometheus: system
extraArgs:
# log.level: debug
podAnnotations:
sidecar.istio.io/inject: "false"
{{- if $v.otomi.isMultitenant }}
checksum/teams: {{ $teamNames | sha256sum }}
{{- end }}
{{- with .Values.otomi | get "globalPullSecret" nil }}
image:
pullSecrets:
- otomi-pullsecret-global
{{- end }}