Skip to main content

How can we help you?

Druva Documentation

Understanding Phoenix workflows

These workflow diagrams explain the backup and restore processes for File servers, MS-SQL servers, NAS, and VMware infrastructure:

Data backup workflow

The following diagram illustrates how data flows within the Druva Phoenix setup at the time of data backup. 

Step Description

Step 1

Phoenix agents installed on servers, back up server data according to the schedule defined in the backup policy. At the scheduled time, Druva Cloud initiates backups from servers on which Phoenix agents are installed.

Step 2

Phoenix agents attempt to communicate with Druva Cloud following a response-request messaging pattern over WAN.

Step 3

Druva Cloud validates agent communication requests. Upon successful validation, Druva Cloud assigns agent requests to storage.  

Step 4

Phoenix agents back up data to storage. 

Warm restore workflow 

A warm restore is a restore of data using snapshots that date back to 90 days in time (also referred to as warm snapshots). 

The following diagram illustrates how data flows within the Druva Phoenix setup at the time of warm restore. 

Step Description

Step 1

Phoenix agents installed on servers send restore requests for data dating back to 90 days in time over WAN.

Step 2

Druva Cloud validates the requests and assigns them to storage. 

Step 3

Phoenix agents restore data from the storage that Druva Cloud assigned.  

File server backup workflow 

Phoenix Editions: File:/tick.png Business File:/cross.png Enterprise File:/tick.png Elite

This article provides the workflow diagrams and the steps for data backup from the following operating systems:

Note:  If you restart or reboot your servers during backups, the backup operation is aborted. Phoenix agent starts a fresh backup following the backup schedule. Alternatively, you can start a manual backup at any time. 

File servers with Windows operating system

This topic explains how data flow during data backup from the File servers with Windows operating system.

file server backup on windows1.png

Backup workflow

Step Operation

Step 1

A backup request is initiated and forwarded to the Phoenix agent. 

Druva Phoenix checks if Phoenix agent is running. 

  • If the agent is running, Druva Phoenix performs the backup operation.
  • If the agent is not running, Druva Phoenix performs the backup operation based on the type of backup job.
    • For a backup now job, Druva Phoenix fails the backup request.
    • For a scheduled job, Druva Phoenix waits until the expiry window of the backup request, else fails the backup request.

Step 2

Druva Phoenix determines the type of backup.

If you or another administrator initiates the first backup, Druva Phoenix performs a full backup. All subsequent backups triggered by administrators are incremental backups.

Step 3

 

Phoenix agent verifies that the VSS service is running. If the VSS service is not running, Phoenix agent starts the VSS service and instructs VSS to create a snapshot. 

Phoenix agent validates if snapshots are created successfully.

Step 4

Phoenix agent estimates the files and data to back up.

Step 5

 

  1. If snapshots are created successfully, Phoenix agent uses the VSS snapshots as the filesets for data backup to Druva Cloud.
  2. If the snapshots are not created successfully, Phoenix agent scans the live files and folders to create filesets for data backup to Druva Cloud.

Note: In case of VSS snapshots, Druva Phoenix includes the locked files in the backup. However, in case of live folders and files scan, Druva Phoenix considers locked files as missed files, and attempts to back up such files at the time of the next scheduled backup.

Step 6

After the backup completes, Phoenix agent deletes the created VSS snapshots.

File servers with Linux operating system

This topic explains how data flow during data backup from the File servers with Linux operating system.

file server backup on linux1.png

Backup workflow

Step Operation

Step 1

A backup request is initiated and forwarded to the Phoenix agent.

Druva Phoenix checks if Phoenix agent is running. 

  • If the agent is running, Druva Phoenix performs the backup operation.
  • If the agent is not running, Druva Phoenix performs the backup operation based on the type of backup job.
    • For a backup now job, queues the backup request. The backup request is executed after Phoenix agent starts.
    • For a scheduled job, skips the backup request.

Step 2

Druva Phoenix determines the type of backup.

If you or another administrator initiates the first backup, Druva Phoenix performs a full backup. All subsequent backups triggered by administrators are incremental backups.

Step 3

Phoenix agent performs the full scanning of live files and folders on the File server.

Step 4

Phoenix agent estimates the files and data to back up. 

Step 5

Phoenix agent uses the scanned folders and files as the fileset for data transmission. 

Note

  • Druva Phoenix considers locked files as missed files, and attempts to back up such files at the time of the next scheduled backup. 
  • Druva Phoenix supports valid UTF-8 encoded file names and filepaths. Files with filenames encoded in a format other than UTF-8 are skipped from backups. 

File server restore workflow

Restore workflow on the same File server

Restore workflow on a new File server 

Steps to restore File server 

Step Operation

Step 1

You or another administrator initiates a restore operation.

You can restore the data at the original location or an alternate location. The alternate location can be the same server and different path or different server and different path.

You can select the destination server where restore can happen for the selected File server restore point. For example, Windows server for Windows restore and Linux server for Linux restore.

Step 2

Druva Phoenix checks if Phoenix agent is running. 

  • If the agent is running, Druva Phoenix performs the restore operation.
  • If the agent is not running, Druva Phoenix queues the restore request and performs the restore operation after Phoenix agent starts.

Step 3

Druva Phoenix validates the restore destination. 

Step 4

Druva Phoenix checks the free space available at the restore destination.

Step 5

Druva Phoenix identifies the file sets for restore.

Step 6

Druva Phoenix starts the restore operation and sequentially downloads the filesets to the restore destination.

 Note: For more information about restoring File servers, see Restore a File server to the same serverRestore the File server to a different server.

NAS Share backup workflow

Phoenix Editions: File:/tick.png Business File:/cross.png Enterprise File:/tick.png Elite

This article provides the workflow diagrams and steps for data backup of NAS shares on Windows and Linux. 

Backup workflow

The following workflow illustrates the data flow during backup of NAS shares on Windows or Linux: 

NAS share backup workflow.png

The following table summarizes the workflow steps. 

Step Operation

Step 1

 A backup request is initiated and forwarded to the NAS proxy. 

Step 2

 

