Gå till innehållet

Remote Storage

Component Available in version
Organization v1.0

By default, zone file content is stored on the Organization Server's local disk. Enabling remote storage moves that content to an S3-compatible bucket instead. This is useful when local disk space is a constraint, or when storage needs to scale independently of the server itself. Remote storage is an optional plugin.

Prerequisites

  • An S3-compatible bucket.
  • Access credentials for that bucket.

The access credentials must be authorized for the following S3 permissions on the bucket:

Permission Purpose
PutObject Upload zone file content to the bucket
GetObject Download zone file content from the bucket
DeleteObject Delete zone file content from the bucket
ListBucket List the objects stored in the bucket
CreateBucket Create the bucket. Only needed if the bucket is not already created beforehand

Configuration

  1. Enable remote storage by setting remote_storage.enabled=true in main/config/server.config.
  2. Configure remote_storage.provider, remote_storage.endpoint, and remote_storage.bucket in the same file. See server.config for the full property list. Note that the bucket name must be unique per Organization — the main component's UUID is recommended, since it is already guaranteed unique. Optionally, set remote_storage.self_test_on_start to verify the connection to the bucket on every startup.
  3. Add the S3 access key and secret key to main/config/remote-storage-credentials.properties. See remote-storage-credentials.properties.
  4. Restart the main component for the configuration to take effect.

Example configuration

remote_storage.enabled=true
remote_storage.bucket=ex4mpl31-8d4f-4c9b-a2e3-7f5c1b9d3e6a
remote_storage.provider=SafeSpring
remote_storage.endpoint=s3.sto2.safedc.net
remote_storage.credentials=/config/remote-storage-credentials.properties
accessKey=EXMPL1234567890ABCD
secretKey=ExAmPlEsEcReTkEy1234567890abcdefghijkl