Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
cloudproviders/s3compatible [2020_03_23 15:53] – [S3 Compatible APIs] steven | cloudproviders:s3compatible [2024_01_12 18:55] – steven | ||
---|---|---|---|
Line 1: | Line 1: | ||
# Adding an S3 Compatible Cloud Provider | # Adding an S3 Compatible Cloud Provider | ||
- | ##### Last updated on March 20, 2020. | + | ##### Last updated on Oct 24, 2023 |
- | Storage Made Easy is able to connect to many on-premise | + | The File Fabric |
You can then easily manage and access object storage through the File Fabric desktop and mobile clients. | You can then easily manage and access object storage through the File Fabric desktop and mobile clients. | ||
Line 8: | Line 8: | ||
## Choosing the Open S3 Provider | ## Choosing the Open S3 Provider | ||
- | {{ : | + | {{ : |
- | The first step is to choose to add the Open S3 provider to your SME Account | + | The first step is to choose to add the Open S3 provider to the File Fabric |
Line 22: | Line 22: | ||
## Choosing Buckets | ## Choosing Buckets | ||
- | {{ : | + | {{ : |
After you enter your authentication details and these are accepted the File Fabric will list any buckets that are available. You then choose which buckets you wish to manage through the File Fabric platform, and which will be the default bucket%%**%%. As part of this process you can choose to create a new default bucket if you wish. | After you enter your authentication details and these are accepted the File Fabric will list any buckets that are available. You then choose which buckets you wish to manage through the File Fabric platform, and which will be the default bucket%%**%%. As part of this process you can choose to create a new default bucket if you wish. | ||
Line 30: | Line 30: | ||
Once buckets have been selected the File Fabric creates a background task to index all the metadata, or if you have selected it, the content for indexing. This may take several minutes, or longer if you have millions of files. | Once buckets have been selected the File Fabric creates a background task to index all the metadata, or if you have selected it, the content for indexing. This may take several minutes, or longer if you have millions of files. | ||
- | %%**%% The default bucket is used for interactions with [[http:// | + | %%**%% The default bucket is used for interactions with Smart folders. |
Line 39: | Line 39: | ||
### Provider Options | ### Provider Options | ||
- | * **Cloud Refresh Mode** - Determines whether folders are refreshed on demand using real-time refresh. Use this option when objects may be changed outside of the File Fabric. | + | * **Cloud Refresh Mode** - Determines whether folders are refreshed on demand using real-time refresh. Use this option when objects may be changed outside of the File Fabric |
* **Use Server Side Encryption for Upload** - Enables SSE if supported by the provider. | * **Use Server Side Encryption for Upload** - Enables SSE if supported by the provider. | ||
Line 51: | Line 51: | ||
* **API Signature Version** - Choose Version 2 or Version 4. | * **API Signature Version** - Choose Version 2 or Version 4. | ||
- | * **Allow direct upload in client apps** - Allows clients to upload to the storage | + | * **Allow direct upload in client apps** - Allows clients to upload to the storage provider using pre-signed URLs. The provider endpoint must be accessible by the client device. |
* **Support Trash** - Older versions of files that are deleted (or updated depending on policy) are moved to trash rather than being deleted. | * **Support Trash** - Older versions of files that are deleted (or updated depending on policy) are moved to trash rather than being deleted. | ||
Line 57: | Line 57: | ||
### Synchronisation | ### Synchronisation | ||
- | Choose **Synchronize files** to refresh File Fabric metadata after changes have been made to the storage outside of File Fabric. | + | Choose **Synchronize files** to refresh File Fabric metadata after changes have been made to the storage outside of the File Fabric. |
Line 64: | Line 64: | ||
S3 Compatible Clouds that are known to work with the Open S3 provider include: | S3 Compatible Clouds that are known to work with the Open S3 provider include: | ||
- | * [[http:// | + | * [[:cloudproviders/backblaze]] - Backblaze Provider also available |
- | * [[http://cloud.google.com/ | + | * [[https://www.cloudian.com|HyperStore Object |
- | * OpenStack Swift | + | * [[https://www.constant.com/cloud/storage/|Constant |
- | * [[http://cloud.nifty.com/ | + | |
* [[https:// | * [[https:// | ||
- | * [[http://www.constant.com/cloud/storage/|Constant Cloud Storage]] | + | * [[https:// |
- | * [[http://business.tiscali.it/cloud/prodotti/storage|Tiscali | + | * [[https://www.exoscale.com/object-storage/|Exoscale Object |
+ | * [[http://open.eucalyptus.com/ | ||
+ | * [[http://cloud.google.com/products/cloud-storage.html|Google | ||
* [[http:// | * [[http:// | ||
- | * [[http://www.seeweb.it/|SeeWeb Storage | + | * [[https://www.hosteurope.de/produkte/Cloud-Storage|HostEurope]] |
- | * [[http:// | + | |
- | * [[http:// | + | |
* [[https:// | * [[https:// | ||
- | * [[http://www.hosteurope.de/produkte/Cloud-Storage|HostEurope]] | + | * [[https:// |
- | * [[http://dunkel.de/s3/|Dunkel | + | * [[https://www.netapp.com/data-storage/storagegrid/ |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * OpenStack Swift | ||
+ | * [[https://cloud.telekom.de/en|Open Telekom Cloud Storage]] | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
Once Clouds are added they can be used with the web file manager and also the [[https:// | Once Clouds are added they can be used with the web file manager and also the [[https:// | ||
- | Storage Made Easy also provides an S3 compatible interface that provides S3 access to any mapped clouds even if they do not support the S3 API directly. If you arrived at this page looking for this, please see [[s3compatibleapi|this Wiki page]]. | ||
## Provider Requirements | ## Provider Requirements | ||
Line 87: | Line 95: | ||
### Restrictions | ### Restrictions | ||
- | The Open S3 provider doesn' | + | The Open S3 provider doesn' |
If the provider restricts an operation, and an error is returned to the File Fabric, an error will be returned to the client application. | If the provider restricts an operation, and an error is returned to the File Fabric, an error will be returned to the client application. | ||
Line 93: | Line 101: | ||
### S3 Compatible APIs | ### S3 Compatible APIs | ||
- | The connector uses the following operations: | + | The connector uses the following |
* ListBuckets | * ListBuckets | ||
Line 102: | Line 110: | ||
* HeadObject | * HeadObject | ||
* PutObject | * PutObject | ||
+ | * Presign | ||
* GetObject (including range reads) | * GetObject (including range reads) | ||
* CopyObject (including x-amz-copy-source) | * CopyObject (including x-amz-copy-source) | ||
* DeleteObject | * DeleteObject | ||
- | * CreateMultipartUpload | + | * CreateMultipartUpload |
- | * CompleteMultipartUpload | + | * CompleteMultipartUpload |
- | * AbortMultipartUpload | + | * AbortMultipartUpload |
- | * UploadPart | + | * UploadPart |
- | * UploadPartCopy | + | * UploadPartCopy |
- | If MPU is not supported by the provider the connector will failover to non-MPU APIs. | + | Note: * If MPU is not supported by the provider the connector will failover to non-MPU APIs. |
### Signing API Requests | ### Signing API Requests | ||
Line 119: | Line 128: | ||
### Rate Limiting | ### Rate Limiting | ||
- | Some S3 compatible storage providers may limit the rate at which it processes requests. | + | Some S3 compatible storage providers may limit the rate at which it processes requests. |
For most recoverable errors the File Fabric will retry transparently three times before returning an error to the client. | For most recoverable errors the File Fabric will retry transparently three times before returning an error to the client. |