Druva Phoenix checks if the NAS proxy is running. 

  • If the proxy is running, Druva Phoenix performs the backup.
  • If the proxy is down, Druva Phoenix performs the backup based on the type of backup job, as specified below.
    • For a backup now job, Druva Phoenix queues the backup request. Druva Phoenix completes the request after the NAS proxy starts.
    • For a scheduled job, Druva Phoenix skips the backup request.

Step 3

 

Druva Phoenix determines the type of backup.

If it is the first backup from any source, Druva Phoenix performs a full backup. The subsequent backups are incremental backups.

Step 4

Phoenix agent performs a full scan of the files and folders on the NAS share.

Step 5

NAS proxy sends the scanned files and folders for backup to Druva Cloud.

Note:

  • If Druva Phoenix is unable to back up  locked files at the first attempt, it checks if the files are unlocked at the end of the backup. If the files are unlocked, they are backed up in the same backup cycle.  Locked files are not backed up.
  • Druva Phoenix supports valid UTF-8 encoded file names, filepaths, and share names. Files with filenames encoded in a format other than UTF-8 are skipped from backups. 
Step 6 Druva Cloud applies deduplication and saves incremental data in snapshots.

 

NAS Share restore workflow

Phoenix Editions: File:/tick.png Business File:/cross.png Enterprise File:/tick.png Elite

Workflow to restore on the source NAS share 

RestoreToSameLocation.png

Workflow to restore on a different NAS share 

RestoreToAlternateLocation.png

Steps to restore a NAS device

Step Operation

Step 1

You initiate a restore operation.

You can select the destination share for the restore of the selected NAS restore point. For example, SMB share for a Windows restore and NFS share for a Linux restore.

Step 2

Druva Phoenix checks if the NAS proxy is running. 

  • If the proxy is running, Druva Phoenix performs the restore operation.
  • If the proxy is not running, Druva Phoenix queues the restore request and performs the restore operation after the NAS proxy starts.

Step 3

Druva Phoenix checks whether the share type of the restore destination is same as the sources and validates the restore request.

Step 4

Druva Phoenix identifies the snapshots to restore.

Step 5

Druva Phoenix starts the restore operation and sequentially downloads the snapshots to the restore destination.

 Note: For more information about restoring a NAS share, see Restore a NAS share.

What you must know about NAS share restore 

This section highlights the important considerations of the NAS share restore:

  • Hot snapshots reside on the Phoenix CloudCache for the period specified in the CloudCache configuration. See Configure Phoenix CloudCache for information on the configuration.
  • If you are a group administrator, you can restore data only to the NAS share that belongs to the administrative group that you manage. Cloud administrators and data protection officers can restore data to shares across all administrative groups.
  • You can restore data only to a share that has the same operating system as the source share. 
  • In the event of a network connection failure during restore, the NAS proxy attempts to connect to the Druva Cloud. After the network connection is restored, the NAS proxy restarts the restore from the state where it was interrupted. 
  • If you restart or reboot the NAS device during a restore, the restore operation is aborted. 
  • If you choose to restore data to the same location, the existing data at that location is overwritten unless a different restore setting is configured.
  • The time zone for the snapshot timestamp and the file/ folder timestamp may differ if the NAS proxy and NAS shares are in different time zones.
  • Long file and folder names are now visible in the Restore Data page. The Date Modified and Size information is visible on the next line.
  • Restores are not supported to mapped drives.
  • For CIFS/SMB shares:
    • The following file attributes are supported:
      • Not content-indexed
      • Read-only
    • The following Access Control Lists (ACLs) are backed up and restored:

      • Owner name
      • Create time (ctime) of a file 
      • Modified time (mtime) of a file 
      • Primary group that the owner of the file belongs to
      • System Access Control List (SACL)
      • Discretionary Access Control List (DACL)
  • For NFS shares,
    • File permissions for file owners, groups, and users are restored.
    • File attributes are not supported.
    • The following Access Control Lists (ACLs) are backed up and restored:
      • Owner name
      • Modified time (mtime) in nanoseconds
  • The following special permissions for files and folders are not supported:
    • Sticky bit
  • Backup and restore can run simultaneously on the same agent.
  • The backup request triggered while a restore is in progress will be queued.
  • Full scan restore will be marked with an  icon.

MS-SQL server backup workflow

Full backups

Druva Phoenix performs an ever incremental backup of the databases of your MS-SQL server. As mentioned in the prerequisites, backup and restore operations depend on VSS and SQL writer services. When a full backup is triggered based on the backup policy, Phoenix agent communicates with the SQL writer service using the VSS framework. The Phoenix agent executes a full scan of all the databases included in the backup. If your databases are getting backed up for the first time, the databases are backed up entirely. If your databases are not getting backed up for the first time, a full scan of the databases is executed but only the updates to your databases are backed up after deduplication is applied. When the backup job is successful, Druva Phoenix creates a snapshot (Restore Point) in your storage.

Understanding snapshots created using full backup

All snapshots created within the number of days specified under Retain Daily Snapshots for are retained. Suppose you have chosen to retain daily snapshots for 10 days. The full backup is scheduled to run on Wednesday, 12:00:00 PM PST every week.  Between February 1, 2017, and February 28, 2017, Wednesday falls on 1st, 8th, 15th, and 22nd. The full backup is triggered on February 1, 2017, and a snapshot is created at 4:00:00 PM when the job is successful. On February 8, 2017, another full snapshot is created at 3:00:00 PM. Since the daily snapshots are retained for 10 days, before February 11, 2017, 11:59:59 PM, the full snapshots created on February 1, 2017, and February 8, 2017, are retained. After February 11, 2017, 11:59:59 PM, the February 1, 2017 snapshot is retained based on your weekly, monthly, and yearly retention periods. 

Restoring a database from a snapshot created after a full backup

For example, you are restoring your database on February 12, 2017, at 11:00:00 AM. When you trigger a restore job from the Phoenix Management Console, you see the following snapshot options to restore your data from:

  • Hot
  • Warm
  • Cold

Druva Phoenix retains a snapshot in warm storage for 90 days. If the snapshot created on February  1, 2017, is the latest snapshot in the week ending February 5, 2017, 11:59:59 PM, it is retained based on the weekly retention period. The snapshots created on February 1, 2017, and February 8, 2017, fall under warm snapshots. You can directly restore your database using a warm snapshot.  A snapshot created in November, and retained based on the retention period can be considered as a cold snapshot for this example. You can see hot snapshots if you have configured Phoenix CloudCache. To read more about Phoenix CloudCache and hot snapshots, see Phoenix CloudCache.

