S3 Content Store

Document created by resplin Employee on Jun 6, 2015
Version 1Show Document
  • View in full screen mode

Obsolete Pages{{Obsolete}}

The official documentation is at: http://docs.alfresco.com



Amazon Web Services


Project Description


This add-on module provides an alternative content-store that uses Amazon's Simple Storage Service (S3) as the persistent storage mechanism for Alfresco, allowing for virtually unlimited and inexpensive storage. Initially this will be supported for Enterprise customers with an Alfresco instance running on Amazon's Elastic Compute Cloud (EC2).

Versions supported are Alfresco Enterprise 4.1+.


Implementation


Using an Alfresco Module Package the connector supplies a new content store which replaces the default filesystem-based implementation for the standard and '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.

The content store utilises a single S3 bucket and all content will be stored in that location, within one of two directories


  • <bucket-root>/contentstore for the main content store
  • <bucket-root>/contentstore.deleted for the 'deleted' content store

The size of the local caching content store may be configured as necessary to limit its use to a maximum overall size or by files with a maximum file size, e.g..

# Maximum disk usage for the cache in MB
system.content.caching.maxUsageMB=51200
# Maximum size of files which can be stored in the cache in MB (zero implies no limit)
system.content.caching.maxFileSizeMB=0

By default the module configures the caching content store to use a maximum of 50GB of disk, with no limit on individual file sizes.


Installation


Install the S3 Connector AMP using the Alfresco Module Management Tool (MMT) or the apply_amps script. The connector is supplied in a single AMP file which should be applied to the Alfresco repository WAR file.

Add the following properties to your alfresco-global.properties file

s3.accessKey=xxx
s3.secretKey=xxx
s3.bucketName=xxx

If the bucket has not been created previously then the connector will attempt to create it. The name of the bucket must be unique within S3 and across all AWS users, otherwise an exception will be thrown.

By default the bucket will be created in the 'EU' region. You may set this to 'US' by setting the s3.bucketLocation property in your alfresco-global.properties file, e.g..

You may optionally override the following properties, shown with their default values as set by the module.

s3.bucketLocation=US

Other advanced configuration parameters are supported by the JetS3t library used by the S3 connector. Alfresco does not support setting these properties unless advised by Alfresco Support.


Troubleshooting


In the event of an error occurring the underlying cause should be logged in the alfresco.log file.

If you wish to view diagnostic information you may set the following log4j setting

 log4j.logger.org.alfresco.integrations.s3store=INFO

The JetS3t library also provides a wide range of information via their JMX instrumentation.

1 person found this helpful

Attachments

    Outcomes