Compare commits

..

9 Commits

Author SHA1 Message Date
Michel Hollands
e9125d1a9c Add corrected key
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 10:21:42 +01:00
Michel Hollands
076685ef06 Revert key
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 10:18:55 +01:00
Michel Hollands
b0451d626e Use $. in yaml key
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 10:16:10 +01:00
Michel Hollands
90e949e89a Change version param
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 10:14:50 +01:00
Michel Hollands
06e176e720 Trim the v prefix from the released version
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 10:11:17 +01:00
Michel Hollands
d4c886ba9d Use token from env
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 10:00:55 +01:00
Michel Hollands
643e73f5f1 add token
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 09:54:50 +01:00
Michel Hollands
7e65f3d9c9 Fix sourceid
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 09:46:31 +01:00
Michel Hollands
26e0ad0b85 Add CI action to update Grafana version
Signed-off-by: Michel Hollands <michel.hollands@gmail.com>
2024-05-07 09:20:51 +01:00
10 changed files with 100 additions and 86 deletions

View File

@@ -0,0 +1,30 @@
name: Bump grafana version specified in the values.yaml
sources:
latestGrafanaRelease:
name: Get latest grafana release on Github
kind: githubrelease
spec:
owner: grafana
repository: grafana
token: '{{ requiredEnv "UPDATECLI_GITHUB_TOKEN" }}'
versionfilter:
kind: latest
transformers:
- trimprefix: "v"
conditions:
grafanaImagePublished:
name: Ensure the latest Grafana is published on DockerHub
kind: dockerimage
source-id: latestGrafanaRelease
spec:
image: "grafana/grafana"
targets:
grafana:
name: Update Grafana version in values.yaml
kind: helmchart
spec:
file: values.yaml
key: $.grafana.version
name: charts/meta-monitoring
versionincrement: none
sourceid: latestGrafanaRelease

View File

@@ -175,3 +175,35 @@ jobs:
labels: dependencies labels: dependencies
branch: chore/update-minio branch: chore/update-minio
delete-branch: true delete-branch: true
updateGrafana:
name: Update the Grafana version
runs-on: "ubuntu-latest"
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Updatecli
uses: updatecli/updatecli-action@v2
- name: Run Updatecli
id: update-grafana
run: |
updatecli apply --config ${UPDATECLI_CONFIG_DIR}/grafana.yaml
if ! git diff --exit-code > /dev/null; then
echo "changed=true" >> "${GITHUB_OUTPUT}"
fi
- name: Create pull request
if: steps.update-grafana.outputs.changed == 'true'
uses: peter-evans/create-pull-request@v5
with:
title: "[dependency] Update the Grafana version"
body: "Updates the Grafana version"
base: main
author: "${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>"
committer: "GitHub <noreply@github.com>"
commit-message: Update Grafana version
labels: dependencies
branch: chore/update-minio
delete-branch: true

View File

@@ -10,9 +10,9 @@ dependencies:
version: 5.3.0 version: 5.3.0
- name: tempo-distributed - name: tempo-distributed
repository: https://grafana.github.io/helm-charts repository: https://grafana.github.io/helm-charts
version: 1.9.7 version: 1.9.5
- name: minio - name: minio
repository: https://charts.min.io repository: https://charts.min.io
version: 5.2.0 version: 5.2.0
digest: sha256:297f462812b6436834d8b82a028840bd55bd9e935b3d0a3e8206ac54a113be01 digest: sha256:6244c08b5829d6dbd363b736e55c5182274d65191672e7aeecaf3bb62f3f34fb
generated: "2024-05-07T09:22:16.438693788Z" generated: "2024-05-07T07:02:47.839270709Z"

View File

@@ -33,7 +33,7 @@ dependencies:
condition: local.metrics.enabled condition: local.metrics.enabled
- name: tempo-distributed - name: tempo-distributed
repository: https://grafana.github.io/helm-charts repository: https://grafana.github.io/helm-charts
version: 1.9.7 version: 1.9.5
condition: local.traces.enabled condition: local.traces.enabled
- name: minio - name: minio
repository: https://charts.min.io repository: https://charts.min.io

View File

@@ -32,7 +32,7 @@ spec:
- 0 - 0
containers: containers:
- name: grafana - name: grafana
image: grafana/grafana:10.0.0 image: grafana/grafana:{{- .Values.grafana.version }}
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
ports: ports:
- containerPort: 3000 - containerPort: 3000

View File

@@ -49,9 +49,6 @@ spec:
- containerPort: 7946 - containerPort: 7946
name: memberlist name: memberlist
protocol: TCP protocol: TCP
envFrom:
- secretRef:
name: minio
readinessProbe: readinessProbe:
failureThreshold: 3 failureThreshold: 3
httpGet: httpGet:

View File

