FEAT(repo): add uptime kuma for service monitoring

- Add Uptime Kuma Helm chart deployment (dirsigler/uptime-kuma v2.24.0)
- Configure ingress for kuma0213.kro.kr
- Enable ServiceMonitor for Prometheus integration
- Use local-path storage class with 1Gi
This commit is contained in:
2026-01-03 22:48:29 +09:00
parent 200c6e97ae
commit 699b31cc67
4 changed files with 105 additions and 0 deletions

44
uptime-kuma/argocd.yaml Normal file
View File

@@ -0,0 +1,44 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: uptime-kuma
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
sources:
- repoURL: https://dirsigler.github.io/uptime-kuma-helm
chart: uptime-kuma
targetRevision: 2.24.0
helm:
valueFiles:
- $values/uptime-kuma/helm-values.yaml
- repoURL: https://github.com/K3S-HOME/monitoring.git
targetRevision: main
ref: values
- repoURL: https://github.com/K3S-HOME/monitoring.git
targetRevision: main
path: uptime-kuma
destination:
server: https://kubernetes.default.svc
namespace: uptime-kuma
syncPolicy:
automated:
prune: true
selfHeal: true
allowEmpty: false
syncOptions:
- CreateNamespace=true
- PrunePropagationPolicy=foreground
- PruneLast=true
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
managedNamespaceMetadata:
labels:
goldilocks.fairwinds.com/enabled: 'true'
revisionHistoryLimit: 10

View File

@@ -0,0 +1,32 @@
image:
tag: "1"
service:
type: ClusterIP
port: 3001
persistence:
enabled: true
size: 1Gi
storageClass: "local-path"
accessMode: ReadWriteOnce
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 256Mi
livenessProbe:
enabled: true
initialDelaySeconds: 180
readinessProbe:
enabled: true
initialDelaySeconds: 10
serviceMonitor:
enabled: true
namespace: prometheus
interval: 60s

24
uptime-kuma/ingress.yaml Normal file
View File

@@ -0,0 +1,24 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: uptime-kuma-ingress
namespace: uptime-kuma
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
ingressClassName: traefik
tls:
- hosts:
- kuma0213.kro.kr
secretName: uptime-kuma-tls
rules:
- host: kuma0213.kro.kr
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: uptime-kuma
port:
number: 3001

View File

@@ -0,0 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ingress.yaml