Skip to content

Configuration

All configuration is via Helm values. Override defaults with --set or a custom values file:

bash
helm install gerty gerty/gerty -f my-values.yaml

Global

ParameterTypeDefaultDescription
nameOverridestring""Override the chart name
fullnameOverridestring""Override the full release name
image.registrystringghcr.io/gerty-labsContainer image registry
image.tagstringChart appVersionImage tag for all components
image.pullPolicystringIfNotPresentImage pull policy

Agent

ParameterTypeDefaultDescription
agent.image.repositorystringgerty-agentAgent image name
agent.image.digeststring""Image digest override
agent.resources.requests.cpustring50mCPU request
agent.resources.requests.memorystring50MiMemory request
agent.resources.limits.cpustring100mCPU limit
agent.resources.limits.memorystring100MiMemory limit
agent.scrapeIntervalstring30sKubelet scrape interval
agent.pushIntervalstring5mServer push interval
agent.nodeSelectorobject{}Node selector
agent.tolerationslist[]Tolerations

Server

ParameterTypeDefaultDescription
server.image.repositorystringgerty-serverServer image name
server.image.digeststring""Image digest override
server.replicasint1Replica count
server.resources.requests.cpustring250mCPU request
server.resources.requests.memorystring256MiMemory request
server.resources.limits.cpustring500mCPU limit
server.resources.limits.memorystring512MiMemory limit
server.service.typestringClusterIPService type
server.service.portint8080Service port
server.nodeSelectorobject{}Node selector
server.tolerationslist[]Tolerations

SLM

ParameterTypeDefaultDescription
slm.enabledboolfalseEnable the SLM deployment
slm.image.repositorystringghcr.io/ggerganov/llama.cppllama.cpp image
slm.image.tagstringserverImage tag
slm.image.digeststring""Image digest override
slm.modelSizestringstandardModel tier (lite, standard, or premium)
slm.model.pathstring/models/gerty.ggufModel file path in container
slm.model.repositorystringgerty-modelModel init container image
slm.model.tagstringChart appVersionModel image tag
slm.model.digeststring""Model image digest override
slm.argslistSee values.yamlllama.cpp server arguments
slm.resources.requests.cpustring1CPU request
slm.resources.requests.memorystring2.5GiMemory request (auto-adjusted by model size)
slm.resources.limits.cpustring2CPU limit
slm.resources.limits.memorystring3GiMemory limit (auto-adjusted by model size)

Model Tiers

All model tiers are included at every pricing level. Gerty auto-detects your workload count on install and recommends the appropriate tier.

modelSizeTierWorkloadsGGUF SizeRAM Required
liteLiteUp to ~1501.3 GB~1.5 GB
standardStandardUp to ~5002.7 GB~3 GB
premiumPremiumUp to ~1,000~5.5 GB~6 GB

For clusters exceeding ~1,000 workloads, deploy multiple Premium replicas via slm.replicas.

| slm.persistence.enabled | bool | false | Enable persistent model storage | | slm.persistence.size | string | 5Gi | PVC size | | slm.persistence.storageClass | string | "" | Storage class |

GitOps

ParameterTypeDefaultDescription
gitops.providerstring""Git provider (github or gitlab). Auto-detected from repo URL if not set
gitops.tokenstring""Personal access token or deploy token
gitops.tokenSecretRefstring""Reference to an existing Secret containing the token
gitops.gitlab.urlstringhttps://gitlab.comGitLab instance URL (for self-hosted)
gitops.prTemplatestring""Custom PR/MR description template (Go text/template). Uses built-in default if empty

PR Template

The default PR template includes workload name, namespace, pattern classification, confidence score, resource changes table, metrics summary, and risk assessment. All values are populated from the L1 rules engine. If the SLM is enabled, an optional reasoning section is appended.

Override with a custom Go text/template. Available fields:

FieldTypeDescription
.WorkloadstringWorkload name (e.g. deployment/api-gateway)
.NamespacestringKubernetes namespace
.PatternstringClassification (steady, burstable, batch)
.Confidencefloat64Confidence score (0.0 - 1.0)
.ObservationDaysintNumber of days of metrics data
.Changes[]ChangeList of resource changes (.Resource, .Current, .Recommended, .Delta)
.MetricsMetricsSummary metrics (.CPUP95, .MemP95, .Samples)
.RiskstringRisk level (LOW, MEDIUM, HIGH)
.ReasoningstringL2 SLM explanation (empty if SLM disabled)

Integrations

ParameterTypeDefaultDescription
gcpMarketplace.enabledboolfalseEnable GCP Marketplace integration
serviceAccount.createbooltrueCreate a ServiceAccount
serviceAccount.namestring""ServiceAccount name override
serviceAccount.annotationsobject{}ServiceAccount annotations
grafana.dashboards.enabledboolfalseDeploy Grafana dashboard ConfigMap
networkPolicy.enabledbooltrueEnable NetworkPolicy
networkPolicy.allowExternalIngressbooltrueAllow external ingress to server
slack.enabledboolfalseEnable Slack notifications
slack.webhookURLstring""Slack webhook URL
slack.channelstring#gertySlack channel
slack.digestIntervalstring1hDigest send interval
slack.minSeveritystringoptimisationMinimum severity to notify