Troubleshooting — Diskover on RHEL / Rocky / CentOS
Overview
RHEL, Rocky Linux, and CentOS hosts can run the full Diskover stack or act as dedicated indexer nodes. This guide covers the most common issues across all Diskover services on these distributions.
Full stack services:
Service | Role |
|---|---|
| Data store for all indexed file metadata |
| Reverse proxy — serves diskover-web and diskover-admin |
| PHP runtime for diskover-web |
| Message broker for the Celery task queue |
| Task queue worker (crawl and file action tasks) |
| Admin UI and REST API backend |
| Task Worker daemon — receives and executes crawl jobs |
Indexer-only nodes (remote workers) run only celery and diskoverd.
Quick Status Check
for svc in elasticsearch nginx php-fpm rabbitmq-server celery diskover-admin diskoverd; do printf "%-20s %s\n" "$svc" "$(systemctl is-active $svc 2>/dev/null || echo 'not-found')" done
Service Startup Order
Services have dependencies. The correct startup sequence is:
elasticsearchrabbitmq-serverdiskover-adminnginxphp-fpmcelerydiskoverd
Always confirm earlier services are healthy before investigating later ones.
Log Locations Reference
Service | Log Path |
|---|---|
Elasticsearch |
Note: The name of the log is determined by the |
nginx error |
|
nginx access |
|
PHP-FPM |
|
RabbitMQ |
|
Celery worker |
|
diskover-admin |
|
diskoverd (daemon) |
|
diskoverd (crawl) |
|
Troubleshooting
Diskover Web UI Not Loading
Check nginx:
sudo systemctl status nginx sudo tail -20 /var/log/nginx/error.log
Check PHP-FPM:
sudo systemctl status php-fpm sudo tail -50 /var/log/nginx/error.log | grep fastcgi
If nginx is up but returns a 502 on /diskover_admin routes, diskover-admin is likely down — see below.
Check file ownership — the nginx worker user on RHEL/Rocky is nginx:
ls -la /var/www/diskover-web/public sudo chown -R nginx:nginx /var/www/diskover-web
diskover-admin Not Responding (502 on /diskover_admin)
sudo systemctl status diskover-admin sudo journalctl -u diskover-admin -n 100 --no-pager
Check the Unix socket:
ls -la /var/www/diskover-admin/run/diskover-admin.sock
If missing, start diskover-admin:
sudo systemctl start diskover-admin
If the socket exists but 502 persists, fix permissions:
sudo chown nginx:nginx /var/www/diskover-admin/run/diskover-admin.sock sudo chmod 777 /var/www/diskover-admin/run/diskover-admin.sock
Common startup failure causes:
SQLite database not accessible:
ls -la /var/www/diskover-web/diskoverdb.sqlite3Task Worker not installed at
/opt/diskover:ls /opt/diskover/models/Python dependency missing — test manually:
cd /var/www/diskover-admin && uvicorn --interface wsgi --workers 1 wsgi:app
Tasks Not Running / Crawls Not Starting
Confirm diskoverd is running:
sudo systemctl status diskoverd sudo tail -50 /var/log/diskover/diskoverd.log
Confirm the task is assigned to the correct worker name:
Edit the task
Check Assigned Worker has the correct worker selected
Crawl Task Fails
sudo tail -100 /var/log/diskover/diskoverd_subproc.log
For more detail, set log level to DEBUG in Diskover Admin > Configuration > DiskoverD, restart diskoverd, and retry.
Common causes:
Elasticsearch unreachable:
curl -s http://<es-host>:9200/_cluster/healthPath not accessible to the user running diskoverd
NFS/CIFS mount failure:
showmount -e <nfs-server> # NFS mount | grep diskover
Install packages if missing:
sudo dnf install nfs-utils cifs-utilsOr start diskoverd with--assumemountingenabledto skip mount capability checks
Elasticsearch Issues
Cluster health:
curl -s http://localhost:9200/_cluster/health?pretty
yellow is normal for single-node clusters. red means a primary shard is missing — check the log:
sudo tail -100 /var/log/elasticsearch/diskover.log
Disk space — most common cause of ES going read-only:
df -h /var/lib/elasticsearch
Elasticsearch stops writing at 90% disk usage. After freeing space, clear the watermark block:
curl -X PUT "http://localhost:9200/*/_settings" \
-H 'Content-Type: application/json' \
-d '{"index.blocks.read_only_allow_delete": null}'
See the Elasticsearch doc for more.
SELinux Blocking Services
SELinux is a common source of silent permission failures on RHEL/Rocky.
Check for recent AVC denials:
sudo ausearch -m avc -ts recent | grep -E 'nginx|diskover|php'
Common fixes:
# Allow nginx to serve files from the web root sudo chcon -Rt httpd_sys_content_t /var/www/diskover-web # Allow nginx to proxy to upstream sockets and ports sudo setsebool -P httpd_can_network_connect 1 sudo setsebool -P httpd_can_network_relay 1
Firewall — Ports Reference
Port | Service | Required by |
|---|---|---|
80 / 443 | nginx (HTTP/HTTPS) | Browser clients |
8000 | diskover-admin | Remote Task Workers |
9200 | Elasticsearch HTTP | All Diskover services |
9300 | Elasticsearch transport | ES cluster nodes only |
5672 | RabbitMQ AMQP | Celery workers |
15672 | RabbitMQ Management UI | Admin access only |
sudo firewall-cmd --list-all sudo firewall-cmd --add-port=<port>/tcp --permanent && sudo firewall-cmd --reload
Disk Space / Log Rotation
df -h /var/log /var/lib/elasticsearch /opt/diskover
Log rotation is configurable in Diskover Admin > Configuration > Diskoverd. For Elasticsearch index cleanup, see the Kibana doc.
Reinstalling Python Dependencies
If Diskover services fail to start with ModuleNotFoundError or similar import errors, reinstalling the Python dependencies can resolve the issue. This is also required after a Diskover upgrade that introduces new package requirements.
Diskover on RHEL/Rocky uses a virtual environment at /opt/python-venv-diskover/:
# Reinstall all dependencies sudo /opt/python-venv-diskover/bin/python3 -m pip install -r /opt/diskover/requirements.txt # For diskover-admin sudo /opt/python-venv-diskover/bin/python3 -m pip install -r /var/www/diskover-admin/etc/requirements.txt
After reinstalling, restart the affected services:
sudo systemctl restart diskover-admin diskoverd celery
License Failure
An expired or missing license causes diskoverd and Celery to exit at startup:
sudo tail -50 /var/log/diskover/diskoverd.log sudo tail -50 /opt/diskover/diskover_celery/log/<nodename>.log
Contact Diskover support to obtain or renew a license.
Comments
0 comments
Please sign in to leave a comment.