1
0
mirror of https://github.com/minio/docs.git synced 2025-07-30 07:03:26 +03:00

DOCS-888: prefix exclusion of versioning prevents replication (#893)

Closes #888 

# Summary

- MinIO requires versioning for replication
- We support excluding prefixes/folders in buckets selectively
- This prevents replication within those prefixes/folders

Also included in this ticket

- Added an image to the site replication page
- Fixed a broken SVG
- Minor tweaking of site replication page.

---------

Co-authored-by: Daryl White <53910321+djwfyi@users.noreply.github.com>
This commit is contained in:
Ravind Kumar
2023-06-23 13:19:45 -04:00
committed by GitHub
parent c7a9477286
commit 7a01ca72e6
6 changed files with 61 additions and 22 deletions

View File

@ -12,10 +12,21 @@ Site Replication Overview
Site replication configures multiple independent MinIO deployments as a cluster of replicas called peer sites.
.. figure:: /images/architecture/architecture-load-balancer-multi-site.svg
:figwidth: 100%
:alt: Diagram of a site replication deployment with two sites
A site replication deployment with two peer sites.
A load balancer manages routing operations to either of the two sites.
Data written to one site automatically replicates to the other peer site.
Site replication assumes the use of either the included MinIO identity provider (IDP) *or* an external IDP.
All configured deployments must use the same IDP.
Deployments using an external IDP must use the same configuration across sites.
For more information on site replication architecture and deployment concepts, see :ref:`Deployment Architecture: Replicated MinIO Deployments <minio-deployment-architecture-replicated>`.
Overview
--------
@ -72,7 +83,6 @@ After enabling site replication, identity and access management (IAM) settings s
After the initial synchronization of data across peer sites, MinIO continually replicates and synchronizes :ref:`replicable data <minio-site-replication-what-replicates>` among all sites as they occur on any site.
Site Healing
~~~~~~~~~~~~
@ -88,6 +98,17 @@ Any MinIO deployment in the site replication configuration can resynchronize dam
If one site loses data for any reason, resynchronize the data from another healthy site with :mc-cmd:`mc admin replicate resync`.
This launches an active process that resynchronizes the data without waiting for the passive MinIO scanner to recognize the missing data.
Synchronous vs Asynchronous Replication
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. include:: /includes/common-replication.rst
:start-after: start-replication-sync-vs-async
:end-before: end-replication-sync-vs-async
MinIO strongly recommends using the default asynchronous site replication.
Synchronous site replication performance depends strongly on latency between sites, where higher latency can result in lower PUT performance and replication lag.
To configure synchronous site replication use :mc-cmd:`mc admin replicate update` with the :mc-cmd:`~mc admin replicate update --sync` option.
Proxy to Other Sites
~~~~~~~~~~~~~~~~~~~~
@ -139,6 +160,14 @@ For :ref:`SSE-S3 <minio-encryption-sse-s3>` or :ref:`SSE-KMS <minio-encryption-s
You can achieve this with a central KES server or multiple KES servers (say one per site) connected via a central supported :ref:`key vault server <minio-sse>`.
Replication Requires Versioning
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Site replication *requires* :ref:`minio-bucket-versioning` and enables it for all created buckets automatically.
You cannot disable versioning in site replication deployments.
MinIO cannot replicate objects in prefixes in the bucket that you excluded from versioning.
Load Balancers Installed on Each Multi-Node Site
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@ -158,16 +187,6 @@ Use :mc:`mc replicate rm` on the command line or the MinIO Console to remove buc
Only one site can have data when setting up site replication.
All other sites must be empty.
Synchronous vs Asynchronous Replication
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. include:: /includes/common-replication.rst
:start-after: start-replication-sync-vs-async
:end-before: end-replication-sync-vs-async
MinIO strongly recommends using the default asynchronous site replication.
To configure synchronous site replication use :mc-cmd:`mc admin replicate update` with the :mc-cmd:`~mc admin replicate update --sync` option.
Tutorials
---------