Use this information to install and configure the Content Connector for AWS S3 as an alternative content store.
Using an Alfresco Module Package (AMP), the connector supplies a new content store which replaces the default file system-based implementation for the standard and (optionally) the deleted content stores. The content store implementation is responsible for reading and writing content streams using the S3 API, however, in order to improve performance a local Caching Content Store is used which uses the local disk to cache recently-used content items.
Note: By default the module configures the caching content store to use a maximum of 50 GB of disk, with no limit on individual file sizes.
Starting from version 3.1, the S3 Connector module provides out of the box content store subsystems, which can easily be set up based on the most suitable configuration. The subsystem approach allows a more flexible use of the S3 content store, even in conjunction with existing content stores.
You have two options for installing the S3 Connector:
The steps for both options are very similar, but the second allows you to add S3MultipleBuckets
as a third alternative
for the S3 content store subsystem.
Prerequisites
There are a number of software requirements for installing Content Connector for AWS S3 version 3.1.
Important: You are unable to use the S3 Connector with the Glacier Connector if you are already using Amazon S3 with WORM storage. Amazon S3 with WORM storage requires that you use multiple buckets which is not supported by the Glacier Connector.
Alfresco requirements
- Alfresco Content Services 6.2 or later releases. See Alfresco Supported Platforms for more information.
Java requirements
- OpenJDK 11.
AWS related requirements
In order to use the S3 Connector, you will need an AWS account so that you can configure the S3 Connector successfully. This includes having an admin account to set up an S3 bucket, or have access to a bucket that’s already set up.
Note: The bucket name must be unique among all AWS users globally. See S3 bucket restrictions for more information on bucket naming.
Summary of features
If you want to use the functionality introduced in S3 Connector 2.0, you can configure the following:
- For IAM roles integration, see Configuring AWS Identity and Access Management.
- For KMS integration, see Configuring AWS Key Management Service.
If you want to use the functionality introduced in S3 Connector 2.1, you can configure the following:
- For S3 Connector on-premises configuration, see Configuring S3 Connector on-premises.
- For AWS Storage Classes configuration, see Configuring AWS Storage Classes.
If you want to use the functionality introduced in S3 Connector 3.1, you can configure the following:
- For S3 Connector content store subsystems configuration, see S3 Connector content store subsystems.
- For S3MultipleBuckets subsystem configuration, see Configuring multiple buckets using S3 Connector.
- For changes to the S3 Connector configuration, see Properties reference and Properties behaviour changes.
Installing
These steps describe how to install the Content Connector for AWS S3 to an instance of Alfresco Content Services.
The S3 Connector is packaged as an Alfresco Module Package (AMP) file.
Note: Ensure that you don’t start Alfresco Content Services before installing the S3 Connector AMP.
-
Go to Hyland Community.
-
Download the
alfresco-s3-connector-3.1.x.amp
file. -
Use the Module Management Tool (MMT) to install the AMP into the repository WAR (
alfresco.war
).For more information, see Using the Module Management Tool (MMT) and Installing an Alfresco Module Package.
-
Check that the configuration is set up correctly for your environment.
Note: For a new clean installation, we recommend that you choose a pure S3 content store. See S3 Connector content store subsystems and Properties reference for more details.
-
Starting from version 3.1, the S3 Connector has the deleted content store disabled by default, since this feature is already present in Amazon’s S3 service. For details on how to re-enable it, see S3 Connector deleted content store.
-
Start Alfresco Content Services.
Installing with S3MultipleBuckets subsystem
These steps describe how to install the S3 Connector to an instance of Alfresco Content Services, and how to
enable the S3MultipleBuckets
subsystem sample.
The S3 Connector is packaged as an Alfresco Module Package (AMP) file.
Note: Ensure that you don’t start Alfresco Content Services before installing the S3 Connector AMP.
-
Go to Hyland Community.
-
Download the
alfresco-s3-connector-3.1.x.amp
file. -
Use the Module Management Tool (MMT) to install the AMP into the repository WAR (
alfresco.war
).For more information, see Using the Module Management Tool (MMT) and Installing an Alfresco Module Package.
-
Unzip the
alfresco-s3-connector-3.1.x.amp
file. -
Copy the three sample files and rename them by removing the
.sample
extension.The sample files are located under:
alfresco-s3-connector-3.1.x.amp/config/alfresco/extension/...
They need to be copied to the relevant paths under the following folder:
$CATALINA_HOME/shared/classes/alfresco/extension/...
-
Copy and rename
s3-multiple-buckets-context.xml.sample
to:s3-multiple-buckets-context.xml
-
Copy and rename
subsystems/ContentStore/S3MultipleBuckets/S3MultipleBuckets/s3-mb-contentstore-context.xml.sample
to:subsystems/ContentStore/S3MultipleBuckets/S3MultipleBuckets/s3-mb-contentstore-context.xml
-
Copy and rename
subsystems/ContentStore/S3MultipleBuckets/S3MultipleBuckets/s3-mb-contentstore.properties.sample
to:subsystems/ContentStore/S3MultipleBuckets/S3MultipleBuckets/s3-mb-contentstore.properties
-
-
Check that the configuration is set up correctly for your environment.
-
Check the S3 Connector properties for store 1 (for example,
connector.s3.*
ors3.*
)See
s3-mb-contentstore.properties
for the complete list.The minimum properties required are:
-Dconnector.s3.accessKey=${AWS_ACCESS_KEY_ID} -Dconnector.s3.secretKey=${AWS_SECRET_ACCESS_KEY} -Dconnector.s3.bucketName=${S3_BUCKET_NAME} -Dconnector.s3.bucketRegion=${S3_BUCKET_REGION}
-
Check the S3 Connector properties for store 2 (for example,
connector.s3.store2.*
ors3.store2.*
)See
s3-mb-contentstore.properties
for the complete list..The minimum properties required are:
-Dconnector.s3.store2.bucketName=${S3_BUCKET2_NAME} -Dconnector.s3.store2.bucketRegion=${S3_BUCKET_REGION}
-
Set S3 multiple buckets as the default file content store subsystem:
filecontentstore.subsystem.name=S3MultipleBuckets
-
-
Check that any other configuration is set up correctly for your environment and specifically check the multiple bucket config.
-
Start Alfresco Content Services.