What are platform services?
StorageGRID platform services can help you implement a hybrid cloud strategy.
If the use of platform services is allowed for your tenant account, you can configure the following services for any S3 bucket:
-
CloudMirror replication: The StorageGRID CloudMirror replication service is used to mirror specific objects from a StorageGRID bucket to a specified external destination.
For example, you might use CloudMirror replication to mirror specific customer records into Amazon S3 and then leverage AWS services to perform analytics on your data.
CloudMirror replication is not supported if the source bucket has S3 Object Lock enabled. -
Notifications: Per-bucket event notifications are used to send notifications about specific actions performed on objects to a specified external Amazon Simple Notification Service™ (SNS).
For example, you could configure alerts to be sent to administrators about each object added to a bucket, where the objects represent log files associated with a critical system event.
Although event notification can be configured on a bucket with S3 Object Lock enabled, the S3 Object Lock metadata (including Retain Until Date and Legal Hold status) of the objects will not be included in the notification messages. -
Search integration service: The search integration service is used to send S3 object metadata to a specified Elasticsearch index where the metadata can be searched or analyzed using the external service.
For example, you could configure your buckets to send S3 object metadata to a remote Elasticsearch service. You could then use Elasticsearch to perform searches across buckets, and perform sophisticated analyses of patterns present in your object metadata.
Although Elasticsearch integration can be configured on a bucket with S3 Object Lock enabled, the S3 Object Lock metadata (including Retain Until Date and Legal Hold status) of the objects will not be included in the notification messages.
Because the target location for platform services is typically external to your StorageGRID deployment, platform services give you the power and flexibility that comes from using external storage resources, notification services, and search or analysis services for your data.
Any combination of platform services can be configured for a single S3 bucket. For example, you could configure both the CloudMirror service and notifications on a StorageGRID S3 bucket so that you can mirror specific objects to the Amazon Simple Storage Service, while sending a notification about each such object to a third party monitoring application to help you track your AWS expenses.
The use of platform services must be enabled for each tenant account by a StorageGRID administrator using the Grid Manager or the Grid Management API. |
How platform services are configured
Platform services communicate with external endpoints that you configure using the Tenant Manager or the Tenant Management API. Each endpoint represents an external destination, such as a StorageGRID S3 bucket, an Amazon Web Services bucket, a Simple Notification Service (SNS) topic, or an Elasticsearch cluster hosted locally, on AWS, or elsewhere.
After you create an endpoint, you can enable a platform service for a bucket by adding XML configuration to the bucket. The XML configuration identifies the objects that the bucket should act on, the action that the bucket should take, and the endpoint that the bucket should use for the service.
You must add separate XML configurations for each platform service that you want to configure. For example:
-
If you want all objects whose keys start with
/images
to be replicated to an Amazon S3 bucket, you must add a replication configuration to the source bucket. -
If you also want to send notifications when these objects are stored to the bucket, you must add a notifications configuration.
-
Finally, if you want to index the metadata for these objects, you must add the metadata notification configuration that is used to implement search integration.
The format for the configuration XML is governed by the S3 REST APIs used to implement StorageGRID platform services:
Platform service | S3 REST API |
---|---|
CloudMirror replication |
|
Notifications |
|
Search integration |
These operations are custom to StorageGRID. |
See the instructions for implementing S3 client applications for details on how StorageGRID implements these APIs.