Cloud Resource

The Cloud Storage Driver must be installed in the Bacula Storage Daemon Plugin Directory to be used.

An example of a Cloud Resource might be:

Cloud {
    Name = AmazonCloud
    Driver = "Amazon"
    HostName = "s3.amazonaws.com"
    BucketName = "BaculaVolumes"
    AccessKey = "BZIXAIS39DYNER5FZ"
    SecretKey = "beesheeg7iTe0Gaex7aedie4aWohfuewohGaa0"
    Protocol = HTTPS
    UriStyle = VirtualHost
    Truncate Cache = No
    Upload = EachPart
    Region = "us-east-1"
    MaximumUploadBandwidth = 5MB/s
}

The explanation on how to read the directive format:

  • Name: Contains the linked name of the directive.

  • Description: Explains what the directive does.

  • Value: Indicates what type of value to provide (e.g., <type-specification>).

  • Data Type: Specifies the type of data expected.

  • Values: Lists specific acceptable values.

  • Required: If present, indicates that the directive must be set by the user, there is no default value.

  • Default: If present, indicates that the directive has a predefined value that does not need to be set by the user, cannot be removed.

  • Comment: Additional important notes.

  • Example: Shows a usage example.

Cloud Start of the Cloud directives.

Name

Description: The name of the Cloud resource.

Value(s): <name>

Data Type: string

Required: Yes

Comment: This is the logical Cloud name, and may be any string up to 127 characters in length.

Description

Description: The description is used for display purposes as is the case with all resource.

Value(s): <text>

Data Type: string

Driver

Description: This defines which driver to use.

Value(s): <driver-name>

Data Type: string

Required: Yes

Comment: It can be S3, Amazon, Azure, Google, Oracle or Swift. There is also a File driver, which is used mostly for testing.

Host Name

Description: Specifies the hostname to be used in the URL.

Value(s): <host-name>

Data Type: string

Comment: Each Cloud service provider has a different and unique hostname. The maximum size is 255 characters and may contain a TCP port specification. This directive is not used with the Azure driver.

Bucket Name

Description: Specifies the bucket name that you wish to use on the Cloud service.

Value(s): <bucket-name>

Data Type: string

Required: Yes

Comment: This name is normally a unique name that you create on the cloud service that identifies where you want to place your Cloud Volumes. The maximum bucket name size is 255 characters.

Access Key

Description: The access key is your unique user identifier given to you by your cloud service provider.

Value(s): <user-ID>

Data Type: password

Secret Key

Description: The secret key is the security key that was given to you by your cloud service provider.

Value(s): <security-key>

Data Type: password

Comment: It is equivalent to a password.

Protocol

Description: Defines the communications protocol to use with the cloud service provider.

Value(s): <HTTP | HTTPS>

Data Type: string

Comment: The two protocols currently supported are: HTTPS and HTTP.

Important

The correct default value is HTTPS.

Uri Style

Description: Specifies the URI style to use to communicate with the cloud service provider.

Value(s): <VirtualHost|Path>

Data Type: string

Comment: The two Uri Styles currently supported are: VirtualHost and Path. The default is VirtualHost.

Truncate Cache

Description: Specifies when Bacula should automatically remove (truncate) the local cache parts.

Value(s): <truncate-keyword>

Data Type: string

Default: TRUNC_NO

Comment: Local cache parts will only be removed if they have been uploaded to the cloud. The currently implemented values are:

  • No Do not remove cache. With this option you must manually delete the cache parts with the bconsole truncate cache command, or do so with an Admin Job that runs the truncate cache command. This is the default.

  • AfterUpload Each part will be removed just after it is uploaded. Note, if this option is specified, all restores will require a download from the Cloud.

  • AtEndOfJob With this option, at the end of the Job, every part that has been uploaded to the Cloud will be removed (truncated).

Upload

Description: Specifies when local cache parts will be uploaded to the Cloud.

Value(s): <upload-keyword>

Data Type: string

Default: UPLOAD_NO

Comment: The options are:

  • Manual / No Do not upload Volume cache parts automatically. With this option you must manually upload the Volume cache parts with a bconsole Upload command, or do so with an Admin Job that runs an Upload command. If not specified, this is the default.

  • EachPart With this option, each cache Volume part will be uploaded when it is complete i.e. when the next Volume part is created or at the end of the Job.

  • AtEndOfJob With this option all cache Volume parts that have not been previously uploaded will be uploaded at the end of the Job.

Maximum Concurrent Uploads

Description: The default is 3, but by using this directive, you may set it to any value you want.

Value(s): <number>

Data Type: positive integer

Default: 0

Comment:

Warning

The correct default value is 3.

Maximum Concurrent Downloads

Description: The default is 3, but by using this directive, you may set it to any value you want.

Value(s): <number>

Data Type: positive integer

Default: 0

Comment:

Warning

The correct default value is 3.

Maximum Upload Bandwidth

Description: The default is unlimited, but by using this directive, you may limit the upload bandwidth used globally by all devices referencing this Cloud resource.

Value(s): <speed>

Data Type: positive integer

Maximum Download Bandwidth

Description: The default is unlimited, but by using this directive, you may limit the download bandwidth used globally by all devices referencing this Cloud resource.

Value(s): <speed>

Data Type: positive integer

Region

Description: The Cloud resource can be configured to use a specific endpoint within a region.

Value(s): <region>

Data Type: string

Comment: This directive is required for AWS-V4 regions, ex: Region=. “eu-central-1”.

Transfer Priority

Description: When restoring directly a part from Glacier, this directive indicates the rehydration priority level.

Value(s): <High|Medium|Low>

Data Type: string

Comment: Values can be High, Medium or Low. Default is High. Those values match respectively Expeditive, Standard and Bulk transfers tiers within S3.

Transfer Retention

Description: Indicates the number of days the restored part must remain in S3’s Reduced Redundancy Storage (RRS), available for download into the cache.

Value(s): <time>

Data Type: time

Default: 5 days

Comment: At the end of this period the part will be removed from S3; the object will remain in Glacier. The minimum value is 1 day. The default is 5 days.

Blob Endpoint

Description: Specifies a custom URL for either the Azure Cloud blob (used by the Azure Driver) or the Amazon S3 blob (used by the Amazon Driver).

Value(s): <URL>

Data Type: string

Endpoint Suffix

Description: Specifies a custom URL postfix for Azure (used by the Azure Driver only).

Value(s): <URL-postfix>

Data Type: string

Example: EndpointSuffix=”core.chinacloudapi.cn”

Storage Class

Description: Specifies the storageClass for all parts transferred to the cloud, independently of the destination bucket class.

Value(s): <S3Standard|S3StandardIA|S3IntelligentTiering|S3OneZoneIA|S3GlacierInstantRetrievalS|3GlacierFlexibleRetrieval|S3GlacierDeepArchive|S3RRS>

Data Type: string

Comment: Values are used by the Amazon Driver only.

Go back to Storage Daemon Resource Types page.

Go back to the Technical Reference for Storage Daemon.

Go back to the main Technical Reference page.