Deploying with ArgoCD
Use Self Hosted SigNoz if you need
- Full on-prem control
- Custom build tweaks
- Zero outbound traffic
Otherwise, try SigNoz Cloud to
- Onboard in 5 minutes
- Auto-scale & upgrades
- Zero ops maintenance
Kubernetes version >=
1.22
Currently supports
x86-64
,amd64
andarm64
architecturesHelm version >=
3.8
You must have
kubectl
access to your clusterThe following table describes the hardware requirements that are needed to install SigNoz on Kubernetes:
Component Minimal Requirements Recommended Memory 8 GB 16 GB CPU 4 cores 8 cores Storage 30 GB 80 GB
- ArgoCD running in your cluster, you can follow the ArgoCD documentation for installing ArgoCD.
Installation Steps
Create a namespace for SigNoz
kubectl create namespace signoz
Create an ArgoCD Application
We will be using the SigNoz Helm chart, which will install the following components into your Kubernetes cluster:
- SigNoz
- SigNoz Collector
- Clickhouse
- Zookeeper
ArgoCD allows to install application by using the helm charts through the UI, or in the declarative GitOps way. For detailed instructions on using helm charts with ArgoCD, please refer to the documentation documentation
Create a file named signoz-application.yaml
with the following content:
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: signoz
namespace: argocd
spec:
project: default
source:
repoURL: https://charts.signoz.io
targetRevision: 0.79.0
chart: signoz
destination:
server: https://kubernetes.default.svc
namespace: signoz
Apply the ArgoCD Application
kubectl apply -f signoz-application.yaml

Configuration
Customizing the Installation
You can customize the SigNoz installation by creating a values file and referencing it in your ArgoCD Application. Here's an example of a values file (signoz-values.yaml
):
signoz:
name: "signoz"
replicaCount: 1
image:
registry: docker.io
repository: signoz/signoz
tag: v0.81.0
pullPolicy: IfNotPresent
service:
type: ClusterIP
port: 8080
internalPort: 8085
opampPort: 4320
additionalArgs:
- --use-logs-new-schema=true
- --use-trace-new-schema=true
Then update your ArgoCD Application to use these values:
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: signoz
namespace: argocd
spec:
project: default
source:
repoURL: https://charts.signoz.io
targetRevision: 0.79.0
chart: signoz
helm:
valueFiles:
- signoz-values.yaml
destination:
server: https://kubernetes.default.svc
namespace: signoz
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
Automation from the CI Pipelines
If you prefer to manage your Helm values through a Git repository, you can configure ArgoCD to sync from your GitHub repo instead, and deploy from the CI, please refer to this documentation
Next Steps
- Instrument Your Application
- Use OpenTelemetry Operator for automatic instrumentation (if your applications are in k8s)
- Tutorials