Configuration
Configure the zxporter operator -- collection frequency, namespace filtering, GPU monitoring, and all available options.
Configuration
The Read Operator is configured via a CollectionPolicy CRD and environment variables set during installation. Most defaults work well for typical clusters.
Configuration Reference
Prop
Type
Namespace Filtering
By default, the operator collects from all namespaces. You can customize this:
Exclude specific namespaces:
# Via CollectionPolicy CRD
kubectl patch collectionpolicy default -n devzero-zxporter --type merge -p '{
"spec": {"excludedNamespaces": ["kube-system", "monitoring", "istio-system"]}
}'Only collect from specific namespaces (allowlist):
kubectl patch collectionpolicy default -n devzero-zxporter --type merge -p '{
"spec": {"targetNamespaces": ["production", "staging"]}
}'When targetNamespaces is set, excludedNamespaces is ignored.
Collection Frequency
The default 10-second interval provides high-resolution data. For large clusters (500+ nodes), consider increasing it:
kubectl patch collectionpolicy default -n devzero-zxporter --type merge -p '{
"spec": {"collectionFrequency": "30s"}
}'Reducing sampling rates will affect the efficiency and accuracy of recommendations.
GPU Monitoring
GPU metrics require the NVIDIA DCGM Exporter or GPU Operator to be running in your cluster. See the Quickstart GPU section for setup instructions.
If your cluster doesn't have GPUs, disable GPU metric collection to avoid unnecessary scrape errors:
kubectl patch collectionpolicy default -n devzero-zxporter --type merge -p '{
"spec": {"disableGpuMetrics": true}
}'Alternative Image Registries
By default, DevZero uses Docker Hub to host images. To use ECR instead, change devzeroinc to public.ecr.aws/devzeroinc:
docker pull public.ecr.aws/devzeroinc/zxporterWhen using Helm charts:
helm upgrade ... --set image.repository=public.ecr.aws/devzeroinc