Skip to content

Wrap up

For the complete documentation index see: llms.txt

All documentation pages available in markdown.

Troubleshoot

If a dispute exists in Aerospike but a support search returns no results in Elasticsearch over HTTPS, work through these checks in order.

  • A container exited or did not become available. Check every service before troubleshooting the data path.

    Terminal
    docker compose ps -a
    docker compose logs aerospike elasticsearch aerospike-elasticsearch-outbound

    Check for image-pull authorization errors, occupied host ports, unreadable bind mounts, or certificate-file permission errors.

  • Feature-key file not loaded. Verify asdb-change-notification is enabled.

    Terminal
    grep -E '^asdb-change-notification[[:space:]]+true$' features.conf
    docker compose exec -T aerospike asinfo -v "get-config:context=service" | grep feature-key
    docker compose logs aerospike | grep -i 'feature.key\|license'
  • The Cross-Datacenter Replication (XDR) mTLS connection fails. Check both sides of the connection.

    Terminal
    docker compose logs aerospike | grep -i 'tls\|xdr'
    docker compose logs aerospike-elasticsearch-outbound | grep -i 'peer\|handshake\|ssl'

    Verify tls-name, the Elasticsearch connector name in node-address-port, allowed-peer-names, and the CA files against the generated certificates. One SSLHandshakeException with Empty client certificate is expected. It comes from the connection without a client certificate in Start and verify. Repeated handshake errors while XDR success stays flat point to a certificate or peer-name mismatch.

  • The Elasticsearch connector cannot reach Elasticsearch, or search results are empty. Verify Elasticsearch directly, then check Elasticsearch connector logs and error metrics.

    Terminal
    curl -fsS --cacert ./security/ca.crt \
    -u elastic:changeme-for-dev \
    https://localhost:9200/_cluster/health
    curl -fsS -X POST --cacert ./security/ca.crt \
    -u elastic:changeme-for-dev \
    'https://localhost:9200/aerospike/_refresh'
    docker compose logs aerospike-elasticsearch-outbound | tail -n 50
    curl -fsS http://localhost:8902/manage/rest/v1/metrics | grep -io '"[^"]*error[^"]*":{"count":[0-9]*'

    A nonzero requests-error or requests-parse-error count means the Elasticsearch connector rejected or failed to process records. If the direct request fails, compare the CA, password file, ELASTIC_PASSWORD, and es-client settings.

Clean up the tutorial (optional)

  1. Stop and remove the tutorial containers and network. The Compose file does not create persistent volumes, so this removes the tutorial data.

    Terminal
    docker compose down
  2. Delete the project directory when you no longer need it. Verify that it contains no files you want to keep, including features.conf, private keys, and the password file.

    Terminal
    cd ..
    rm -rf aerospike-elastic-tls

mkcert stores its CA private key outside the project under the directory reported by mkcert -CAROOT.