Skip to main content

🛠️ Fixing Wazuh Dashboard Migration Loops

🛠️ Fixing Wazuh Dashboard Migration Loops

If you arekeep seeing the "Wazuh dashboard server is not ready yet"yet” message repeatedly, you are likely stuck in a loop, the Wazuh Dashboard is almost always stuck on a migration lock.lock. FollowThis thesetypically stepshappens after an interrupted upgrade or restart.

🔐 Security Warning

Never store real credentials in exactdocumentation. orderIf toa breakpassword was previously exposed on this page, rotate it immediately.


📋 Overview

  • Symptom: Dashboard never finishes loading
  • Root cause: Stuck .kibana migration index
  • Fix: Remove the loopcorrupted permanently.

    index and allow a clean rebuild

Step 1: Stop the Wazuh Dashboard Service

First, we must haltStop the service to ensure no active processeswrites areoccur attemptingduring to write to the index.cleanup.

sudo systemctl stop wazuh-dashboard


Step 2: ClearRemove the Stuckstuck IndexKibana index

This command removesdeletes the "half-finished"partially migrated UI index that is causingcauses the migration lock.loop.

⚠️ Impact

  • Saved dashboards and visualizations may be reset
  • Wazuh alerts and event data are Note:not Thisremoved
  • removes
UI
configurations

Option butA preserves yourSimple security(placeholder alert data.

password)

curl -k -u admin:'3z+Sw?zNjtTCgbvu*UBizozk4HtSkec6'<PASSWORD>' -X DELETE "https://localhost:9200/.kibana*"

Option
B

Recommended

Step(secure 3:password Start the Dashboard and WAIT

Restart the service to begin the fresh index recreation process.

prompt)
sudoread systemctl-s start-p wazuh-dashboard"Password: " WAZUH_PASS; echo
curl -k -u "admin:${WAZUH_PASS}" -X DELETE "https://localhost:9200/.kibana*"
unset WAZUH_PASS

⚠️ The "5-Minute Rule"

Do not refresh your browser for at least 5 minutes.

The dashboard must rebuild dozens of internal visualizations and patterns. If you refresh the page or interrupt the service during this window, the migration lock will return, and you will have to restart from Step 1.