Skip to content

Troubleshooting

Pod startup errors

Symptom Cause Fix
ImagePullBackOff on web-app Image not in registry or pull secret missing For Path 0: run k3d image import. For Path ½: verify app-registrycreds in 02-secrets.yaml
ImagePullBackOff on xtra-wasm hopr-registrycreds missing or empty Verify hopr-registrycreds in 02-secrets.yaml — check it has a non-empty .dockerconfigjson value
ErrImageNeverPull imagePullPolicy: Never but image not imported Run k3d image import <image-tag> -c <cluster> with the exact tag in 03-deployment.yaml
CrashLoopBackOff on xtra-wasm Missing or invalid Hopr credentials Open 02-secrets.yaml and verify all four fields are non-empty: HOPR_LICENSE, HOPR_KEY, CHIPS_ALGORITHM, HOPR_API_TOKEN
Pod stuck at 2/3 Ready One container (xtra-wasm or web-retriever) failing Run kubectl describe pod <pod-name> -n <namespace> and check the Events section

WoSP connectivity errors

Symptom Cause Fix
Auto-trigger logs but no 5/5 messages sent Downstream pod not ready or WoSP authentication failed Wait 60–90 seconds after kubectl apply for WoSP to complete authentication; check xtra-wasm logs
connection refused in web-app logs Egress port misconfigured or pod not reachable Verify EGRESS_PORT env var in 03-deployment.yaml matches the downstream pod's WoSP ingress port
No CYCLE COMPLETE / no trail entries Cross-pod message delivery failing Check xtra-wasm logs on the receiving pod; look for WoSP authentication errors
503 Service Unavailable from Envoy WoSP filter rejecting the request Credentials may be expired — check license status and verify HOPR_API_TOKEN is current

Multi-cluster errors

Symptom Cause Fix
connection refused on host.k3d.internal Port not mapped at cluster creation Delete cluster and recreate with correct --port flags — mappings cannot be added after creation
DNS resolution failure k3d < 5.0 Upgrade k3d to >= 5.0 which supports host.k3d.internal
Cross-cluster trail shows only one cluster LoadBalancer IP not reachable from other cluster Verify the --port flag maps the correct LoadBalancer port; test with curl http://host.k3d.internal:<port>/health
<pending> on LoadBalancer service (cloud) Cloud provisioning delay Wait 2–5 minutes; if persists, check cloud provider quotas and LoadBalancer permissions

Credential errors

Symptom Cause Fix
WoSP logs license validation failed Invalid or expired HOPR_LICENSE Check license status at hopr.co; contact support if active
WoSP logs key rotation failed HOPR_API_TOKEN invalid or network blocked Verify the token in 02-secrets.yaml; ensure the pod has outbound internet access
Empty 02-secrets.yaml values Delivery error — credentials not injected Contact support@hopr.co with your Customer ID

Build errors (Path 0)

Symptom Cause Fix
docker: command not found Docker not installed or not running Start Docker Desktop
k3d: command not found k3d not installed Install from k3d.io
Image imported but pod still shows ErrImageNeverPull Tag mismatch Ensure docker build -t <tag> matches the image: field in 03-deployment.yaml