🛠️ Fixing Wazuh Dashboard Migration Loops


If you keep seeing “Wazuh dashboard server is not ready yet” in a loop, the Wazuh Dashboard is almost always stuck on a migration lock. This typically happens after an interrupted upgrade or restart.

🔐 Security Warning

Never store real credentials in documentation. If a password was previously exposed on this page, rotate it immediately.


📋 Overview


① Stop the Wazuh Dashboard

Stop the service to ensure no active writes occur during cleanup.

sudo systemctl stop wazuh-dashboard

② Remove the stuck Kibana index

This deletes the partially migrated UI index that causes the loop.

⚠️ Impact

  • Saved dashboards and visualizations may be reset
  • Wazuh alerts and event data are not removed

Option A — Simple (placeholder password)

curl -k -u admin:'<PASSWORD>' -X DELETE "https://localhost:9200/.kibana*"

Option B — Recommended (secure password prompt)

read -s -p "Password: " WAZUH_PASS; echo
curl -k -u "admin:${WAZUH_PASS}" -X DELETE "https://localhost:9200/.kibana*"
unset WAZUH_PASS

Revision #3
Created 2026-01-01 15:33:47 UTC by joliveira
Updated 2026-01-01 15:36:50 UTC by joliveira