Architecture

Bacula Enterprise Amazon RDS Plugin is a Bacula File Daemon plugin that utilizes the Amazon Web Services APIs to interact with the Amazon Cloud (launching operations in the Amazon Cloud, retrieving data from it and feeding it at restore time). The plugin runs a Java Daemon which employs the official Amazon AWS SDK version 2.x built by Amazon.

All the information is obtained through secure and encrypted HTTPS queries to AWS from the File Daemon (and via the aforementioned Java Daemon), where the plugin is installed. The specific URLs will depend on the region and the operation being performed.

To get more information about AWS implied APIs, visit:

The metadata for each backed up element is stored in Bacula in JSON format, which encompasses database instances, cluster instances and snapshots of both elements. The files related to the database exports are stored in S3 and are temporarily downloaded to the host where the plugin operates, prior to being sent to the Storage Daemon.

The backup and restore processes use different parallelization techniques in order to maximize performance and overcome latency times when communicating with AWS Parallelization. Additionally, the plugin also supports the parallelization of multiple backup jobs.

Below, there is a simplified vision of the architecture of this plugin within a generic Bacula Enterprise deployment:

Amazon RDS Plugin Architecture

Amazon RDS Plugin Architecture

Go back to: Amazon RDS Plugin.