Skip to content

Latest commit

 

History

67 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Helm charts

Helm charts for the duynhlab microservices platform. Published to GHCR (OCI) and GitHub Pages.

Charts

Chart Version Description
mop 0.17.2 Generic chart for Go microservices — Deployment, multi-port Service (HTTP + optional gRPC), golang-migrate, Sloth SLO.
grafana-dashboards 0.2.2 Grafana dashboards as ConfigMaps for sidecar auto-provisioning.
duynh 0.2.2 Stateless microservices on Amazon EKS — Deployment, Service, HPA, PDB, ServiceAccount, Envoy Gateway HTTPRoute, Sloth SLO.
vm-rules 0.1.0 Static VictoriaMetrics alerting rules as VMRule objects — cert-manager, Flux, kubelet, Kubernetes workloads, node-exporter, Redis.

See each chart's README for configuration details.

Installation

List available versions (OCI)

crane ls ghcr.io/duynhlab/helm-charts/mop
crane ls ghcr.io/duynhlab/helm-charts/grafana-dashboards
crane ls ghcr.io/duynhlab/helm-charts/duynh
crane ls ghcr.io/duynhlab/helm-charts/vm-rules

OCI (GHCR)

# mop
helm install <release> oci://ghcr.io/duynhlab/helm-charts/mop --version 0.17.2 \
  --set name=<svc> --set image.repository=ghcr.io/duynhlab/<svc>-service/<svc>

# grafana-dashboards
helm install grafana-dashboards oci://ghcr.io/duynhlab/helm-charts/grafana-dashboards --version 0.2.2

# duynh
helm install <release> oci://ghcr.io/duynhlab/helm-charts/duynh --version 0.2.2 \
  --set image.repository=<image>

# vm-rules (needs the VictoriaMetrics operator CRDs)
helm install vm-rules oci://ghcr.io/duynhlab/helm-charts/vm-rules --version 0.1.0 -n monitoring

Helm repo (GitHub Pages)

helm repo add duynhlab https://duynhlab.github.io/helm-charts
helm repo update
helm install <release> duynhlab/mop --version 0.17.2 --set name=<svc> ...
helm install grafana-dashboards duynhlab/grafana-dashboards --version 0.2.2
helm install <release> duynhlab/duynh --version 0.2.2 --set image.repository=<image>
helm install vm-rules duynhlab/vm-rules --version 0.1.0 -n monitoring

Install from local chart

helm install <release> ./charts/mop --set name=<svc> ...
helm install grafana-dashboards ./charts/grafana-dashboards
helm install <release> ./charts/duynh --set image.repository=<image>
helm install vm-rules ./charts/vm-rules -n monitoring

Upgrade

helm upgrade <release> oci://ghcr.io/duynhlab/helm-charts/<chart>

Uninstall

helm uninstall <release>

Develop

Prerequisites for local e2e: kind, kubectl, helm, helmfile, docker.

# helmfile (one-time)
go install github.com/helmfile/helmfile/v2/cmd/helmfile@latest
make help       # list targets
make lint-all   # lint + template every chart (like CI)
make lint       # helm lint $(CHART): default + gRPC+SLO
make template   # render mop with gRPC enabled
make docs       # regenerate chart READMEs (helm-docs)
make check-rules       # promtool check charts/vm-rules/rules/*.yml
make lint-vm-rules     # helm lint vm-rules: default + all rule groups
make e2e        # KinD: VM CRDs + helmfile sync (mop + worker + grafana-dashboards + vm-rules), assert, test, teardown
make e2e-sync   # helmfile sync only (existing cluster)

About

Helm charts

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages