Skip to main content
This guide helps you diagnose and resolve common issues with Chainstack Self-Hosted.

Installation troubleshooting

Prerequisites check fails

Installer fails to verify the requirements.

kubectl not found

Helm version too old

yq not found or wrong version

Installation times out

Helm install hangs or times out after 15 minutes.

PersistentVolumeClaim pending

Ensure storage class exists and is default, and verify sufficient disk space.

Image pull errors

Check network connectivity to container registry and verify no firewall is blocking image pulls.

Insufficient resources

Ensure node has enough CPU and memory.

Pods crash looping

Pods repeatedly restart (CrashLoopBackOff status).

Database connection issues

Check PostgreSQL pod is running and verify database credentials match.

Configuration errors

Review the values file for typos and ensure all required environment variables are set.

Access troubleshooting

Cannot access web interface

Browser cannot reach the Control Panel.

Verify UI service exists

Check UI pod is running

Verify external service

Test with port forward

Then access http://<server-ip>:8080

Check firewall

Ensure the port is open on your server and check cloud provider security groups if applicable.

Login fails with valid credentials

The login page loads and accepts credentials, but shows “Login failed”.

Backend URL points to in-cluster address

This is the most common cause. The UI is configured to reach the deployments API at an in-cluster URL that your browser cannot resolve.
  1. Check the configured backend URL:
    If the output shows {"apiBaseUrl":"http://cp-cp-deployments-api"}, the UI is using the in-cluster URL.
  2. Patch the configmap to use your server’s external address:
  3. Restart the UI pod to pick up the change:
  4. Expose the deployments API on port 8081:
  5. Hard-refresh the login page and try again.
This happens when the installer runs with --yes or when you press Enter at the backend URL prompt, accepting the in-cluster default. The in-cluster URL works for pod-to-pod communication but is not reachable from a browser outside the cluster.

Check auth service

Check Keycloak

Verify credentials from values file

Node deployment troubleshooting

Node stuck in deploying state

Node deployment does not progress.

Check workflows service

Check Temporal

Verify resource availability

Check deployments API logs

Node pod errors

Blockchain node pods run in the control-panel-deployments namespace. Use the node ID from Chainstack Self-Hosted > Nodes > Node details to find the relevant pods.

Check node pod status

Check node pod logs

Check node PVC status

Transient PopulatorDataSourceNotFound warning

During the first ~10 seconds of a node deployment, kubectl get events may show a warning on the reth PVC:
This is a brief race condition between PVC creation and the snapshot data source being created by the Control Panel workflows. It resolves automatically once cp-workflows finishes the post-apply hook (typically within 10–15 seconds). No action is required. If the warning persists for more than a minute, check cp-workflows and cp-bolt logs:

System health checks

Check all components

Run this comprehensive health check:

Check resource usage

Check logs for errors

Recovery procedures

Restart all services

Reset to clean state

This destroys all data. Only use as last resort.

Recover from database issues

If PostgreSQL has issues:

Getting help

If you cannot resolve an issue, check the FAQ for known issues.

Gather diagnostic information

Contact support

When contacting support, include:
  • Version of Chainstack Self-Hosted
  • Kubernetes distribution and version
  • diagnostic.txt file
  • debug-$timestamp.txt file
  • Other relevant error messages and logs
  • Steps to reproduce the issue
Last modified on May 4, 2026