@@ -31,6 +31,7 @@ local:
enabled: false # This should be set to true if any of the previous is enabled enabled: false # This should be set to true if any of the previous is enabled
grafana: grafana:
version: 10.0.0
# Gateway ingress configuration # Gateway ingress configuration
ingress: ingress:
# -- Specifies whether an ingress for the gateway should be created # -- Specifies whether an ingress for the gateway should be created
@@ -180,7 +181,7 @@ metrics:
# Additional metrics to retain # Additional metrics to retain
extraMetrics: [] extraMetrics: []
# Set enabled = true to add the default logs dashboards to the local Grafana # Set enabled = true to add the default logs/metrics/traces dashboards to the local Grafana
dashboards: dashboards:
logs: logs:
enabled: true enabled: true
@@ -189,6 +190,11 @@ dashboards:
traces: traces:
enabled: true enabled: true
global:
minio:
rootUser: "rootuser"
rootPassword: "rootpassword"
kubeStateMetrics: kubeStateMetrics:
# Scrape https://github.com/kubernetes/kube-state-metrics by default # Scrape https://github.com/kubernetes/kube-state-metrics by default
enabled: true enabled: true
@@ -224,9 +230,9 @@ loki:
common: common:
storage: storage:
s3: s3:
access_key_id: "${rootUser}" access_key_id: "{{ .Values.global.minio.rootUser }}"
endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000" endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000"
secret_access_key: "${rootPassword}" secret_access_key: "{{ .Values.global.minio.rootPassword }}"
compactor: compactor:
retention_enabled: true retention_enabled: true
delete_request_store: s3 delete_request_store: s3
@@ -249,24 +255,8 @@ loki:
installOperator: false installOperator: false
lokiCanary: lokiCanary:
enabled: false enabled: false
write: test:
extraArgs: enabled: false
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
read:
extraArgs:
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
backend:
extraArgs:
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
alloy: alloy:
alloy: alloy:
@@ -303,30 +293,29 @@ alloy:
mimir-distributed: mimir-distributed:
minio: minio:
enabled: false enabled: false
global:
extraEnvFrom:
- secretRef:
name: "minio"
mimir: mimir:
structuredConfig: structuredConfig:
alertmanager_storage: alertmanager_storage:
s3: s3:
bucket_name: mimir-ruler bucket_name: mimir-ruler
access_key_id: "{{ .Values.global.minio.rootUser }}"
endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000"
secret_access_key: "{{ .Values.global.minio.rootPassword }}"
insecure: true
blocks_storage: blocks_storage:
backend: s3 backend: s3
s3: s3:
bucket_name: mimir-tsdb bucket_name: mimir-tsdb
access_key_id: "{{ .Values.global.minio.rootUser }}"
endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000"
secret_access_key: "{{ .Values.global.minio.rootPassword }}"
insecure: true
ruler_storage: ruler_storage:
s3: s3:
bucket_name: mimir-ruler bucket_name: mimir-ruler
common: access_key_id: "{{ .Values.global.minio.rootUser }}"
storage:
backend: s3
s3:
bucket_name: mimir-ruler
access_key_id: "${rootUser}"
endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000" endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000"
secret_access_key: "${rootPassword}" secret_access_key: "{{ .Values.global.minio.rootPassword }}"
insecure: true insecure: true
limits: limits:
compactor_blocks_retention_period: 30d compactor_blocks_retention_period: 30d
@@ -340,39 +329,12 @@ tempo-distributed:
s3: s3:
bucket: tempo bucket: tempo
endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000" endpoint: "{{ .Release.Name }}-minio.{{ .Release.Namespace }}.svc:9000"
access_key: "${rootUser}" access_key: "{{ .Values.global.minio.rootUser }}"
secret_key: "${rootPassword}" secret_key: "{{ .Values.global.minio.rootPassword }}"
insecure: true insecure: true
distributor:
extraArgs:
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
ingester:
extraArgs:
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
compactor: compactor:
extraArgs: compaction:
- "-config.expand-env=true" block_retention: 30d
extraEnvFrom:
- secretRef:
name: "minio"
querier:
extraArgs:
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
queryFrontend:
extraArgs:
- "-config.expand-env=true"
extraEnvFrom:
- secretRef:
name: "minio"
traces: traces:
otlp: otlp:
http: http:
@@ -381,7 +343,8 @@ tempo-distributed:
enabled: true enabled: true
minio: minio:
existingSecret: "minio" rootUser: rootuser
rootPassword: rootpassword
buckets: buckets:
- name: loki-chunks - name: loki-chunks
policy: none policy: none

View File

@@ -25,17 +25,17 @@
``` ```
kubectl create secret generic logs -n meta \ kubectl create secret generic logs -n meta \
--from-literal=username=<logs username> \ --from-literal=username=<logs username> \
--from-literal=password=<token> \ --from-literal=password=<token>
--from-literal=endpoint='https://logs-prod-us-central1.grafana.net/loki/api/v1/push' --from-literal=endpoint='https://logs-prod-us-central1.grafana.net/loki/api/v1/push'
kubectl create secret generic metrics -n meta \ kubectl create secret generic metrics -n meta \
--from-literal=username=<metrics username> \ --from-literal=username=<metrics username> \
--from-literal=password=<token> \ --from-literal=password=<token>
--from-literal=endpoint='https://prometheus-us-central1.grafana.net/api/prom/push' --from-literal=endpoint='https://prometheus-us-central1.grafana.net/api/prom/push'
kubectl create secret generic traces -n meta \ kubectl create secret generic traces -n meta \
--from-literal=username=<OTLP instance ID> \ --from-literal=username=<OTLP instance ID> \
--from-literal=password=<token> \ --from-literal=password=<token>
--from-literal=endpoint='https://otlp-gateway-prod-us-east-0.grafana.net/otlp' --from-literal=endpoint='https://otlp-gateway-prod-us-east-0.grafana.net/otlp'
``` ```
@@ -67,14 +67,6 @@
kubectl create namespace meta kubectl create namespace meta
``` ```
1. Create a secret named `minio` with the user and password for the local Minio:
```
kubectl create secret generic minio -n meta \
--from-literal=rootPassword=<password> \
--from-literal=rootUser=<user>
```
1. Create a values.yaml file based on the [default one](../charts/meta-monitoring/values.yaml). An example minimal values.yaml looks like this: 1. Create a values.yaml file based on the [default one](../charts/meta-monitoring/values.yaml). An example minimal values.yaml looks like this:
``` ```