Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add loki charts #39

Closed
wants to merge 237 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
237 commits
Select commit Hold shift + click to select a range
511006e
Inital commit.
tomwilkie Apr 15, 2018
cf03c43
Add helm chart (#107)
Dec 17, 2018
d62325d
deploy promtail on master node as default (#184)
daixiang0 Jan 10, 2019
8384b20
helm: remove promtail sa setting (#160)
daixiang0 Jan 17, 2019
dd65ccc
allow promtail path to be a glob match (#206)
woodsaj Jan 17, 2019
b1a4730
add container_name label to logs
woodsaj Jan 19, 2019
1e9445e
Merge pull request #229 from grafana/issue190
woodsaj Jan 19, 2019
fda278e
s/__meta_kubernetes_container_name/__meta_kubernetes_pod_container_na…
tomwilkie Jan 29, 2019
c7ad177
Fix validation; allow 'metrics' without a metric name. (#268)
tomwilkie Jan 31, 2019
3c0d0ed
Flush idle chunks properly (#209)
gouthamve Feb 1, 2019
b4fb6e9
Add pvc and move data to data (#156)
mikesplain Feb 3, 2019
34c3b31
tail all container log files
Feb 4, 2019
a851a02
Merge pull request #281 from grafana/issue276
woodsaj Feb 4, 2019
0a08055
dont add pods twice if they have app and name labels
Feb 11, 2019
d375532
Merge pull request #314 from grafana/20190212-fixPromtailKsonnet
woodsaj Feb 11, 2019
79a583c
Fix helm install error (#305)
daixiang0 Feb 11, 2019
03e13a1
fixed promtail ds, it had deployment options
erkules Feb 12, 2019
53f8385
Loki pod needs secret mounting privileges
hasonhai Feb 15, 2019
227a917
Merge pull request #335 from hasonhai/master
davkal Feb 15, 2019
264013a
Change image pull default policy to Always
davkal Feb 15, 2019
7065a6f
Merge pull request #336 from grafana/davkal/help-always-pull
davkal Feb 15, 2019
028f531
Add minReadySeconds
granular-ryanbonham Feb 25, 2019
5ef9576
Add support for setting terminationGracePeriodSeconds. Add example re…
granular-ryanbonham Feb 25, 2019
7506b4a
fix port in readinessProbe example
granular-ryanbonham Feb 25, 2019
a91c388
Add -metrics to port name for loki so our Prometheus will scrape it.
tomwilkie Feb 25, 2019
5095208
Fix fullnameOverride in Helm chart
Mar 5, 2019
51cd60a
Add entryParser option to helm chart
Mar 5, 2019
df8c214
Made the docker root configurable. Default is '/var/lib/docker'
nicknezis Mar 7, 2019
e97bbd5
Changed 'dockerRoot' to a more generic name
nicknezis Mar 7, 2019
74f579a
Merge remote-tracking branch 'upstream/master' into helm_timeouts
granular-ryanbonham Mar 8, 2019
ac99957
Set defaults for minReadySeconds and terminationGracePeriodSeconds an…
granular-ryanbonham Mar 8, 2019
b6005ae
More generic handling of volumes and volumeMounts in Promtail helm te…
nicknezis Mar 8, 2019
84c673e
Updated with cleaner toYaml Helm logic
nicknezis Mar 8, 2019
8a4834c
Adds netpol to allow promtail to reach loki
belminf Mar 9, 2019
8bc6700
Support only deploy loki or promtail and fix helm lint issue
daixiang0 Mar 16, 2019
580a37e
Merge pull request #387 from belminf/master
davkal Mar 18, 2019
d47b469
Merge pull request #379 from nicknezis/feature/dockerRoot
davkal Mar 18, 2019
4ae04bf
Merge branch 'master' into enable-loki
daixiang0 Mar 19, 2019
d4df0d2
Merge pull request #398 from daixiang0/enable-loki
davkal Mar 19, 2019
9a947c0
Support AWS Storage w/ HELM template (#337)
granular-ryanbonham Mar 19, 2019
fe32f17
Tag with lastest (#236)
daixiang0 Mar 20, 2019
3fd4f9d
Add readiness probe to Helm chart and cleanup
Mar 19, 2019
403f075
Merge pull request #411 from steven-sheehy/helm-cleanup
davkal Mar 20, 2019
88bdf0e
Use __meta_kubernetes_pod_controller_name to ensure we scrape all pod…
tomwilkie Mar 20, 2019
41951d3
Add backoff_config in helm
daixiang0 Mar 21, 2019
2be2a15
remove white noise
daixiang0 Mar 21, 2019
dffaf6a
Merge pull request #415 from daixiang0/add-backoff
davkal Mar 25, 2019
975aba0
Helm: Run with reduced privileges
Mar 20, 2019
4929226
Merge pull request #413 from steven-sheehy/helm-securitycontext
davkal Mar 25, 2019
de12350
Helm: Allow custom promtail configuration
Mar 25, 2019
f85b0c3
Fix liveness/readyness probes, they can not be empty {}
granular-ryanbonham Mar 25, 2019
868f3de
range is not a valid option for seLinux
granular-ryanbonham Mar 25, 2019
b76c28d
Fix security context remove fsGroup
granular-ryanbonham Mar 25, 2019
5ee72a6
Change Loki's Pod and Conainter Security Policies.
granular-ryanbonham Mar 25, 2019
28d9f63
Dropping liveness/readiness probe from promtail helm template as ther…
granular-ryanbonham Mar 25, 2019
a065260
Merge pull request #418 from steven-sheehy/promtail-config
davkal Mar 26, 2019
058f93b
Merge pull request #419 from granular-ryanbonham/fix_helm
davkal Mar 26, 2019
0193434
Add health check
daixiang0 Mar 26, 2019
a2944e1
add miss promtail client config option
daixiang0 Mar 26, 2019
4e69510
update check
daixiang0 Mar 29, 2019
bb7a99b
fix typo
daixiang0 Mar 30, 2019
cebe0a8
Merge pull request #422 from daixiang0/add-health
davkal Apr 1, 2019
513388a
Setup Helm chart repository
Mar 31, 2019
342c40b
Fix service account error
daixiang0 Apr 4, 2019
e5ed45a
Separate loki & promtail charts
Apr 4, 2019
eb80f2c
Add loki-stack helm chart
Apr 8, 2019
7190bc4
include all lifecycler ring config
sboschman Apr 1, 2019
3cb048a
Fix missing volume after refactor
Apr 10, 2019
e672650
Merge pull request #467 from steven-sheehy/missing-volume
davkal Apr 10, 2019
e24836c
Update helm docs
daixiang0 Apr 11, 2019
5e0d934
Remove useless config option
daixiang0 Apr 11, 2019
70cd933
Merge pull request #445 from sboschman/task-ring-config
davkal Apr 11, 2019
d3e45c9
Add a /ready endpoint to promtail
Apr 6, 2019
5f44082
Remove liveness probes from promtail
Apr 11, 2019
2229932
Helm: Allow custom loki config
Apr 11, 2019
cd7efe1
update expression
daixiang0 Apr 12, 2019
4ecbdde
Update chart version
daixiang0 Apr 12, 2019
d914c20
Added option that loki service run as nodeport
jmvizcainoio Apr 12, 2019
34d4fed
Merge branch 'master' into reduce-config-option
daixiang0 Apr 15, 2019
02eae8c
Merge pull request #479 from jmvizcainoio/master
davkal Apr 17, 2019
004f86b
Merge pull request #476 from steven-sheehy/loki-config
davkal Apr 17, 2019
e8d249b
Merge pull request #470 from daixiang0/add-update
davkal Apr 17, 2019
1159f5c
Bumped chart versions
davkal Apr 17, 2019
a372418
Merge branch 'master' into reduce-config-option
daixiang0 Apr 18, 2019
2baf4ac
Comment how to contribute helm chart
daixiang0 Apr 18, 2019
1c90baa
Bump chart version
daixiang0 Apr 18, 2019
a555ec9
Add comment
daixiang0 Apr 18, 2019
56e167f
Update language
daixiang0 Apr 19, 2019
9cd668e
allow additional container args for Loki (#503)
sboschman Apr 23, 2019
be47aed
allow additional pod labels (#509)
sboschman Apr 24, 2019
99c53c6
Configurable Loki scheme in helm file, with optional basic auth (#494)
arjenvdhave Apr 25, 2019
bcba097
Add custom help info
daixiang0 Apr 26, 2019
d4977d7
Make sure the default for EnforceMetricName is ✅ (#518)
gouthamve Apr 26, 2019
d8c0feb
Enable tracing loki in helm chart (#496)
daixiang0 Apr 26, 2019
5c737e5
Take 2 for fix the limit settings (#519)
gouthamve Apr 26, 2019
c305f66
Add target config (#486)
daixiang0 Apr 26, 2019
8908d0b
Merge branch 'master' into debug-helm
daixiang0 Apr 28, 2019
fe36262
bump up chart version
daixiang0 Apr 28, 2019
9dcfc32
Merge branch 'master' into reduce-config-option
daixiang0 Apr 28, 2019
f56cb64
Add option (#528)
daixiang0 Apr 30, 2019
8e67e52
Add scrape config for control plane static pods
Apr 20, 2019
ddabd7a
Support CRI 1.14+ directory change
May 7, 2019
4884ad2
Updating helm/ksonnet to use new pipeline config
slim-bean May 8, 2019
09d633b
add optional PodDisruptionBudget to helm chart (#515)
victoriaalee May 9, 2019
049e052
Merge pull request #448 from daixiang0/add-help
davkal May 14, 2019
e3d2b97
Merge pull request #491 from daixiang0/debug-helm
davkal May 14, 2019
1b0d55b
Limiting query start time with config (#572)
sandeepsukhani May 15, 2019
06ca1fb
Helm: Allow custom pipeline stages (#580)
May 15, 2019
8c192b5
bump up promtail chart version
daixiang0 May 17, 2019
717fe6e
Merge branch 'master' into reduce-config-option
daixiang0 May 17, 2019
d69610b
Fix local config: Use DayTime (#598)
gouthamve May 17, 2019
19c4d3f
need to bump helm chart after PR #598
slim-bean May 21, 2019
016a78e
Also bumping lok-stack version which needs to be done if the loki or …
slim-bean May 23, 2019
481929f
Added namespace to helm install notes (#617)
jacksoncage May 24, 2019
fb034dd
This add make target to deploy a dev version using helm (#586)
cyriltovena May 24, 2019
20b3f1b
Update cortex vendor (#610)
sandeepsukhani May 24, 2019
ae69b96
Update readme (loki-stack)
davkal May 24, 2019
4602da5
Merge branch 'master' into reduce-config-option
daixiang0 May 27, 2019
d535827
ksonnet changes for running loki in single binary (#622)
sandeepsukhani May 27, 2019
8c0383d
Helm chart tracing variable fix (#621)
jpds May 29, 2019
5db6cfd
Switch Loki to StatefulSet (#585)
May 29, 2019
d5e2251
Limits: Reject entries based on age set in limits (#631)
sandeepsukhani May 30, 2019
eb5aa8b
Merge branch 'master' into reduce-config-option
daixiang0 May 31, 2019
264884a
fix labels for PodDisruptionBudget on helm (#623)
qw1mb0 Jun 1, 2019
f69a74a
change the helm pullPolicy since we will be using releases now
slim-bean Jun 3, 2019
81c54b7
updating versions for loki v0.1.0
slim-bean Jun 3, 2019
caa5f9f
Helm: Integration testing (#641)
Jun 12, 2019
28b5f28
Merge branch 'master' into reduce-config-option
daixiang0 Jun 18, 2019
60e2839
fix helm lint issue
daixiang0 Jun 19, 2019
3b82ef3
Update chart version
daixiang0 Apr 12, 2019
8c73896
Merge branch 'master' into reduce-config-option
daixiang0 Jun 19, 2019
044f3cb
Merge pull request #469 from daixiang0/reduce-config-option
davkal Jun 20, 2019
ab8a166
update grafana to fix dashboard provider (#674)
cyriltovena Jul 5, 2019
39ee3e2
Typo on values.yaml (#728)
prometherion Jul 9, 2019
1132db8
fixed helm installation instructions (#761)
Jul 16, 2019
424f36e
Helm: Be able to customize the Namespace (#830)
mmatur Aug 1, 2019
5a9c666
Helm chart: Added service monitor (#824)
amartorelli Aug 1, 2019
336df41
fix grafana image tag by pinning it (#835)
cyriltovena Aug 1, 2019
61c077f
release: update ksonnet and helm charts to version v0.2.0
slim-bean Aug 2, 2019
f4238a2
Reorder relabeling rules to prevent pod label from overwriting config…
slim-bean Aug 6, 2019
2d2aee4
Add promtail ServiceMonitor and headless Service (#856)
martinbaillie Aug 7, 2019
4fca8ec
update helm and ksonnet to 0.3.0
slim-bean Aug 18, 2019
915ddbf
Improve helm default values for ingesters.
cyriltovena Jun 17, 2019
b40eb43
bump chart
cyriltovena Jun 17, 2019
cf68f7c
Add support for additional labels and scrapeTimeout for serviceMonitors
minhdanh Aug 26, 2019
6e47577
Bump chart versions
minhdanh Sep 7, 2019
39e7f25
Fix links to correct doc (#1005)
SmilingNavern Sep 11, 2019
c6b0658
helm chart: Add missing operator to promtail (#967)
makocchi-git Sep 24, 2019
fce1d99
Helm: Remove default value of storageClassName in loki/loki helm char…
polar3130 Sep 26, 2019
1a7a35e
fluent-bit shared object go plugin (#847)
cosmo0920 Sep 26, 2019
7fe67cf
Feature: Add extra containers to loki helm chart (#909)
angelbarrera92 Oct 1, 2019
edcda84
Bump grafana image (#1110)
marcosnils Oct 3, 2019
946b55a
Increased promtail's backoff settings in prod and improved doc (#1083)
pracucci Oct 7, 2019
da53f33
docs: fix Promtail / Loki capitalization (#1130)
pracucci Oct 8, 2019
b22f3ea
Client recommendations documentation tweaks (#1124)
geowa4 Oct 9, 2019
7173bcd
helm: Add support for passing arbitrary secrets (#1111)
ekarlso Oct 9, 2019
e4715c1
Helm chart: Allow additional scrape_configs to be added (#1134)
minhdanh Oct 10, 2019
3cf5449
doc(fluent-bit): add missing namespace (#1077)
daixiang0 Oct 15, 2019
129d352
docs(helm): fix broken link to grafana datasource (#1152)
nicr9 Oct 15, 2019
d774d0a
rollback fluent-bit push path until we release 0.4
cyriltovena Oct 15, 2019
47283fb
Add release name to prometheus service name. (#1174)
rally25rs Oct 18, 2019
92f3a94
Helm: Fix the reference error of loki/loki helm chart (#1056)
polar3130 Oct 24, 2019
c776952
update versions to new release
slim-bean Oct 24, 2019
5003546
Simplify regexp's (#1202)
beorn7 Oct 28, 2019
727fdee
Helm path update (#1061)
joe-elliott Oct 31, 2019
a1027e1
Updated Kubernetes docs links (#1219)
MightySCollins Nov 5, 2019
d5093f2
helm/loki-stack supports k8s 1.16 (#1238)
oke-py Nov 7, 2019
1b9171d
helm: update default terminationGracePeriodSeconds to 4800 (#1257)
rfratto Nov 13, 2019
7a639ab
updating helm and ksonnet to version v1.0.0 (#1292)
slim-bean Nov 20, 2019
fa5e81d
Update loki helm chart to support service account annotations (#1341)
adamjohnson01 Dec 2, 2019
3563f1c
Updating version numbers for 1.1.0 release
slim-bean Dec 4, 2019
53c4f6c
v1.2.0: update helm and ksonnet (#1389)
rfratto Dec 9, 2019
d367078
helm: support adding init containers to the loki pod (#1336)
terjesannum Dec 13, 2019
0d492c2
Helm: fix issue with config.clients (#1431)
eugene100 Jan 9, 2020
e70549b
Allow to define custom parsers to use with fluentbit.io/parser annota…
olivierboudet Jan 10, 2020
f4e1e78
helm: add podsecuritypolicy for fluent-bit (#1506)
terjesannum Jan 15, 2020
6411263
helm : fix fluent-bit parser configuration syntax (#1534)
Jan 16, 2020
e9e3392
Allow extra command line args for external labels like hostname (#1530)
Jan 17, 2020
43ca2e1
updating to 1.3.0 release
slim-bean Jan 22, 2020
2faa377
helm: Allow setting 'loadBalancerSourceRanges' for the loki service (…
Jan 24, 2020
3e07c29
Disable transfers in loki-local-config.yaml (#1579)
rfratto Jan 24, 2020
0312960
Helm/loki-stack: add template for the service name to connect to loki…
polar3130 Jan 27, 2020
d4ca3b3
Helm/loki-stack: refresh default grafana.image.tag to 6.6.0 (#1590)
polar3130 Jan 28, 2020
0b5c3de
[loki helm chart] added ingress (#1585)
monotek Jan 28, 2020
bd6e080
added ability to configure kernel setting fs.inotify.max_user_instanc…
rsteneteg Feb 3, 2020
f7cf65c
Promtail Helm Chart: Add support for extra environment variables (#1529)
tourea Feb 5, 2020
b2c1287
Added support for imagePullSecrets in Loki Helm chart (#1632)
lukipro Feb 6, 2020
f5e842a
Loki stack helm chart can deploy datasources without Grafana (#1688)
fredgate Feb 13, 2020
23b3ca4
[promtail helm chart] Enable support for syslog service (#1617)
billimek Feb 14, 2020
33350b2
fix promtail/templates/NOTES.txt to show correctly port-forward comma…
oke-py Feb 14, 2020
eabe9ae
[promtail helm chart] - Expand promtail syslog svc to support values …
Feb 26, 2020
2d22ae0
Prevent prometheus to scrap both services (#1817)
jeanlucmongrain Mar 18, 2020
4b496db
Move default port for Loki to 3100 everywhere. (#1838)
cyriltovena Mar 23, 2020
a7857a8
Helm/loki-stack: refresh default grafana.image.tag to 6.7.0 (#1825)
polar3130 Mar 23, 2020
0bd7c10
Add extraMount, extraVolumeMount to promtail helm chart for systemd-j…
Mar 31, 2020
b53037c
updating helm and ksonnet for 1.4.0 release
slim-bean Apr 1, 2020
be0343e
Sign helm package with GPG. (#1864)
cyriltovena Apr 1, 2020
f403d40
[helm loki/promtail] make UpdateStrategy configurable (#1898)
Apr 6, 2020
79234cb
updating helm and ksonnet to 1.4.1
slim-bean Apr 6, 2020
98d95fa
Fix fluent-bit metrics (#1915)
dirtycajunrice Apr 8, 2020
7b8468d
Update Cortex to latest master (#1869)
pstibrany Apr 14, 2020
dfc0778
bumps helm to keepalive-master after cortex vendoring (#1937)
owen-d Apr 14, 2020
2f22bdb
Reverting helm changes which were included in Cortex 1.0 vendor upgra…
slim-bean Apr 15, 2020
c042b22
helm chart: add missing line feed (#1967)
rdxmb Apr 21, 2020
f0becad
added extraCommandlineArgs in values file (#1981)
sshah90 Apr 24, 2020
cc1bc31
Change image tag from 1.4.1 to 1.4.0 in Helm chart (#2015)
etashsingh Apr 30, 2020
c5e7193
Spelling (#2014)
jsoref Apr 30, 2020
4909736
Add extraOutputs variable to support multiple outputs for fluent-bit …
avii-ridge May 5, 2020
9508bd2
Docs: update Loki Helm Chart document to support Helm 3 (#2038)
oke-py May 8, 2020
e864f1e
updating all the images to 1.5.0 release (#2100)
slim-bean May 20, 2020
8a35174
Allow configuring more options for output configuration (#2089)
FrederikNJS May 26, 2020
1de606d
Keep scrape config in line with the new Prometheus scrape config
beorn7 May 18, 2020
23102eb
Support Prometheus on a sub-path in Grafana config (#2099)
allout58 May 27, 2020
0f1c7bb
helm/loki-stack: render loki datasource only if grafana is enabled (#…
osela May 29, 2020
2e793d7
Adds the ability to have a pull secrets for Promtail. (#2141)
cyriltovena Jun 2, 2020
d837f94
BUG: add missing namespace in ingress object (#2205)
joschi36 Jun 15, 2020
2379cab
helm: Add loadBalancerIP option to loki chart (#2238)
vhrosales Jun 18, 2020
22480f4
Kubernetes manifests: Remove namespace from cluster-wide resources (#…
Jun 22, 2020
d75b5a2
Add readmes to individual helm charts (#2233)
vyzigold Jun 22, 2020
1912567
Render loki datasources even if Grafana is disabled. (#2197)
cyriltovena Jun 22, 2020
ca6f2e0
helm: add annotations to service monitor (#2258)
Synehan Jun 29, 2020
da9a22d
Add projected and downwardAPI volume types to PodSecurityPolicy (#235…
StevenReitsma Jul 17, 2020
760bf16
Loki Logstash Plugin (#1822)
adityacs Jul 17, 2020
b5ba2ca
Add emptyDir volume type to promtail PSP (#2379)
StevenReitsma Jul 21, 2020
0c66cfb
Fix regression in chart name (#2406)
steven-sheehy Jul 24, 2020
79ffa13
Set service values via --set for logstash. (#2415)
cyriltovena Jul 29, 2020
8b96ffd
promtail: enable externalIPs support for syslog (#2490)
carpenike Aug 12, 2020
51cb8a9
Add optional secret to pull Docker image in fluent-bit chart (#2489)
fredgate Aug 12, 2020
03b944e
updating images to 1.6.0 (#2504)
slim-bean Aug 13, 2020
6c3d803
Add support for PV selector in Loki statefulset (#2554)
alexandre-allard Sep 10, 2020
eafc9b0
[Promtail] enables configuring psp in helm chart (#2659)
Sep 29, 2020
51a57d2
Promtail: (and also fluent-bit) change the max batch size to 1MB (#2…
slim-bean Oct 1, 2020
1d037cb
Added fluent-bit, loki, loki-stack and promtail charts
Oct 3, 2020
1cb4670
Migration adjustments
torstenwalter Oct 3, 2020
2ba63de
Move alignment of grafana chart README to another PR
torstenwalter Oct 6, 2020
f454cca
Merge branch 'main' into merge-loki-charts
torstenwalter Oct 6, 2020
3a97c0e
remove stable repo from ct.yaml
torstenwalter Dec 9, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions charts/fluent-bit/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
14 changes: 14 additions & 0 deletions charts/fluent-bit/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
apiVersion: "v1"
name: fluent-bit
version: 0.4.0
appVersion: v1.6.0
kubeVersion: "^1.10.0-0"
description: "Uses fluent-bit Loki go plugin for gathering logs and sending them to Loki"
home: https://grafana.com/loki
icon: https://github.com/grafana/loki/raw/master/docs/logo.png
sources:
- https://github.com/grafana/loki
maintainers:
- name: Loki Maintainers
email: lokiproject@googlegroups.com
engine: gotpl
122 changes: 122 additions & 0 deletions charts/fluent-bit/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
# Fluent Bit Loki chart

This chart install the Fluent Bit application to ship logs to Loki. It defines daemonset on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager.

## Get Repo Info

```console
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
```

_See [helm repo](https://helm.sh/docs/helm/helm_repo/) for command documentation._

## Installing the Chart

> If you don't have `Helm` installed locally, or `Tiller` installed in your Kubernetes cluster, read the [Using Helm](https://docs.helm.sh/using_helm/) documentation to get started.
To install the chart with the release name `my-release` using our helm repository:

```bash
helm repo add grafana https://grafana.github.io/helm-charts
helm upgrade --install my-release grafana/fluent-bit \
--set loki.serviceName=loki.default.svc.cluster.local
```

If you deploy Loki with a custom namespace or service name, you must change the value above for `loki.serviceName` to the appropriate value.

The command deploys Fluent Bit on the Kubernetes cluster with the default configuration. The [configuration](#configuration) section lists the parameters that can be configured during installation.

To configure the chart to send to [Grafana Cloud](https://grafana.com/products/cloud) use:

```bash
helm upgrade --install my-release grafana/fluent-bit \
--set loki.serviceName=logs-us-west1.grafana.net,loki.servicePort=80,loki.serviceScheme=https \
--set loki.user=2830,loki.password=1234
```

> **Tip**: List all releases using `helm list`

To install a custom tag use the following command:

```bash
helm upgrade --install my-release grafana/fluent-bit \
--set image.tag=<custom tag>
```

The full list of available tags on [docker hub](https://cloud.docker.com/u/grafana/repository/docker/grafana/fluent-bit-plugin-loki).

Alternatively you can install the full [Loki stack](../loki-stack) (Loki + Fluent Bit) using:

```bash
helm upgrade --install my-release grafana/loki-stack \
--set fluent-bit.enabled=true,promtail.enabled=false
```

This will automatically configured the `loki.serviceName` configuration field to the newly created Loki instance.

## RBAC

By default, `rbac.create` is set to true. This enable RBAC support in Fluent Bit and must be true if RBAC is enabled in your cluster.

The chart will take care of creating the required service accounts and roles for Fluent Bit.

If you have RBAC disabled, or to put it another way, ABAC enabled, you should set this value to `false`.

## Uninstalling the Chart

To uninstall/delete the `my-release` deployment:

```bash
helm delete my-release
```

The command removes all the Kubernetes components associated with the chart and deletes the release.

## Configuration

The following tables lists the configurable parameters of the Fluent Bit chart and their default values.

For more details, read the [Fluent Bit documentation](../../../cmd/fluent-bit/README.md)

| Parameter | Description | Default |
|--------------------------|----------------------------------------------------------------------------------------------------|----------------------------------|
| `loki.serviceName` | The address of the Loki service. | `"${RELEASE}-loki"` |
| `loki.servicePort` | The port of the Loki service. | `3100` |
| `loki.serviceScheme` | The scheme of the Loki service. | `http` |
| `loki.user` | The http basic auth username to access the Loki service. | |
| `loki.password` | The http basic auth password to access the Loki service. | |
| `config.port` | the Fluent Bit port to listen. (This is mainly used to serve metrics) | `2020` |
| `config.tenantID` | The tenantID used by default to push logs to Loki | `''` |
| `config.batchWait` | Time to wait before send a log batch to Loki, full or not. (unit: secs) | `1` |
| `config.batchSize` | Log batch size to send a log batch to Loki. (unit: bytes) | `10240` (10KiB) |
| `config.loglevel` | the Fluent Bit log level (debug,info,warn,error). | `warn` |
| `config.lineFormat` | The line format to use to send a record (json/key_value) | `json` |
| `config.k8sLoggingParser`| Allow Kubernetes Pods to suggest a pre-defined Parser. See [Official Fluent Bit documentation](https://docs.fluentbit.io/manual/filter/kubernetes#kubernetes-annotations). | `Off` |
| `config.removeKeys` | The list of key to remove from each record | `[removeKeys,stream]` |
| `config.labels` | A set of labels to send for every log | `'{job="fluent-bit"}'` |
| `config.autoKubernetesLabels` | If set to true, it will add all Kubernetes labels to Loki labels | `false` |
| `config.labelMap` | Mapping of labels from a record. See [Fluent Bit documentation](../../../cmd/fluent-bit/README.md) | |
| `config.parsers` | Definition of extras fluent bit parsers. See [Official Fluent Bit documentation](https://docs.fluentbit.io/manual/filter/parser). The format is a sequence of mappings where each key is the same as the one in the [PARSER] section of parsers.conf file | `[]` |
| `config.extraOutputs` | Definition of extras fluent bit outputs. See [Official Fluent Bit documentation](https://docs.fluentbit.io/manual/pipeline/outputs/). The format is a sequence of mappings where each key is the same as the one in the [OUTPUT] | `[]` |
| `affinity` | [affinity][affinity] settings for pod assignment | `{}` |
| `annotations` | Annotations to add to Kubernetes resources. | `{}` |
| `deploymentStrategy` | The deployment strategy to use with the daemonset | `RollingUpdate` |
| `image.repository` | The Fluent Bit docker image repository | `grafana/fluent-bit-plugin-loki` |
| `image.tag` | The Fluent Bit docker image tag | `0.1` |
| `image.pullPolicy` | The Fluent Bit docker image pull policy | `IfNotPresent` |
| `nodeSelector` | Fluent Bit [node labels][nodeSelector] for pod assignment | `{}` |
| `podLabels` | additional Fluent Bit pod labels | `{}` |
| `podAnnotations` | additional Fluent Bit pod annotations | `Prometheus discovery` |
| `rbac.create` | Activate support for RBAC | `true` |
| `resources` | Resource requests/limit | |
| `tolerations` | [Toleration][toleration] labels for pod assignment | `no schedule on master nodes` |
| `volumes` | [Volume]([volumes]) to mount | `host containers log` |
| `volumeMounts` | Volume mount mapping | |
| `serviceMonitor.enabled` | Create a [Prometheus Operator](operator) serviceMonitor resource for Fluent Bit | `false` |


[toleration]: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
[nodeSelector]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector
[affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
[volumes]: https://kubernetes.io/docs/concepts/storage/volumes/
[operator]: https://github.com/coreos/prometheus-operator
3 changes: 3 additions & 0 deletions charts/fluent-bit/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Verify the application is working by running these commands:
kubectl --namespace {{ .Release.Namespace }} port-forward daemonset/{{ include "fluent-bit-loki.fullname" . }} {{ .Values.config.port }}
curl http://127.0.0.1:{{ .Values.config.port }}/api/v1/metrics/prometheus
66 changes: 66 additions & 0 deletions charts/fluent-bit/templates/_helpers.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
{{/* vim: set filetype=mustache: */}}
{{/*
Expand the name of the chart.
*/}}
{{- define "fluent-bit-loki.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "fluent-bit-loki.fullname" -}}
{{- if .Values.fullnameOverride -}}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default .Chart.Name .Values.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}

{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "fluent-bit-loki.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}

{{/*
Create the name of the service account
*/}}
{{- define "fluent-bit-loki.serviceAccountName" -}}
{{- if .Values.serviceAccount.create -}}
{{ default (include "fluent-bit-loki.fullname" .) .Values.serviceAccount.name }}
{{- else -}}
{{ default "default" .Values.serviceAccount.name }}
{{- end -}}
{{- end -}}

{{/*
The service name to connect to Loki. Defaults to the same logic as "loki.fullname"
*/}}
{{- define "loki.serviceName" -}}
{{- if .Values.loki.serviceName -}}
{{- .Values.loki.serviceName -}}
{{- else if .Values.loki.fullnameOverride -}}
{{- .Values.loki.fullnameOverride | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- $name := default "loki" .Values.loki.nameOverride -}}
{{- if contains $name .Release.Name -}}
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
{{- else -}}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{- end -}}
{{- end -}}

{{- define "helm-toolkit.utils.joinListWithComma" -}}
{{- $local := dict "first" true -}}
{{- range $k, $v := . -}}{{- if not $local.first -}},{{- end -}}{{- $v -}}{{- $_ := set $local "first" false -}}{{- end -}}
{{- end -}}
17 changes: 17 additions & 0 deletions charts/fluent-bit/templates/clusterrole.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{{- if .Values.rbac.create }}
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
labels:
app: {{ template "fluent-bit-loki.name" . }}
chart: {{ template "fluent-bit-loki.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
name: {{ template "fluent-bit-loki.fullname" . }}-clusterrole
rules:
- apiGroups: [""] # "" indicates the core API group
resources:
- namespaces
- pods
verbs: ["get", "watch", "list"]
{{- end }}
19 changes: 19 additions & 0 deletions charts/fluent-bit/templates/clusterrolebinding.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{{- if .Values.rbac.create }}
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: {{ template "fluent-bit-loki.fullname" . }}-clusterrolebinding
labels:
app: {{ template "fluent-bit-loki.name" . }}
chart: {{ template "fluent-bit-loki.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
subjects:
- kind: ServiceAccount
name: {{ template "fluent-bit-loki.serviceAccountName" . }}
namespace: {{ .Release.Namespace }}
roleRef:
kind: ClusterRole
name: {{ template "fluent-bit-loki.fullname" . }}-clusterrole
apiGroup: rbac.authorization.k8s.io
{{- end }}
72 changes: 72 additions & 0 deletions charts/fluent-bit/templates/configmap.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "fluent-bit-loki.fullname" . }}
namespace: {{ .Release.Namespace }}
labels:
app: {{ template "fluent-bit-loki.name" . }}
chart: {{ template "fluent-bit-loki.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
fluent-bit.conf: |-
[SERVICE]
HTTP_Server On
HTTP_Listen 0.0.0.0
HTTP_PORT {{ .Values.config.port }}
Flush 1
Daemon Off
Log_Level {{ .Values.config.loglevel }}
Parsers_File parsers.conf
[INPUT]
Name tail
Tag kube.*
Path /var/log/containers/*.log
Parser docker
DB /run/fluent-bit/flb_kube.db
Mem_Buf_Limit 5MB
[FILTER]
Name kubernetes
Match kube.*
Kube_URL https://kubernetes.default.svc:443
Merge_Log On
K8S-Logging.Parser {{ .Values.config.k8sLoggingParser }}
[Output]
Name loki
Match *
{{- if and .Values.loki.user .Values.loki.password }}
Url {{ .Values.loki.serviceScheme }}://{{ .Values.loki.user }}:{{ .Values.loki.password }}@{{ include "loki.serviceName" . }}:{{ .Values.loki.servicePort }}{{ .Values.loki.servicePath }}
{{- else }}
Url {{ .Values.loki.serviceScheme }}://{{ include "loki.serviceName" . }}:{{ .Values.loki.servicePort }}{{ .Values.loki.servicePath }}
{{- end }}
TenantID {{ .Values.config.tenantID }}
BatchWait {{ .Values.config.batchWait }}
BatchSize {{ .Values.config.batchSize }}
Labels {{ .Values.config.labels }}
RemoveKeys {{ include "helm-toolkit.utils.joinListWithComma" .Values.config.removeKeys }}
AutoKubernetesLabels {{ .Values.config.autoKubernetesLabels }}
LabelMapPath /fluent-bit/etc/labelmap.json
LineFormat {{ .Values.config.lineFormat }}
LogLevel {{ .Values.config.loglevel }}
{{- range $extraOutput := .Values.config.extraOutputs }}
[OUTPUT]
{{- range $key,$value := $extraOutput }}
{{ $key }} {{ $value }}
{{- end }}
{{- end }}
parsers.conf: |-
[PARSER]
Name docker
Format json
Time_Key time
Time_Format %Y-%m-%dT%H:%M:%S.%L
{{- range $parser:= .Values.config.parsers }}
[PARSER]
{{- range $key,$value := $parser }}
{{ $key }} {{ $value }}
{{- end }}
{{- end }}

labelmap.json: |-
{{- .Values.config.labelMap | toPrettyJson | nindent 4}}

Loading