Skip to content

Commit 00f28a0

Browse files
committed
Send Prometheus metrics to Grafana Cloud
1 parent a872d17 commit 00f28a0

File tree

3 files changed

+37
-13
lines changed

3 files changed

+37
-13
lines changed

kubernetes/linera-validator/helmfile.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
environments:
2+
default:
3+
values:
4+
- writeToGrafanaCloud: {{ env "LINERA_WRITE_TO_GRAFANA_CLOUD" | default "false" }}
5+
validatorLabel: {{ env "LINERA_VALIDATOR_LABEL" | default (printf "local-%s" (env "USER")) }}
6+
7+
---
8+
19
repositories:
210
- name: scylla
311
url: https://scylla-operator-charts.storage.googleapis.com/stable
@@ -16,18 +24,12 @@ releases:
1624
needs:
1725
- scylla/scylla
1826
values:
19-
- {{ env "LINERA_HELMFILE_VALUES_LINERA_CORE" | default "values-local.yaml" }}
27+
- grafanaCloudUsername: {{ fetchSecretValue "ref+gcpsecrets://linera-io-dev/grafana-cloud-username?version=latest" | quote }}
28+
grafanaCloudAPIToken: {{ fetchSecretValue "ref+gcpsecrets://linera-io-dev/grafana-cloud-api-token?version=latest" | quote }}
29+
- {{ env "LINERA_HELMFILE_VALUES_LINERA_CORE" | default "values-local.yaml.gotmpl" }}
2030
set:
2131
- name: installCRDs
2232
value: "true"
23-
- name: validator.serverConfig
24-
value: {{ env "LINERA_HELMFILE_SET_SERVER_CONFIG" | default "working/server_1.json" }}
25-
- name: validator.genesisConfig
26-
value: {{ env "LINERA_HELMFILE_SET_GENESIS_CONFIG" | default "working/genesis.json" }}
27-
- name: numShards
28-
value: {{ env "LINERA_HELMFILE_SET_NUM_SHARDS" | default 10 }}
29-
- name: lineraImage
30-
value: {{ env "LINERA_HELMFILE_LINERA_IMAGE" | default "linera:latest" }}
3133
- name: staticIpGcpName
3234
value: {{ env "LINERA_HELMFILE_STATIC_IP_GCP_NAME" | default "" }}
3335
- name: validatorDomainName
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
apiVersion: v1
2+
kind: Secret
3+
metadata:
4+
name: grafana-cloud-auth-secret
5+
type: kubernetes.io/basic-auth
6+
stringData:
7+
username: {{ .Values.grafanaCloudUsername | quote }}
8+
password: {{ .Values.grafanaCloudAPIToken | quote }}

kubernetes/linera-validator/values-local.yaml renamed to kubernetes/linera-validator/values-local.yaml.gotmpl

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Values for charts linera-validator for local validators.
22

33
# Linera
4-
lineraImage: "" # Is set by helmfile.
4+
lineraImage: {{ env "LINERA_HELMFILE_LINERA_IMAGE" | default "linera:latest" }}
55
lineraImagePullPolicy: Never
66
logLevel: "debug"
77
proxyPort: 19100
88
metricsPort: 21100
9-
numShards: 10
9+
numShards: {{ env "LINERA_HELMFILE_SET_NUM_SHARDS" | default 10 }}
1010

1111
# Loki
1212
loki-stack:
@@ -28,6 +28,7 @@ loki-stack:
2828
# Prometheus/Grafana
2929
kube-prometheus-stack:
3030
grafana:
31+
enabled: {{ not .Values.writeToGrafanaCloud }}
3132
sidecar:
3233
dashboards:
3334
enabled: true
@@ -40,6 +41,19 @@ kube-prometheus-stack:
4041
- grafana-piechart-panel
4142
prometheus:
4243
prometheusSpec:
44+
{{- if .Values.writeToGrafanaCloud }}
45+
remoteWrite:
46+
- url: https://prometheus-prod-13-prod-us-east-0.grafana.net/api/prom/push
47+
basicAuth:
48+
username:
49+
name: grafana-cloud-auth-secret
50+
key: username
51+
password:
52+
name: grafana-cloud-auth-secret
53+
key: password
54+
externalLabels:
55+
validator: {{ .Values.validatorLabel }}
56+
{{- end }}
4357
retention: 2d
4458
retentionSize: 1GB
4559
storageSpec:
@@ -101,5 +115,5 @@ environment: "kind"
101115

102116
# Validator
103117
validator:
104-
serverConfig: "" # Is set by helmfile.
105-
genesisConfig: "" # Is set by helmfile.
118+
serverConfig: {{ env "LINERA_HELMFILE_SET_SERVER_CONFIG" | default "working/server_1.json" }}
119+
genesisConfig: {{ env "LINERA_HELMFILE_SET_GENESIS_CONFIG" | default "working/genesis.json" }}

0 commit comments

Comments
 (0)