Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f8f14db80a | ||
|
|
ea35bb55e4 |
+28
-4
@@ -13,6 +13,10 @@ const appsRef = new pulumi.StackReference(
|
||||
const kubeconfig = bootstrapRef.requireOutput("kubeconfig");
|
||||
const domain = appsRef.requireOutput("domain");
|
||||
const grafanaAdminPassword = config.requireSecret("grafanaAdminPassword");
|
||||
const grafanaDbUser = config.requireSecret("grafanaDbUser");
|
||||
const grafanaDbPassword = config.requireSecret("grafanaDbPassword");
|
||||
const grafanaDbHost = config.requireSecret("grafanaDbHost");
|
||||
const grafanaDbName = config.require("grafanaDbName");
|
||||
|
||||
const k8sProvider = new k8s.Provider("k3s", { kubeconfig });
|
||||
|
||||
@@ -24,6 +28,15 @@ const monitoringNs = new k8s.core.v1.Namespace(
|
||||
|
||||
const grafanaHost = pulumi.interpolate`grafana.${domain}`;
|
||||
|
||||
const grafanaDbSecret = new k8s.core.v1.Secret(
|
||||
"grafana-db-credentials",
|
||||
{
|
||||
metadata: { namespace: monitoringNs.metadata.name },
|
||||
stringData: { password: grafanaDbPassword },
|
||||
},
|
||||
{ provider: k8sProvider },
|
||||
);
|
||||
|
||||
new k8s.helm.v3.Release(
|
||||
"kube-prometheus-stack",
|
||||
{
|
||||
@@ -38,6 +51,7 @@ new k8s.helm.v3.Release(
|
||||
values: {
|
||||
grafana: {
|
||||
adminPassword: grafanaAdminPassword,
|
||||
replicas: 2,
|
||||
ingress: {
|
||||
enabled: true,
|
||||
ingressClassName: "traefik",
|
||||
@@ -45,10 +59,20 @@ new k8s.helm.v3.Release(
|
||||
hosts: [grafanaHost],
|
||||
tls: [{ secretName: "grafana-tls", hosts: [grafanaHost] }],
|
||||
},
|
||||
persistence: {
|
||||
enabled: true,
|
||||
storageClassName: "longhorn",
|
||||
size: "2Gi",
|
||||
env: {
|
||||
GF_DATABASE_TYPE: "postgres",
|
||||
GF_DATABASE_HOST: grafanaDbHost,
|
||||
GF_DATABASE_NAME: grafanaDbName,
|
||||
GF_DATABASE_USER: grafanaDbUser,
|
||||
GF_DATABASE_SSL_MODE: "disable",
|
||||
},
|
||||
envValueFrom: {
|
||||
GF_DATABASE_PASSWORD: {
|
||||
secretKeyRef: {
|
||||
name: grafanaDbSecret.metadata.name,
|
||||
key: "password",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
prometheus: {
|
||||
|
||||
Reference in New Issue
Block a user