Workflow

The full backup contains the following steps:

  1. Druva Phoenix checks if the agent is running. If the agent is not running, Druva Phoenix queues the backup request. The request is executed after Phoenix agent is up and running.
  2. Before the backup operation starts, agent checks if VSS Service and SQL Writer service are running or not. If the services are not running, then the agent attempts to boot these processes automatically.
  3. During the estimate phase, the agent fetches the database information from MS-SQL server using the Volume Shadow Copy API.
  4. The agent then determines the distinct filesets, which should be backed up. VSS then provides a snapshot.
  5. If you are backing up your databases for the first time, entire snapshot is backed up. If you are not backing up your databases for the first time, updated data, in terms of filesets, is copied from the snapshot and uploaded to the server. The backup is marked as successful after data is successfully uploaded to the server.

Additional information

  • The VSS snapshot is transient and is deleted automatically by the operating system. If the hard drive is not accessible, the VSS and MS-SQL server may take some time to recognize and update their internal file information.
  • Backup may fail if it is triggered during this time interval while database files are moved to the partition containing deleted files.
  • Backup jobs can be completed successfully after VSS and MS-SQL server update internal file information. But if some database files are moved to the deleted files partition and some other files are still available on the logical partition, the backup always fails. As a workaround, you have to clean this database manually.
  • The system database tempdb is never backed up.
  • During backup, database entities get backed-up in following order:
    • Database files: MDF, LDF and NDF files
    • Agent-specific metadata (json data)
    • VSS backup document (XML data)
    • SQL Writer metadata document (XML data)
    • Sentinel (json data)
  • On your server, if
    • DB1 has files at C:\Data
    • DB2 has files at C:\Data
    • DB3 has files at C:\Program Files\Data

The agent identifies C:\Data and C:\Program Files\Data as two filesets, and are uploaded sequentially. However, the files within a fileset are uploaded in parallel.

Differential backups

This is a Limited Availability draft of the documentation. This documentation is not final, and it will get updated until the General Availability of the feature.

The Phoenix agent uses the Microsoft VDI to perform differential backups of MS-SQL databases. The amount of time taken to scan the changed data using Microsoft VDI is lesser than the VSS method leading to speedier differential backups. When you run a differential backup, the Phoenix agent backs up only the databases that have changed since the last full backup. Druva Phoenix backs up the differential data and creates a snapshot in your storage. You can run a differential backup if a snapshot from the full backup already exists. In the absence of a snapshot from a full backup, the differential backup is converted into a full backup automatically.  For more information, see Scenarios when the SQL differential backups get converted to full backups.

Note:  When you click Backup Now, a differential backup is triggered. However, if your server is getting backed up for the first time, a Full Backup is initiated. A manual backup is not restricted by the specified bandwidth. A manual backup uses maximum bandwidth available.

 Important: For Druva Phoenix to use the Microsoft SQL Server VDI for differential backups, ensure that:

  • The MS-SQL agent on the SQL server is version 4.9.4-110537 or later.
  • A full backup is successful after the SQL agent upgrade.The differential backup after this full backup will use the VDI backup method.
  • A full backup is scheduled in your SQL backup policy. If your SQL backup policy only has differential backups, the differential backups will continue to use the Microsoft VSS method for backups.

Understanding snapshots created using a differential backup

A snapshot created using a differential backup works similar to a full backup job in the way that it creates a snapshot that you can use to restore your database. Since a differential backup job can be faster in execution in comparison to a full backup job, you can schedule multiple differential backups in between full backups.

Continuing from the previous example, let us assume that you have specified daily differential backups at 9:00:00 PM. Between February 1, 2017, and February 10, 2017, 10 differential snapshots are created. When you try to restore your database using snapshots on February 11, 2017, at 5:00:00 AM, you can see 12 snapshots (2 snapshots from the full backup and 10 snapshots from the differential backups) under warm snapshots. Differential snapshots are also retained based on the daily, weekly, monthly, and yearly retention periods.

The advantage of a differential backup is the backup job speed. A differential backup job is faster than full backup since the agent directly gets information about the updated database from the SQL server.

Restoring from a snapshot created using a differential backup

If you are restoring your database on February  13, 2017, at 11:00:00 AM,

  • The snapshots after differential backups on February 1, 2017, and February 2, 2017, are purged.
  • In the warm snapshots, you can see snapshots after differential backups created starting February 3, 2017, through February 12, 2017.
  • You can see snapshots created after full backup on February 1, 2017, and February  8, 2017.

Since all the snapshots above fall under warm snapshots, you can select any snapshot as a restore point, and use it to restore your database. However, when you select a snapshot created after a differential backup, Druva Phoenix uses a full backup snapshot created right before it. Typically, full backup snapshot created on February 1, 2017, is purged based on 10 day retention period. But when you select a differential snapshot created before February 8, 2017, for restore, Druva Phoenix requires the full backup snapshot created on February 1, 2017. Since there are differential backup snapshots that are retained and are tied to the February 1, 2017, snapshot, the February 1, 2017 snapshot is retained.

When you select a restore point that has a VDI differential backup snapshot and choose to Restore database files, the SQL agent creates a temporary database named Rst_<database name selected for restore>. The agent then uses the .mdf, .ldf, and .ndf files from the VSS full backup snapshot and attaches them to this temporary database. Finally, the agent runs SQL commands to restore the .bak data from the VDI differential backup snapshot over this temporary database. Once this process is successful, the SQL agent downloads the updated .mdf, .ldf, and .ndf files on the selected server and deletes the temporary database.

Note:

  • You can restore the .mdf, .ldf, and .ndf files to servers with SQL agent version 4.9.4-110537 and later. Servers with older agents will not be available in the Select Server dropdown in the restore settings while restoring database files via the VDI restore option.  
  • Older restore points that have VSS full and differential backups will restore database files (.mdf, .ldf, and .ndf files) directly without creating a temporary database (rst_DatabaseName).

Workflow

