7.2 KiB
Enable One-Way Server-Side Bucket Replication
minio
Table of Contents
The procedure on this page creates a new bucket replication rule for one-way synchronization of objects from one MinIO bucket to another MinIO bucket. The buckets can be on the same MinIO deployment or on separate MinIO deployments.
- To configure two-way "active-active" replication between MinIO
buckets, see
minio-bucket-replication-serverside-twoway
. - To configure multi-site "active-active" replication between MinIO
deployments, see
minio-bucket-replication-serverside-multi
Note
To configure replication between arbitrary S3-compatible services
(not necessarily MinIO), use mc mirror
.
Requirements
Replication requires all participating clusters meet the following requirements <minio-bucket-replication-requirements>
.
This procedure assumes you have reviewed and validated those
requirements.
For more details, see the Bucket Replication Requirements <minio-bucket-replication-requirements>
page.
Considerations
Click to expand any of the following:
Replication of Existing Objects
MinIO supports automatically replicating existing objects in a bucket.
MinIO requires explicitly enabling replication of existing objects
using the mc replicate add --replicate
or mc replicate update --replicate
and including the
existing-objects
replication feature flag. This procedure
includes the required flags for enabling replication of existing
objects.
Replication of Delete Operations
MinIO supports replicating S3 DELETE
operations onto the
target bucket. Specifically, MinIO can replicate versioning Delete Markers <versioning-workflows.html>
and the deletion of specific versioned objects:
- For delete operations on an object, MinIO replication also creates the delete marker on the target bucket.
- For delete operations on versions of an object, MinIO replication also deletes those versions on the target bucket.
MinIO requires explicitly enabling replication of delete operations
using the mc replicate add --replicate
or mc replicate update --replicate
. This procedure
includes the required flags for enabling replication of delete
operations and delete markers.
MinIO does not replicate delete operations resulting from
the application of lifecycle management expiration rules <minio-lifecycle-management-expiration>
.
See minio-replication-behavior-delete
for more complete
documentation.
Multi-Site Replication
MinIO supports configuring multiple remote targets per bucket or bucket prefix. For example, you can configure a bucket to replicate data to two or more remote MinIO deployments, where one deployment is a 1:1 copy (replication of all operations including deletions) and another is a full historical record (replication of only non-destructive write operations).
This procedure documents one-way replication to a single remote MinIO deployment. You can repeat this tutorial to replicate a single bucket to multiple remote targets.
Procedure
Configure One-Way Bucket Replication Using the MinIO Console <minio-bucket-replication-one-way-minio-console-procedure>
-
Create a New Bucket Replication Rule <minio-bucket-replication-one-way-minio-console-create-replication-rules>
Validate the Replication Configuration <minio-bucket-replication-one-way-minio-console-validate-replication-config>
Configure One-Way Bucket Replication Using the Command Line <minio-bucket-replication-one-way-minio-cli-procedure>
-
Create a Replication Remote Target <minio-bucket-replication-one-way-minio-cli-create-remote-targets>
Create a New Bucket Replication Rule <minio-bucket-replication-one-way-minio-cli-create-replication-rules>
Validate the Replication Configuration <minio-bucket-replication-one-way-minio-cli-verify-replication-config>
Configure One-Way Bucket Replication Using the MinIO Console
1) Create a New Bucket Replication Rule
2) Validate the Replication Configuration
Configure
One-Way Bucket Replication Using the Command Line mc
This procedure uses the aliases <alias>
SOURCE
and
REMOTE
to reference each MinIO deployment being configured
for replication. Replace these values with the appropriate alias for
your target MinIO deployments.
This procedure assumes each alias corresponds to a user with the
necessary replication permissions <minio-bucket-replication-serverside-oneway-permissions>
.
RELEASE.2022-12-24T15-21-38Z
mc replicate add
automatically creates the necessary replication targets, removing the
need for using the deprecated mc admin remote bucket add
command. This procedure only documents the procedure as of that
release.
1) Create a New Bucket Replication Rule
2) Validate the Replication Configuration
- Use the
mc replicate update
command to modify an existing replication rule. - Use the
mc replicate update
command with the--state "disable" <mc replicate update --state>
flag to disable an existing replication rule. - Use the
mc replicate rm
command to remove an existing replication rule.