Skip to main content

NAS scheduled backups are getting expired and manual backup when triggered gets stuck on 0%.

NAS scheduled backups are getting expired and manual backup when triggered gets stuck on 0%.

Updated this week

Problem Description

NAS scheduled backups are getting expired and manual backup when triggered gets stuck on 0%.

Cause:

  • The primary issue is the repeated failure to establish a connection with the Druva URL (`dtp-c0-ap-south-1-ap1-phoenix.druva.com`).

  • The error consistently points to an existing connection being forcibly closed by the remote host (OS error code 10054, `ConnectionReset`).

  • This failure prevents authentication and subsequent backup operations.

Traceback:

Download the detailed job logs and check the Phoenix Photon logs. You should see the below traceback error related to network retries.

ts=2025-08-07T23:00:11.159026300Z ERROR pht{jobop="backup" jobid=48 id=1}: dtconnector::conn: connect error: Error { code: ErrorCode(5), cause: Some(Io(Os { code: 10054, kind: ConnectionReset, message: "An existing connection was forcibly closed by the remote host." })) }, ssl_version: "TLSv1.2" op="connect_tls"
ts=2025-08-07T23:00:11.159389300Z ERROR pht{jobop="backup" jobid=48 id=1}: syncer::context: Need to retry REST call. Error Reason: "Connector(Hyper(hyper::Error(Connect, SSL(Error { code: ErrorCode(5), cause: Some(Io(Os { code: 10054, kind: ConnectionReset, message: \"An existing connection was forcibly closed by the remote host.\" })) }))))". To retry after 10. api="restsdk::DtApi::refresh_token" seq_id=0 retry_count=0 elapsed=53 last_elapsed=53 pause=0 refresh_spent=0
ts=2025-08-07T23:00:11.302373800Z ERROR pht{jobop="backup" jobid=48 id=1}: dtconnector::conn: connect error: Error { code: ErrorCode(5), cause: Some(Io(Os { code: 10054, kind: ConnectionReset, message: "An existing connection was forcibly closed by the remote host." })) }, ssl_version: "TLSv1.2" op="connect_tls"
ts=2025-08-07T23:00:11.302491500Z ERROR pht{jobop="backup" jobid=48 id=1}: syncer::context: Need to retry REST call. Error Reason: "Connector(Hyper(hyper::Error(Connect, SSL(Error { code: ErrorCode(5), cause: Some(Io(Os { code: 10054, kind: ConnectionReset, message: \"An existing connection was forcibly closed by the remote host.\" })) }))))". To retry after 18. api="restsdk::DtApi::refresh_token" seq_id=0 retry_count=1 elapsed=196 last_elapsed=126 pause=0 refresh_spent=0

Verification:

  • Run a tracert command from the NAS proxy to the two Druva URLs and find if any requests are timing out.
    URLS :
    ​dtp-c0-ap-south-1-ap1-phoenix.druva.com
    ​dtp-c0-dbs-ap-south-1-ap1-phoenix.druva.com

  • Note : The above URLs are specific to your Storage region in Druva, Please refer to the article for checking the URL which needs to be whitelisted as per your region. Please check the part storage region in this article and whitelist both Storage cluster and storage service URL.

  • This strongly suggests that a firewall is blocking the traffic before it can reach its destination.

Resolution:

To resolve this, network team must ensure that specific Druva service URLs are whitelisted. Once connectivity is restored, a manual backup should be triggered to verify the fix.

  • Ensure that the following URLs are whitelisted for outbound traffic on your firewall for the Backup Proxy:

    • dtp-c0-ap-south-1-ap1-phoenix.druva.com

    • dtp-c0-dbs-ap-south-1-ap1-phoenix.druva.com

  • Once the network team confirms the URLs are whitelisted, follow these steps to verify the resolution:

    • Trigger a Manual Backup: Log into the Druva console, navigate to your NAS share, and select Backup Now.

    • Monitor the Task: Ensure the manual backup completes without connectivity errors.

    • Confirm Scheduling: Monitor the next scheduled backup cycle to ensure the environment has returned to a stable state.

Did this answer your question?