A differential backup contains the following steps:

  1. Druva Phoenix checks if the agent is running. If the agent is not running, Druva Phoenix queues the backup request. The request is executed after the Phoenix agent is up and running.
  2. The Phoenix agent initializes Microsoft VDI on the SQL server. The SQL server then freezes the I/O on the selected databases.
  3. The Phoenix agent then fetches the differential data (data changed since the last full backup) from the SQL server through the VDI interface.
  4.  Druva Phoenix uploads the differential data to the server. Once all the files have successfully uploaded to the server, the backup is marked successful.

Scenarios where Druva Phoenix converts SQL differential backups to full

Druva Phoenix converts differential backups to full backups, if: 

  • A differential backup of a database for which a full backup is not complete is attempted. 
  • A new database file is added to or deleted from a database since the last backup.
  • A database file is renamed or moved since the last backup.
  • A database was renamed.
  • Inconsistencies between the uploaded database files and its metadata are detected. 
  • The master database was included in the last full backup, and the path or name of the master database files changed since the last full backup.
  • Druva Phoenix cannot obtain details about data change from the Volume Shadow Copy Service.
  • A full backup fails, then the next differential backup will be converted to a full backup.
  • If a full backup is executed by Druva Phoenix MS-SQL agent and the second full backup is been executed by a third-party backup tool or MS SQL server. Then Phoenix agent can convert next differential backup to full backup. 
  • If a database is encountered as shrunk since last full/differential backup, Druva Phoenix converts the subsequent differential backups to full backups. 
  • Druva Phoenix cannot take a differential backup on a secondary node of an availability group. In such a case, Druva Phoenix runs a full backup. 
  • If a database is moved, deleted, or added to a backup set, Druva Phoenix converts the next differential backup for all the affected backup sets to full. 

Transaction log backups

Transaction log in MS-SQL server records all the updates to the servers. Druva Phoenix frequently backs up the transaction log based on the intervals you provide in the backup policy, and are triggered after a full or differential backup is complete. When Druva Phoenix backs up transaction logs, transaction logs are truncated on the MS-SQL server. If a full backup is not complete for a server even once, the transaction log backups are not triggered. Transaction logs provide a tighter restore point objective and are dependent on snapshots created using the full or differential backup. Log backups are not applicable for databases in simple recovery mode. 

Understanding log backup schedules

Backed up transaction logs are retained based on daily retention period. Weekly, monthly, and yearly retention policies are not applicable for log backups.

For example, you specify an interval 30 minutes for log backups. In the example above, the full backup is triggered on February 1, 2017 at 12:00:00 PM, and completes on February 1, 2017 4:00:00 PM. At 4:30 PM, a log backup is triggered. Subsequently, the transaction log is backed up every 30 minutes until 9:00:00 PM when differential backup kicks in.

Restoring from a transaction log

When you restore your database using a transaction log, you can:

  • Choose a point-in-time when a transaction occurred
  • Choose a marked transaction in the transaction log and restore your database to that point.
  • Choose a point-in-time when a transaction occurred and leave the database in standby mode

When you choose a point-in-time or a marked transaction, Druva Phoenix restores your database using a snapshot. After restoring your database using a snapshot, it applies transaction logs to your database up to the selected transaction. This lets you restore your database to a time between two snapshots, allowing a tighter restore point objective.

Workflow 

The following flowchart depicts the transaction log workflow:

new_log_backup_workflow.png

Limitations on transaction mark backup and restore for AG backup sets

Druva Phoenix does not back up transaction marks if the log backups are taken from any secondary nodes. 

MS­-SQL server does not replicate transaction marks related to the transaction logs on the secondary nodes for databases in availability group (AG). If you try to restore a transaction mark for an AG backup set from Druva Phoenix, you might or might not see transaction marks that were created on the MS-SQL server depending on whether the log backup happened from the primary or secondary node. 

MS-SQL server restore workflow

Database snapshot restore workflow

The following steps describe the restore job when you trigger a snapshot restore of your databases of the instances or AG.

Step Operation

1

You or another administrator initiates a restore. 

2

Druva Phoenix checks if the Phoenix agent is running. 

  • If the agent is running, Druva Phoenix executes the restore operation.
  • If the agent is not running, Druva Phoenix queues the restore request. The request is executed after the Phoenix agent on the MS-SQL server starts running.
3 Druva Phoenix validates the restore destination (original instance or another MS-SQL server). 

4

Druva Phoenix validates if the restore destination is not a drive. For example, a restore to D:\ fails. 

Note: Set a restore location to a subfolder, and not the drive, for example, D:\ThisFolder.  

5 Druva Phoenix validates if the instance to which restore is initiated is available. 
6 Druva Phoenix validates if the databases for restore are available. 
7 Druva Phoenix checks the free space available at the restore destination. 

8

Druva Phoenix starts the restore operation by identifying filesets for restore. Druva Phoenix sequentially downloads filesets to the restore destination. Within a fileset (which might contain data belonging to more than one database), Druva Phoenix performs a simultaneous download of files belonging to different databases. After the download of a fileset completes, Druva Phoenix downloads the next fileset (which might also contain data belonging to one or more databases) to the restore destination.

9

Druva Phoenix uses the following syntax for the restore: <destination path>\<snapshot>\<Request ID>\<Fileset>\<Actual file>. The <Request ID> folder uniquely identifies each restore request.

10

Additionally, Druva Phoenix also creates the database_files.txt file at D:\restore\<snapshot>\<Request ID>. This file contains details of how the database files are mapped to the database, and how the database is mapped to its instance in a Unicode format. 

11

At the location that you specified, Druva Phoenix restores the databases as rst_<Database Name>. However, if Druva Phoenix finds that rst_<Database Name> is already present at the location, it appends an incremental counter to the database name. For example, at the time of restoring database DB, if Druva Phoenix finds rst_DB from a previous restore operation, the database DB is restored as rst_DB_1. The counter increments by 1 for every occurrence of an existing restore dataset.
12 In case of restore to AG, Druva Phoenix repeats Step 9 on all the secondary nodes of the AG. Druva Phoenix backs up the database to the shared network location provided by you and the restored database is replicated on all the primary and secondary nodes of the AG. 

13

After the restore completes,

  1. If "Recovery mode" is selected, the database becomes active for the instance that you specified. 
  2. If "No recovery mode" is selected, the database appears as "Restoring" for the instance that you specified.
  3. If "Standby mode to allow restore of additional transaction logs" is selected, the database appears as Standby/ Read-Only for the instance that you specified. 
  4. If "Restore to Availability Group" is selected, the database appears as synchronized on all the nodes of the AG.

