Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
127 changed files
with
1,940 additions
and
138 deletions.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,3 +3,4 @@ charts/grafana | |
charts/loki | ||
charts/loki-stack | ||
charts/enterprise-metrics | ||
charts/enterprise-logs |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Changelog | ||
|
||
All notable changes to this library will be documented in this file. | ||
|
||
Entries should be ordered as follows: | ||
|
||
- [CHANGE] | ||
- [FEATURE] | ||
- [ENHANCEMENT] | ||
- [BUGFIX] | ||
|
||
Entries should include a reference to the pull request that introduced the change. | ||
|
||
## 1.2.0 | ||
|
||
- [CHANGE] Removed unused deployment of `memcached-index-writes` StatefulSet when using `small.yaml` values file. | ||
|
||
## 1.1.1 | ||
|
||
- [BUGFIX] Ensure that Pods run as non-root user `enterprise-logs` (`uid=10001,gid=10001`). #690 | ||
|
||
## 1.1.0 | ||
|
||
* [CHANGE] Updated `loki-distributed` chart dependency to `^0.37.3`. #684 | ||
* [CHANGE] Removed table manager deployment, because GEL uses boltdb-shipper and compactor. #684 | ||
* [ENHANCEMENT] Enabled deployment of `index-gateway`. #684 | ||
* [ENHANCEMENT] Enabled persistent volume for `querier` service. #684 | ||
|
||
## 1.0.0 | ||
|
||
* [FEATURE] Initial version of the `enterprise-logs` (GEL) Helm chart. #629 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
dependencies: | ||
- name: loki-distributed | ||
repository: https://grafana.github.io/helm-charts | ||
version: 0.37.3 | ||
- name: minio | ||
repository: https://helm.min.io/ | ||
version: 8.0.9 | ||
digest: sha256:fa052639999004f64f6ac6e847a91ab2b8ecd814f90df4c4ebab246b3c178e05 | ||
generated: "2021-09-16T17:30:46.384947051+02:00" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
apiVersion: "v2" | ||
name: "enterprise-logs" | ||
type: application | ||
version: "1.2.0" | ||
appVersion: "v1.1.0" | ||
kubeVersion: "^1.10.0-0" | ||
description: "Grafana Enterprise Logs" | ||
home: "https://grafana.com/products/enterprise/logs/" | ||
dependencies: | ||
- name: loki-distributed | ||
version: ^0.37.3 | ||
repository: https://grafana.github.io/helm-charts | ||
- name: minio | ||
alias: minio | ||
version: 8.0.9 | ||
repository: https://helm.min.io/ | ||
condition: minio.enabled |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
# Grafana Enterprise Logs Helm Chart | ||
|
||
A Helm chart for deploying [Grafana Enterprise Logs](https://grafana.com/products/enterprise/logs/) to Kubernetes. | ||
|
||
## Dependencies | ||
|
||
This chart depends on the | ||
[`loki-distributed`](https://github.com/grafana/helm-charts/tree/main/charts/loki-distributed) Helm | ||
chart and extends it with Grafana Enterprise Logs components and configuration. | ||
It also depends on [`minio`](https://github.com/minio/charts/tree/master/minio) Helm chart, if the | ||
variable `minio.enabled` is set to `true` (only recommended for testing). | ||
|
||
## Requirements | ||
|
||
### License | ||
|
||
In order to use any enterprise features of Grafana Enterprise Logs, you need to provide the contents | ||
of a Grafana Enterprise Logs license file as the value for the `license.contents` variable. To | ||
obtain a Grafana Enterprise Logs license, refer to [Get a | ||
license](https://grafana.com/docs/enterprise-logs/latest/get-a-license/). | ||
|
||
### Storage | ||
|
||
Grafana Enterprise Logs requires an object storage backend to store logs and indexes as well as | ||
metadata objects. | ||
|
||
The default chart values will deploy [Minio](https://min.io) for initial set up. Production | ||
deployments must use a separately deployed object store or use a compatible storage from cloud | ||
providers, such as Amazon S3, Google Cloud Storage (GCS), or Microsoft Azure Blob Storage. | ||
|
||
## Installation | ||
|
||
To install the chart with licensed features enabled, using a local Grafana Enterprise Logs | ||
license file called `license.jwt`: | ||
|
||
```console | ||
$ # Add the repository | ||
$ helm repo add grafana https://grafana.github.io/helm-charts | ||
$ helm repo update | ||
$ # Perform install | ||
$ helm install <cluster name> grafana/enterprise-logs \ | ||
--set-file 'license.contents=./license.jwt' | ||
``` | ||
|
||
As part of this chart many different pods and services are installed which all have varying resource | ||
requirements. Please make sure that you have sufficient resources (CPU/memory) available in your | ||
cluster before installing Grafana Enterprise Logs Helm chart. | ||
|
||
### Scale values | ||
|
||
The default Helm chart values in the `values.yaml` file are configured to allow you to quickly test | ||
out Grafana Enterprise Logs. Alternative values files are included to provide a more realistic | ||
configuration that should facilitate a certain level of ingest and query load. | ||
|
||
#### `small.yaml` | ||
|
||
These values configure the Grafana Enterprise Logs cluster to handle production ingestion of | ||
~11MiB/s. | ||
|
||
To deploy a cluster using `small.yaml` values file: | ||
|
||
```console | ||
$ helm install <cluster name> grafana/enterprise-logs \ | ||
--set-file 'license.contents=./license.jwt' \ | ||
-f small.yaml | ||
``` | ||
|
||
## Contributing/Releasing | ||
|
||
All changes require a bump to the chart version, as this enforced by CI. All changes to the chart | ||
itself should also have a corresponding changelog entry. | ||
|
||
When making a change and organizing a release, first ensure your changes are encapuslated in a | ||
commit with a [meaningful commit message](https://chris.beams.io/posts/git-commit/). In a separate | ||
commit, increase the chart version in the `Chart.yaml` file and add an entry in the `CHANGELOG.md` | ||
file under the new version. | ||
|
||
Finally, push your changes and open up a pull request with the prefix `[enterprise-logs]` in the | ||
title. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# Test values to limit the load during CI | ||
compactor: | ||
persistentVolume: | ||
enabled: false | ||
|
||
loki-distributed: | ||
ingester: | ||
persistence: | ||
enabled: false | ||
distributor: | ||
persistence: | ||
enabled: false | ||
ruler: | ||
persistence: | ||
enabled: false | ||
querier: | ||
persistence: | ||
enabled: false | ||
queryFrontend: | ||
persistence: | ||
enabled: false | ||
indexGateway: | ||
persistence: | ||
enabled: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
# These values configure the Grafana Enterprise Logs cluster to | ||
# handle production ingestion of ~11MiB/s | ||
|
||
# Query requirements can vary dramatically depending on query rate and query | ||
# ranges. The values here satisfy a "usual" query load as seen from our | ||
# production clusters at this scale. | ||
|
||
# -target=admin-api | ||
# defined in enterprise-logs chart | ||
adminApi: | ||
replicas: 3 | ||
extraArgs: { | ||
"admin-api.leader-election.enabled": "true", | ||
"admin-api.leader-election.ring.store": "memberlist", | ||
} | ||
resources: | ||
limits: | ||
cpu: 200m | ||
memory: 256Mi | ||
requests: | ||
cpu: 10m | ||
memory: 64Mi | ||
|
||
# -target=compactor | ||
# defined in enterprise-logs chart | ||
compactor: | ||
replicas: 1 | ||
persistentVolume: | ||
size: 100Gi | ||
resources: | ||
limits: | ||
cpu: 4 | ||
memory: 2Gi | ||
requests: | ||
cpu: 2 | ||
memory: 1Gi | ||
|
||
# -target=gateway | ||
# defined in enterprise-logs chart | ||
gateway: | ||
replicas: 3 | ||
resources: | ||
requests: | ||
cpu: 1 | ||
memory: 384Mi | ||
|
||
loki-distributed: | ||
# -target=distributor | ||
# defined in loki-distributed chart | ||
distributor: | ||
replicas: 3 | ||
resources: | ||
limits: | ||
memory: 1Gi | ||
requests: | ||
cpu: 0.5 | ||
memory: 500Mi | ||
|
||
# -target=ingester | ||
# defined in loki-distributed chart | ||
ingester: | ||
persistentVolume: | ||
size: 50Gi | ||
replicas: 4 | ||
resources: | ||
limits: | ||
cpu: 2 | ||
memory: 14Gi | ||
requests: | ||
cpu: 1 | ||
memory: 7Gi | ||
|
||
# -target=querier | ||
# defined in loki-distributed chart | ||
querier: | ||
replicas: 8 | ||
resources: | ||
limits: | ||
cpu: 7 | ||
memory: 16Gi | ||
requests: | ||
cpu: 4 | ||
memory: 6Gi | ||
|
||
# -target=query-frontend | ||
# defined in loki-distributed chart | ||
queryFrontend: | ||
replicas: 2 | ||
resources: | ||
limits: | ||
cpu: 3 | ||
memory: 10Gi | ||
requests: | ||
cpu: 2 | ||
memory: 5Gi | ||
|
||
# -target=ruler | ||
# defined in loki-distributed chart | ||
ruler: | ||
replicas: 2 | ||
resources: | ||
limits: | ||
cpu: 7 | ||
memory: 16Gi | ||
requests: | ||
cpu: 2 | ||
memory: 6Gi | ||
|
||
# -target=index-gateway | ||
# defined in loki-distributed chart | ||
indexGateway: | ||
replicas: 3 | ||
resources: | ||
limits: | ||
cpu: 4 | ||
memory: 4Gi | ||
requests: | ||
cpu: 2 | ||
memory: 2Gi | ||
|
||
# memcached configuration is part of the loki-distributed chart | ||
memcached: | ||
enabled: true | ||
replicas: 1 | ||
|
||
memcachedExporter: | ||
enabled: true | ||
replicas: 1 | ||
|
||
memcachedChunks: | ||
enabled: true | ||
replicas: 1 | ||
|
||
memcachedFrontend: | ||
enabled: true | ||
replicas: 1 | ||
|
||
memcachedIndexQueries: | ||
enabled: true | ||
replicas: 1 | ||
|
||
# Disable minio dependency | ||
minio: | ||
enabled: false |
Oops, something went wrong.