foundationdb/fdbclient/azure_backup
Chaoguang Lin 15523ff2e6
Extend url support for azure blob backup (#7776)
* Change to old url format azure://<endpoint>/<account>/<container>/

* Remove unnecessary dependency

* Add cmake_minimum_required  for azure backup cmake file

* Add the comments for new supported urls

* Add the host name resolution logic

* format files

* refactor part of the code

* Add documentation about Azure backup testing

* Add more comments, update the doc
2022-08-09 01:37:24 -07:00
..
BackupContainerAzureBlobStore.actor.cpp Extend url support for azure blob backup (#7776) 2022-08-09 01:37:24 -07:00
README.md Extend url support for azure blob backup (#7776) 2022-08-09 01:37:24 -07:00

README.md

Set up the Azure Backup Testing Environment

Make sure we built FDB with -DBUILD_AZURE_BACKUP=ON

Test

If you run BackupToBlob and RestoreFromBlob workloads with the paramter backupURL starts with azure://, the workload will backup to and restore from the azure blob storage. For example, BackupAzureBlobCorrectness.toml

Url format

The code now supports the following style urls:

  • azure://<account_name>.blob.core.windows.net/<container_name> (The formal url format for the blob service provided by the azure storage account)
  • azure://<ip|hostname>:<port>/<account_name>/<container_name> (Directly providing the endpoint address for the blob service, usually for local testing)

Local test environment

We need to use the Azurite to simulate an Azure blob service locally. Please follow the turtorial to start your service locally.

For example,

docker run -p 10000:10000 -v `pwd`:<path> -w <path> mcr.microsoft.com/azure-storage/azurite azurite-blob --blobHost 0.0.0.0 --blobPort 10000 --oauth basic --cert ./<...>.pem --key ./<...>.key.pem --debug ./<log_file_path>

Notice

  • To use uses https, we need to provide the certificates via --cert and --key The detailed turtorial to setup HTTPS. (We tested with the mkcert method)
  • To use Azure SDKs, we need to pass --oauth basic option
  • Please take a look at the difference between Azurite and Azure Storage