Point-in-time restore workflow

The following table depicts the point-in-time restore workflow using transaction logs:

Step Operation

1

You initiate a point-in-time restore.

2

 

Druva Phoenix checks if the Phoenix agent is running. 

  • If the Phoenix agent is running, Druva Phoenix runs the restore job.
  • If the Phoenix agent is not running, Druva Phoenix queues the restore job. The restore job is completed after the Phoenix agent starts running. 

3

Druva Phoenix validates the restore destination (Original, alternate, or availability group) and the location on the restore destination.

Note: Ensure that the location is not a drive. For example, C:\.  To restore a database, restore the database files to a sub-folder. For example, C:\DBFiles.

4 Druva Phoenix validates if the SQL Server instance is available for restore. If the restore job replaces the original database, Druva Phoenix also checks if the database is available for restore. 
6 Druva Phoenix checks the free space available for restore and starts the restore job by identifying filesets for restore. Druva Phoenix sequentially downloads filesets to the restore destination. Within a fileset (which might contain data belonging to more than one database), Druva Phoenix simultaneously downloads files that belong to different databases. After the download of a fileset completes, Druva Phoenix downloads the next fileset (which might also contain data that belongs to one or more databases) to the restore destination.
7 Druva Phoenix uses the following syntax for the restore: <destination path>\<snapshot>\<Request ID>\<Fileset>\<Actual file>. The <Request ID> folder uniquely identifies each restore job.

8

The Phoenix agent picks up the transaction logs from the restore location, and:

  • Picks the user-specified date and time (or the selected marked transaction)
  • Checks which mode is enabled for restore:
    • If Recovery mode is enabled, Druva Phoenix restores the database and leaves the database in the operational state (you cannot add more backup sets to it).
    • If No recovery mode is enabled, Druva Phoenix restores the database and leaves the database in a pending state that cannot be accessed. 
    • If Standby mode is enabled, it identifies the transaction closest to the date and time specified. Druva Phoenix restores the database changes up to the identified transaction using the transaction log. In addition, it downloads the log files containing the transactions after the point-in-time restore. 

If the original database is getting replaced, the Phoenix agent terminates all connections to the database and then restores it using the downloaded transaction logs. 

9 If the database is restored to an availability group, the Phoenix agent either restores the database to the specified shared network location and syncs the database to all the secondary nodes or uses the automatic seeding if available. 

After the restore completes: 

  • If Recovery mode is selected, the database appears as active for the instance that you specified. 
  • If No recovery mode is selected, the database appears as Restoring for the instance that you specified.
  • If Standby mode to allow restore of additional transaction logs is selected, the database appears as Standby/Read-Only for the instance that you specified. 
  • If Restore to Availability Group is selected, the database appears as synchronized on all the nodes of the AG.

Oracle database backup workflow using Phoenix Backup Store

Phoenix Editions: File:/tick.png Business File:/cross.png Enterprise File:/tick.png Elite

The Druva Phoenix backup workflow for Oracle is described below:

WelcomeOracleGraphics2x.png

Step Description
Step 1 An Oracle Database Administrator triggers the RMAN script with the name of the mount on the Phoenix Backup Store. The RMAN creates an Oracle RMAN backup and stores it on the mount. 

The Phoenix Backup Store creates a snapshot of the Oracle RMAN backup stored on the mount. 
Step 2 The Phoenix Backup Store creates a ZFS snapshot of the Oracle RMAN backup and applies a timestamp to the snapshot. 

The timestamp corresponds to the PUT request made to the Phoenix Backup Store after RMAN completes writing the Oracle RMAN backup to the backup mount. For more information, see Phoenix Backup Store API reference.
Step 3 Phoenix Backup Store uploads the snapshot to the Druva Cloud. This snapshot serves as a restore point.
After the snapshot is uploaded to the cloud, it is deleted from the Phoenix Backup Store.

Every time the Database Administrator runs the RMAN script, the RMAN creates an Oracle RMAN backup on the mount. The Phoenix Backup Store creates a new snapshot of every new Oracle RMAN backup that RMAN creates and stores on the mount and uploads the snapshot to the cloud creating a new restore point. 

RMAN can store backup data until sufficient storage is available on the Phoenix Backup Store.  If sufficient storage is not available, RMAN cannot store backups and the backup jobs fail. Ensure that you periodically remove Oracle RMAN backups from the the Phoenix Backup Store or increase storage capacity on it. 

Oracle database restore workflow using Phoenix Backup Store

Oracle_workflow_restore_1.png

Step Operations

Step 1

The administrator selects a snapshot and initiates a restore.

Step 2

The administrator can restore a snapshot to the original Phoenix Backup Store or an alternate Phoenix Backup Store. 

Step 3

The snapshot is unpacked and downloaded as an Oracle RMAN backup to a location on the Phoenix Backup Store. The Oracle RMAN backup download location on the Phoenix Backup Store is /mnt/restores/<backupmount_name>/<restore_job_id>/data where:

  • The mount-name is the name of the mount you selected to restore.
  • Job id is the ID of the restore job. You can get the job ID from the jobs page. 

Step 4

The snapshot location is mapped to the RMAN host so that RMAN can use data stored on it to restore databases to the Oracle instance. 

Step 5

The Database Administrator restores the Oracle RMAN backup to the Oracle instance.  

Oracle Direct to Cloud database backup workflow

The following diagram depicts the data flow at the time of backing up Oracle databases.

OracleBackupWorkflow.PNG

Step Operation

Step 1

A backup request is initiated and forwarded to the Druva Phoenix Oracle agent. Druva Phoenix checks if the Phoenix agent is running. 

  • If the agent is running, Druva Phoenix performs the backup operation.
  • If the agent is not running, Druva Phoenix performs the backup operation based on the type of backup job.
    • For a manually triggered backup job, Druva Phoenix fails the backup request.
    • For a scheduled job, Druva Phoenix waits until the expiry window of the backup request, else fails the backup request

Step 2

Druva Phoenix determines the type of backup.

If you or another administrator initiates the first backup, Druva Phoenix performs a full backup. All subsequent backups triggered by administrators are incremental backups. Druva Phoenix also performs archive log backups based on the settings configured to back up archive logs.

