Configuring S3-Compatible Storage
You can set up Couchbase Enterprise Analytics to use an S3-Compatible storage solution. While AWS S3 is fully supported, third-party storage systems that implement the S3 API may also work with Enterprise Analytics. However, compatibility is not guaranteed for all S3-compatible solutions, as they must properly implement all required S3 operations.
To be compatible with Enterprise Analytics, S3-compatible object storage must have strong and global consistency for bucket updates and support the following operations:
| Enterprise Analytics has been certified with NetApp StorageGRID v11.9.0.6 or later. Other S3-compatible storage has not yet been verified. |
To use Enterprise Analytics with NetApp StorageGRID, you must:
Create a NetApp StorageGRID bucket
To create a bucket in StorageGRID that Enterprise Analytics uses for storing data:
-
Click Create Bucket in the StorageGRID UI.
-
Enter a name for the bucket, for example,
samplebucket. -
Select region
us-east-1or the region you want to use. -
Click Continue to create the bucket.
-
Click Create bucket.
-
In Bucket options tab, select All, this provides the highest guarantee of consistency.
Configure NetApp StorageGRID credentials
Create the Access key ID and Secret access key for the bucket in StorageGRID. For more information about creating access keys, see the NetApp StorageGRID documentation. Enterprise Analytics uses these credentials to access the bucket.
-
In the Create access key page, Do not set an expiration time is selected by default.
-
Click Create access key to generate the access key.
Configure S3 Access Credentials
You should place the credentials file in the .aws directory in the Couchbase user’s home directory.
For example, /home/couchbase/.aws/credentials & chmod’d to 600 as a security best practice.
Make sure to enter the credentials under the default profile.
For more information about how to set configuration and credential files in the AWS CLI, see the AWS documentation.
You can verify that each node was properly configured using AWS CLI:
aws s3 ls s3://bucket/prefix/ --endpoint-url https://storagegrid-endpoint.com
If your credentials have not been correctly configured, the CLI returns:
$ aws s3 ls s3://bucket/prefix/ --endpoint-url https://storagegrid-endpoint.com
Unable to locate credentials.
You can configure credentials by running "aws configure".
If the credentials are incorrect:
$ aws s3 ls s3://bucket/prefix/ --endpoint-url https://storagegrid-endpoint.com
An error occurred (InvalidAccessKeyId) when calling the ListObjectsV2 operation. The AWS Access Key Id you provided does not exist in our records.
If you correctly configured your credentials, you should see:
$ aws s3 ls s3://bucket/prefix/ --endpoint-url https://storagegrid-endpoint.com
PRE subdir/
Configure Enterprise Analytics
Use the Couchbase CLI or REST API to configure each Enterprise Analytics node to use the StorageGRID bucket as its object storage. Copy the Access key ID and Secret access key to the credentials file.
-
From the UI, choose S3-Compatible Storage.
-
Specify the following:
-
StorageGrid Endpoint: for example, http://mystoragegrid.example.com
-
Bucket Name:
samplebucket -
Bucket Region:
us-east-1 -
(Optional) Bucket Path Prefix: for example,
sampleprefix/
-
-
Make sure to check Force Path Style.
-
Click Save & Finish to save the configuration.