A single Helm chart + GitOps repository that deploys Zabbix as the infrastructure/business monitoring core of a unified observability platform - wired together with Prometheus, Grafana, Loki, Grafana Alloy, the OpenTelemetry Collector and Tempo - across AWS, Azure, GCP, OCI, on-premises, Kubernetes and OpenShift.
┌──────────────────────────────┐
│ NOC / SOC / SRE / DEV / OPS │
└──────────────┬───────────────┘
▼
Grafana (dashboards/SLOs)
▲
┌──────────────────┼──────────────────┐
Zabbix Prometheus Loki
(infra/ITSM) (metrics) (logs)
└──────────────────┼──────────────────┘
▼
OpenTelemetry Collector + Grafana Alloy
▲
┌──────────┬──────────┬───┴────┬──────────┬──────────┐
AWS Azure GCP OCI On-Prem OpenShift
This is a working scaffold, not a fully populated production estate:
- Zabbix + the GitOps/CI/CD/security plumbing are built out for real - Helm templates, RBAC, NetworkPolicy, ExternalSecrets/Vault wiring, Argo CD AppProject/ApplicationSet, Kyverno policies, GitHub Actions pipeline, helm-unittest tests.
- Prometheus/Grafana/Loki/Alloy/Tempo/OTel Collector are wired in as dependencies on
their official upstream Helm charts (not reimplemented), configured through
values.yaml. - Cloud integrations (AWS/Azure/GCP/OCI/On-Prem) ship one or two fully worked examples each (EC2+RDS, Azure VM+SQL, GCE+Cloud SQL, OCI Compute+Autonomous DB, VMware) as a documented pattern - see docs/cloud/. Extending to the dozens of other services listed in the original spec means copying that pattern, not writing a new architecture.
- Exporter image references for Azure/GCP/OCI are placeholders (
TODOinvalues-<cloud>.yaml) - pin them to your org's approved images before deploying.
charts/zabbix-enterprise/ Umbrella Helm chart (Zabbix core + all platform dependencies)
gitops/ Argo CD AppProject/ApplicationSet, per-cluster overlays, infra
.github/workflows/ CI: lint, unit test, kubeconform, security scan, SBOM, publish
docs/ Architecture, operations, security, SRE and per-cloud docs
See charts/zabbix-enterprise/README.md for the chart itself and gitops/README.md for how deployment is orchestrated.
Prerequisites: Helm >= 3.14, a Kubernetes cluster (kind/minikube is fine for dev),
kubectl.
git clone <this-repo> && cd zabbix-helm
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo add grafana https://grafana.github.io/helm-charts
helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add external-secrets https://charts.external-secrets.io
helm repo update
helm dependency update charts/zabbix-enterprise
# Dev has no External Secrets Operator/Vault by default - pre-create the DB secret it expects:
kubectl create namespace zabbix-enterprise
kubectl -n zabbix-enterprise create secret generic zabbix-db-credentials \
--from-literal=host=zabbix-enterprise-mysql \
--from-literal=username=zabbix \
--from-literal=password=change-me
helm install zabbix-enterprise charts/zabbix-enterprise \
--namespace zabbix-enterprise \
-f charts/zabbix-enterprise/values.yaml \
-f charts/zabbix-enterprise/values-dev.yaml \
-f charts/zabbix-enterprise/values-onprem.yamlThen kubectl -n zabbix-enterprise port-forward svc/zabbix-enterprise-zabbix-frontend 8080:8080
and log in at http://localhost:8080 (default Zabbix credentials: Admin / zabbix -
change immediately).
Production is never helm install by hand - it's GitOps end to end:
- Merge to
maintriggers.github/workflows/ci.yaml(lint → unit test → kubeconform → security scan → SBOM → package → push tooci://ghcr.io/.../charts). - Argo CD's
zabbix-enterpriseApplicationSet(gitops/applications/zabbix-enterprise/) picks up the chart per registered cluster/environment, layeringvalues.yaml → values-<env>.yaml → values-<cloud>.yaml → gitops/clusters/<cloud>/<env>/values.yaml. - Cluster-scoped prerequisites (namespaces, Kyverno policies, the Vault
ClusterSecretStore, RBAC group bindings) live ingitops/infrastructure/and are applied once per cluster via thegitops/bootstrap/app-of-apps.yamlentrypoint.
- Architecture (HLD/LLD/C4)
- Operations runbooks (upgrade, rollback, backup/restore, DR, incident response)
- Security (threat model, IAM model, secrets management)
- SRE / SLOs
- Per-cloud integration notes