Step 3

Phoenix agent uses the configured backup settings to create corresponding RMAN scripts. Phoenix agent executes the RMAN script to create a snapshot.

Phoenix agent validates if snapshots are created successfully.

Step 4

Phoenix agent estimates the data files to back up.

Step 5

Phoenix agent backs up data using the Oracle RMAN and streams the deduplicated backup data directly to the Druva Cloud.

After the transfer completes, the agent deletes the Oracle snapshot.

Oracle Direct to Cloud database restore workflow

The following diagram depicts the data flow at the time of restoring Oracle databases.

RestoreWorkflowGA.png

Step Operation
Step 1 Administrator selects a snapshot and initiates a restore.

Step 2

Administrator can choose to restore database from a snapshot or to a point in time.

Step 3

Druva Phoenix determines the restore option selected by the administrator.

  • In case of the automated recovery, administrator can choose to restore the complete database to the original server or manually recover the database to the destination server.
  • In case of the manual restore, administrator must specify the destination server and restore location. 

Step 4

  • For automated recovery, Druva Phoenix automatically runs RMAN scripts to restore and recover your database.  When you select the entire database to restore, Druva Phoenix lets you restore the complete database automatically to the original Oracle server from where it was backed up.
     
  • For manual restore, the requested snapshot is unpacked and downloaded to the specified restore location on the Oracle server host. The backup download location on the local Oracle server host is /<Restore_location>/<Day-MMM-DD-Hour-Min-Sec-YYYY> where:

    The Restore_location is the name of the directory and Day-MMM-DD-Hour-Min-Sec-YYYY is the folder created to store the downloaded data and is derived from the snapshot that you specified to restore the database.

    The snapshot location is mapped to the Oracle server host and the DBA can now use RMAN commands to recover databases on the required Oracle server host.

VMware virtual machine backup workflow 

Phoenix Editions: File:/tick.png Business File:/cross.png Enterprise File:/tick.png Elite

Overview

Druva Phoenix performs backup on virtual machines based on the schedule defined in the backup policy, that virtual machine is a part of or an on-demand backup triggered from Phoenix Management Console. This involves the interaction of Druva Phoenix components and VMware components.

The following diagram depicts the data flow at the time of backing up virtual machines.

backup_workflow.png

Virtual machine backup workflow

Step Operation

Step 1

Virtual machine backup request is initiated based on,

  • Schedule defined in the backup policy.
  • Manual backup

Druva Phoenix forwards the backup request to the backup proxy pool.

  • Based on the load balancing algorithm, Druva Phoenix automatically identifies the backup proxy that will run the backup request.
  • If the identified backup proxy is busy, the backup request is queued and initiated when the backup proxy becomes free.

Step 2

  • In an environment where virtual machines are deployed on ESXi hosts managed by vCenter server, backup proxy contacts vCenter Server to locate the virtual machine and obtains its configuration.
  • In an environment where virtual machines are deployed on standalone ESXi hosts, backup proxy contacts ESXi host to obtain the virtual machine configuration.

Step 3

In case of application-aware backup: 

  1. Druva Phoenix injects a temporary binary inside the VM to perform SQL app-aware backup
  2. The binary is responsible for querying the SQL data and taking a VSS snapshot of the SQL data.

The backup proxy queries the ESXi hypervisor or the vCenter server to create VM snapshots that contain VMDK files and the VMX files of the virtual machines.  Ensure that enough storage is available on the local datastore for the VM snapshot.

The backup proxy uses:

Step 4

Backup proxy establishes a VDDK connection to the VM snapshot using a transport mode to read the VM data. 

Step 5

Backup proxy starts reading the virtual machine snapshot. 

Step 6

The backup proxy reads the virtual machine snapshot and prepares to send the backup data to Phoenix CloudCache (if configured) or Druva Cloud.

Step 7

Backup proxy transfers the deduplicated backup data to the Druva Cloud.

After the transfer completes, the backup proxy deletes the virtual machine snapshot.

VMware virtual machine restore workflow

The following diagram illustrates the restore workflow:

Restore_worflow.png

Step Operations
Step 1

Administrator initiates virtual machine restore. Druva Phoenix forwards the restore request to the backup proxy pool.

  • Based on the load balancing algorithm, Druva Phoenix automatically identifies the backup proxy that will fulfill the restore request.
  • If the identified backup proxy is busy, the restore request is queued and initiated when the backup proxy becomes free.
Step 2
  • Druva Phoenix performs a check to ensure that the restore location is not a Network-attached Storage (NAS).
  • In an environment where virtual machines are deployed on ESXi hosts managed by vCenter Server, backup proxy contacts vCenter server to locate the virtual machine.
  • In an environment where virtual machines are deployed on standalone ESXi hosts, backup proxy contacts ESXi host and locate the virtual machine.
Step 3

VDDK connection is established with the virtual machine with SSL transport mode.

Backup proxy checks if it is a full virtual machine restore or a VMDK file restore. Backup proxy contacts the virtual machine and establishes a write connection to restore virtual machine data.

  • For a full virtual machine restore:
    • Druva Phoenix deletes the virtual disks (VMDKs) of the existing virtual machine
    • Druva Phoenix creates a new virtual machine with an identical configuration (that is, the configuration of the virtual machine at the time of backup)

      Note: If new virtual disks (VMDKs) are present during the current restore operation but were not present during the backup operation, Druva Phoenix detaches these virtual disks (VMDKs). 

    • Druva Phoenix restores the virtual disks (VMDKs) of the virtual machine
    • Druva Phoenix does not change the name or any other configuration of the virtual machine
  • For a disk restore, Druva Phoenix creates a new virtual machine with minimum configuration (100 MB RAM, 1 CPU, 1 video card, and the disk to be restored) at the location specified, with the following syntax:
    <Name of the original virtual machine>_<counter>.

Note: For disk restore, create a minimum configuration virtual machine because VMware does not allow to create a disk without creating the virtual machine.

Step 4 Backup proxy obtains the virtual machine data from Druva Cloud.
Step 5

Restore operations starts.

Druva Phoenix checks if the restore completes successfully. 

  • If the restore completes successfully, a new virtual machine is available.

  • If the restore fails, Druva Phoenix deletes the newly-created virtual machine.

