feat(homelab): add prometheus & grafana, jless fd + more zsh plugins
This commit is contained in:
@@ -86,4 +86,11 @@ routes = [
|
||||
port = 8096,
|
||||
private = true
|
||||
},
|
||||
{
|
||||
name = "grafana",
|
||||
namespace = "monitoring",
|
||||
service = "prometheus-stack-grafana",
|
||||
port = 80,
|
||||
private = true
|
||||
},
|
||||
]
|
||||
|
||||
@@ -30,6 +30,13 @@ releases:
|
||||
- crds:
|
||||
enabled: true
|
||||
|
||||
- name: prometheus-stack
|
||||
chart: oci://ghcr.io/prometheus-community/charts/kube-prometheus-stack
|
||||
namespace: monitoring
|
||||
version: 80.9.2
|
||||
values:
|
||||
- values/prometheus.yaml
|
||||
|
||||
# Git
|
||||
- name: gitea
|
||||
namespace: git
|
||||
|
||||
58
nix/homelab/helm/values/prometheus.yaml
Normal file
58
nix/homelab/helm/values/prometheus.yaml
Normal file
@@ -0,0 +1,58 @@
|
||||
# Install Prometheus Operator CRDs
|
||||
crds:
|
||||
enabled: true
|
||||
|
||||
alertmanager:
|
||||
enabled: false
|
||||
|
||||
prometheus:
|
||||
prometheusSpec:
|
||||
storageSpec:
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
|
||||
retention: 15d
|
||||
retentionSize: "18GB"
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 512Mi
|
||||
limits:
|
||||
cpu: 500m
|
||||
memory: 2Gi
|
||||
|
||||
grafana:
|
||||
enabled: true
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
size: 5Gi
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
memory: 128Mi
|
||||
limits:
|
||||
cpu: 300m
|
||||
memory: 512Mi
|
||||
|
||||
nodeExporter:
|
||||
enabled: true
|
||||
|
||||
kubeStateMetrics:
|
||||
enabled: true
|
||||
|
||||
kubeEtcd:
|
||||
enabled: false
|
||||
kubeControllerManager:
|
||||
enabled: false
|
||||
kubeScheduler:
|
||||
enabled: false
|
||||
kubeProxy:
|
||||
enabled: false
|
||||
@@ -239,3 +239,25 @@ spec:
|
||||
group: traefik.io
|
||||
kind: Middleware
|
||||
name: private-networks
|
||||
---
|
||||
apiVersion: gateway.networking.k8s.io/v1
|
||||
kind: HTTPRoute
|
||||
metadata:
|
||||
name: grafana
|
||||
namespace: monitoring
|
||||
spec:
|
||||
parentRefs:
|
||||
- name: traefik-gateway
|
||||
namespace: kube-system
|
||||
hostnames:
|
||||
- grafana.lucalise.ca
|
||||
rules:
|
||||
- backendRefs:
|
||||
- name: prometheus-stack-grafana
|
||||
port: 80
|
||||
filters:
|
||||
- type: ExtensionRef
|
||||
extensionRef:
|
||||
group: traefik.io
|
||||
kind: Middleware
|
||||
name: private-networks
|
||||
@@ -33,6 +33,17 @@ spec:
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: Middleware
|
||||
metadata:
|
||||
name: private-networks
|
||||
namespace: monitoring
|
||||
spec:
|
||||
chain:
|
||||
middlewares:
|
||||
- name: private-networks
|
||||
namespace: kube-system
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: Middleware
|
||||
metadata:
|
||||
name: private-networks
|
||||
namespace: pihole-system
|
||||
|
||||
@@ -76,6 +76,8 @@
|
||||
kubectl
|
||||
kubernetes-helm
|
||||
helmfile
|
||||
jless
|
||||
fd
|
||||
];
|
||||
programs.nix-ld.enable = lib.mkDefault true;
|
||||
programs.zsh.enable = lib.mkDefault true;
|
||||
|
||||
@@ -23,8 +23,6 @@ in
|
||||
export PATH="$GOBIN:$PATH"
|
||||
export PATH="$HOME/.cache/.bun/bin:$PATH"
|
||||
alias cat="bat"
|
||||
alias k="kubectl"
|
||||
alias ka="kubectl get --all-namespaces"
|
||||
''
|
||||
+ "\n"
|
||||
+ aliases;
|
||||
@@ -32,6 +30,9 @@ in
|
||||
enable = true;
|
||||
plugins = [
|
||||
"git"
|
||||
"rust"
|
||||
"kubectl"
|
||||
"helm"
|
||||
];
|
||||
};
|
||||
plugins = [
|
||||
|
||||
Reference in New Issue
Block a user