Skip to main content

Deploy the Spire Agent

1.1 Clone the Helm chart repository

git clone https://github.com/authsec-ai/spire-agent.git

1.2 Install with your Tenant ID

helm install spire-agent ./spire-agent/charts/spire-agent \
--namespace spire \
--create-namespace \
--set tenantId="YOUR-TENANT-UUID"

That's it. The chart creates the namespace, service account, RBAC, ConfigMap, and DaemonSet automatically.

For multi-cluster setups, also set the cluster name:

helm install spire-agent ./spire-agent/charts/spire-agent \
--namespace spire \
--create-namespace \
--set tenantId="YOUR-TENANT-UUID" \
--set clusterName="customer-prod-east-1"

1.3 (Optional) Customize with a values file

For production tuning, create a values.yaml override:

tenantId: "YOUR-TENANT-UUID"
clusterName: "customer-prod-east-1"

image:
repository: docker-repo-public.authsec.ai/spire-agent
tag: "latest"

resources:
requests:
memory: "256Mi"
cpu: "200m"
limits:
memory: "512Mi"
cpu: "500m"

logging:
level: "info" # debug, info, warn, error

nodeSelector: {} # e.g. { role: worker } to target specific nodes

Then install with:

helm install spire-agent ./spire-agent/charts/spire-agent \
--namespace spire \
--create-namespace \
-f values.yaml

Helm Values Reference

ValueDefaultDescription
tenantId"" (required)Your tenant UUID from AuthSec
clusterName"production"Cluster identifier for multi-cluster setups
image.repositorydocker-repo-public.authsec.ai/spire-agentAgent container image
image.tag"latest"Image tag
resources.requests.memory256MiMemory request
resources.limits.memory512MiMemory limit
logging.level"info"Log level
health.port8080Health check port
nodeSelector{}Target specific nodes
tolerationsNoSchedule + NoExecuteNode tolerations
rbac.createtrueCreate ClusterRole and binding
serviceAccount.createtrueCreate service account

Verify

# One Running pod per node
kubectl get pods -n spire -l app=spire-agent

# Check logs — look for "Agent SVID renewal successful"
kubectl logs -n spire -l app=spire-agent --tail=20

Expected output:

{"event": "Agent startup completed successfully", ...}
{"event": "Agent SVID renewal successful", "spiffe_id": "spiffe://YOUR-TENANT-UUID/agent/...", "ttl": 3600, ...}
{"event": "gRPC Workload API Server started", ...}

Upgrade or uninstall

# Pull latest chart changes
cd spire-agent && git pull && cd ..

# Upgrade (e.g. new image tag)
helm upgrade spire-agent ./spire-agent/charts/spire-agent \
--namespace spire \
--set tenantId="YOUR-TENANT-UUID" \
--set image.tag="1.2.0"

# Uninstall
helm uninstall spire-agent --namespace spire