Step 6 For Microsoft SQL database (with application-aware backup), the application is restored.

Hyper-V virtual machine backup workflow

Phoenix Editions: File:/tick.png Business File:/cross.png Enterprise File:/tick.png Elite

Druva Phoenix backs up virtual machines based on the schedule defined in the backup policy, or if a backup is triggered from Phoenix Management Console. The backup workflow is explained below:

hyperV_backup_workflow-4.png

Virtual machine backup workflow

Step Operation

Step 1

Virtual machine backup request is initiated based on:

  • Schedule defined in the backup policy.
  • On-demand backup

Druva Phoenix forwards the backup request to the agent.

Step 2

Phoenix agent verifies that the VSS service is running. The Phoenix agent requests the VSS service to create a snapshot. If the VSS service is not running, Phoenix agent starts the VSS service and instructs VSS to create a snapshot.

Druva recommends that you enable Backup (volume snapshot) under Hyper-V Integration Services. If the Backup (Volume snapshot) is enabled, the VSS service can create a snapshot without interrupting services on the virtual machine.

Phoenix agent validates if snapshots are created successfully and initiates the backup job.
For  Windows Server 2008 and Windows Server 2008 R2 host:

  • If Druva Phoenix is backing up virtual machines that are stored on a clustered shared volume, then Druva Phoenix can backup only one virtual machine at a time. 
  • A hardware VSS provider is required if  you want Druva Phoenix to create snapshots for multiple virtual machines simultaneously on a single host and run parallel backup jobs. For information on how to configure Druva Phoenix so that it can use third party VSS providers, see How do I configure Druva Phoenix to use third party VSS providers?.
Note: Integration Services are available for virtual machines with Windows guest OS. However, Microsoft provides Integration Services for certain Linux distributions also. For more information, see: If integration services are not available for a virtual machine, Druva Phoenix cannot take a snapshot and backup fails.

On Windows Server 2016 or later, the Phoenix agent can back up virtual machines using the Resilient Change Tracking (RCT) feature if:

  • The Phoenix agent installed on the host is 4.7.5 or later, and
  • Virtual machine configuration version is 6.2 or later. If the virtual machine is hosted on a Hyper-V cluster, then the virtual machine cluster functional level must be level 9 or higher. 

The Phoenix agent can back up virtual machines using RCT on a Hyper-V host that meets the criteria above and:

  • Efficiently keep a track of what has changed on a virtual machine between backup jobs
  • Incremental backups will be faster

Note: The Phoenix agent can take virtual machine snapshots using the RCT feature if it is backing up virtual machines for the first time from a host that meets the criteria. The Phoenix agent continues to use VSS if snapshots of the virtual machines from a host exist that were created using VSS. However, if:

  • VSS snapshots exist from a host that meets the criteria above, and
  • You want subsequent backup jobs to use the RCT feature   

Upgrade the Phoenix agent on the host and change backup method to RCT.  

Step 3

Druva Phoenix determines the type of backup. 

  • If this is the first automatic backup, Druva Phoenix performs a full backup. 
  • For all subsequent backups, Druva Phoenix performs an incremental backup. 

 

Step 4

Agent estimates the data for backup

Step 5

Agent backs up the data based on the VSS provided snapshot

Next steps

If you want to configure Druva Phoenix for backup and restore, see:

To learn more, see:

Hyper-V virtual machine restore workflow

hyperV_restore_workflow-2.png

Step Operations

Step 1

Administrator initiates virtual machine restore. Druva Phoenix forwards the restore request to the Hyper-V server agent.

You can restore your virtual machine to the original location or an alternate location. Ensure that the Phoenix agent is activated and the destination Hyper-V server is registered with Druva Phoenix as a host. 

Step 2

Druva Phoenix checks if the Phoenix agent is running. If the agent is running, Druva Phoenix restores the virtual machine. If the agent is not running, the restore job is queued until the agent is ready for backup and restore. 

Step 3

Phoenix agent checks if the destination Hyper-V server has sufficient storage to restore the virtual machine.

Step 4

Phoenix agent checks if it is a full virtual machine restore or a virtual disk restore. Agent contacts the server and establishes a write connection to restore virtual machine data.

  • For a full virtual machine restore, Druva Phoenix creates a new virtual machine with an identical configuration (that is, the configuration of the virtual machine at the time of backup) at the similar location, with the following syntax: 
    For original location restore: <Name of the original virtual machine>_<counter>
    For alternate restore <user provided virtual machine name>_<counter>
  • For a disk restore, Druva Phoenix restores the disk on the location you select. 

Step 5

Druva Cloud sends the snapshot to the Hyper-V server agent.

Step 6

Restore operations start.

Druva Phoenix checks if the restore completes successfully. 

  • If the restore completes successfully, a new virtual machine is available.
  • If the restore fails, Druva Phoenix deletes the newly-created virtual machine.

Phoenix disaster recovery workflow 

Phoenix Editions: File:/cross.pngBusiness         File:/tick.png Enterprise     File:/tick.pngElite
(Purchase Separately)

Disaster recovery stages

The following table lists the different stages of the disaster recovery process.

For definitions of different terms and concepts used in DRaaS see, Disaster recovery concepts

Stage Description
Restore

With Phoenix DraaS, the Phoenix AWS proxy:

  • Reads the virtual machine backup data from the Druva Cloud
  • Replicates the virtual machine to an EBS volume
  • Creates an EBS snapshot of the EBS volume called a DR copy in your AWS account
  • Deletes the EBS volume
Failover

The Phoenix AWS proxy replicates the entire virtual machine the first time it creates a DR copy. Subsequently, it incrementally updates the DR copy based on the replication frequency specified in the DR plan. This DR copy replaces the copy that is present in your AWS account.  Phoenix AWS proxy maintains only the latest DR copy of a virtual machine. At the time of failover, the Phoenix AWS proxy:

  • Converts the available DR copy to an EBS volume
  • Injects drivers into this EBS volume that is required to boot up the EC2 instance
  • Starts the EC2 instance, in turn spinning up to production in minutes
Failback You can failback the EC2 instances (failed over) and recover the virtual machine with a single click in your virtualization infrastructure in a few hours after it has been recovered to your AWS account during failover.

The following diagram depicts the Phoenix DraaS workflow:

DR Failback Workflow.png

How DRaaS works

Druva’s DRaaS solution takes advantage of the backups of the data center to the Druva Cloud. The DR Backup site is deployed in the customer’s AWS account and since Druva Phoenix is also deployed on AWS, data transfer between the accounts in the same region is seamless.

First, the latest backup snapshot is copied into your AWS account and stored as EBS snapshots. The temporary EBS volume created for data transfer is deleted after taking a successful snapshot.

The same process is repeated for all VMDK disks attached to the protected VMs. 

But how is it happening, you might ask? The entity executing all these tasks is the Phoenix AWS proxy. The Phoenix AWS proxy moves the data from Druva S3 to the customer’s account but to make this transition happen, the EC2 instance running the Phoenix AWS proxy needs a set of permissions. These permissions are defined in the Druva role and policy added to the customer account during proxy deployment. 

 In a nutshell, this process is the data path from the primary data center to the backup site in the cloud. The frequency of the updates is configurable in Druva Phoenix and it should be set according to the required RPO.

For more information on DR plans and creating DR plans, see Disaster Recovery Plan.

Restore workflow

Let's discuss the DR restore workflow flow briefly and know what is happening during the process of copying data from Druva account to the customer account.

Restore_Workflow.png

  1. The Druva Cloud tells the Phoenix AWS proxy to copy the virtual machine backup data from S3 bucket in Druva Phoenix.
  2. The Phoenix AWS proxy then makes an API call to execute this command. 
  3. The data from S3 goes through the Phoenix AWS proxy to the EBS volume and the data path for this Phoenix AWS proxy is the Internet gateway.
    We introduce one more entity here, which is S3 endpoint. It ensures that the data coming from one account to another does not leave the AWS network.
  4. Once the data has been copied to the EBS volume, then through another API call, the Phoenix AWS proxy creates an EBS snapshot of the volume and deletes the volume itself.

Failover workflow

To ask what a failover is, is to ask what happens when disaster strikes and the primary data center becomes unavailable. Here’s what happens.

Failover_workflow.png

  1. First, an administrator triggers the failover from the Phoenix Management Console and Druva Cloud instructs the Phoenix AWS proxy to initiate the failover.
  2. The EBS snapshot is used to create an EBS volume. The Phoenix AWS proxy creates an EC2 instance in your AWS account. You can choose the EC2 instance type from the Phoenix Management Console or let Druva Phoenix automatically assign the instance type (recommended) when you configure the VM for DR. The EBS volume gets attached to the EC2 instance.
  3. Once the process has completed, EC2 instance is restarted and is ready to support its workload. The same process is repeated for all protected VMs. 
  4. The last step is to update the DNS servers to redirect the traffic to the IP addresses of the new EC2 servers. This can be achieved via post-boot scripts.

Druva Phoenix provides advanced orchestration capabilities allowing to decide on the failover sequence, creating dependencies between EC2s and adding scripts for execution during EC2 boot. An example of dependency would be an e-commerce Web server storing data in the database. It wouldn’t make sense to start Web EC2 before the database is available.

Druva DRaaS also allows for DR testing in a different VPC or subnet. 

Failback workflow

The starting point for failback is a freshly rebuilt primary data center and backup DR site containing data which needs to be transferred back to the primary site.

Failback_workflows.png

  1. The first step is to redeploy the Druva Phoenix backup proxy VM to establish communication with the Druva Cloud and get the backup configuration from the cloud. 
  2. In the next step, the backup proxy launches a template VM, which reaches out to the EC2 instance and get its configuration information – number of CPUs, memory size, number of disks, and so on. 
  3. Based on this information received, it attaches one or more VMDK disks and starts copying data from the EBS volumes to the VMDK disks. 
  4. Once the download is completed, the template VM is rebooted with the configuration parameters read from the EC2 instance. After that, the server is operational. The same process is repeated for all protected VMs. 
  5. The last step is to update the DNS to redirect the traffic back to the primary site.

 

Phoenix AWS proxy setup workflow 

Data backup with CloudCache deployment workflow 

Phoenix Editions: File:/cross.png Business File:/cross.png Enterprise File:/tick.png Elite

The following diagram illustrates how data flows during backup in a Phoenix CloudCache deployment.

CloudCache_BackupFlow.png

Step Description

Step 1

 

Phoenix agent backs up the server data according to the schedule defined in the backup policy. At the scheduled time, Druva Cloud initiates the backup request and forwards it to Phoenix agent.

Note: Phoenix CloudCache maintains a persistent connection with Druva Cloud.

Step 2

 

  1. Phoenix agent backs up the data to Phoenix CloudCache.
  2. Phoenix agent saves the metadata to the storage that Druva Cloud assigns for backup.

Step 3

 

As per the predefined schedule, Phoenix CloudCache synchronizes the backup data to the storage that Druva Cloud assigns. 

Note: Phoenix CloudCache establishes an on-demand connection with cloud storage. After a synchronization is complete, the connection with Druva Cloud storage is terminated. For the next synchronization operation, Phoenix CloudCache establishes a connection with the cloud storage that Druva Cloud assigns. 

Note: Administrators must configure the synchronization schedule and a bandwidth that Phoenix CloudCache can consume. For more information, see Configure Phoenix CloudCache.

Data restore with CloudCache deployment workflow

Phoenix Editions: File:/cross.png Business File:/cross.png Enterprise File:/tick.png Elite

The following diagram illustrates how data flows within the Druva Phoenix setup at the time of hot restore.

cloudcache_restore_workflow1.png

Step Description

Step 1

Druva Cloud initiates the restore request and forwards it to the Phoenix agent.

Step 2

 

  1. Phoenix agent fetches the metadata from the storage in Druva Cloud.
  2. Phoenix agent queries the Phoenix CloudCache to restore the data.

Note: If the connection to CloudCache is interrupted at the time of a backup, the Phoenix agent backs up data directly to the Druva Cloud. Since the deduplication data is available on the Druva Cloud, Phoenix agent requires a connection to Druva Cloud and CloudCache to restore data. Ensure that the Phoenix agent can connect to Druva Cloud and CloudCache. 

Ports and communication protocols for VMware

Ports and communication protocols for File server

Ports and communication protocols for Phoenix CloudCache