Skip to content

Object Storage - Patch s3 compliancy #7983

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 20 commits into from
Jun 17, 2025
Merged
Show file tree
Hide file tree
Changes from 16 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -368,9 +368,9 @@ Suppose the source bucket, `region1-destination-bucket` and `region2-destination
> [!warning]
> Versioning must be activated in source bucket and destination bucket(s).

### Using the CLI
## Using the CLI

#### Create source and destination buckets
### Create source and destination buckets

The source bucket is the bucket whose objects are automatically replicated and the destination bucket is the bucket which will contain your object replicas.

Expand All @@ -386,7 +386,7 @@ $ aws s3 mb s3://my-source-bucket
$ aws s3 mb s3://my-destination-bucket
```

#### Activate versioning in source and destination bucket
### Activate versioning in source and destination bucket

```bash
$ aws s3api put-bucket-versioning --bucket <bucket_name> --versioning-configuration Status=Enabled
Expand All @@ -399,7 +399,7 @@ $ aws s3api put-bucket-versioning --bucket my-source-bucket --versioning-configu
$ aws s3api put-bucket-versioning --bucket my-destination-bucket --versioning-configuration Status=Enabled
```

#### Apply replication configuration
### Apply replication configuration

Using the AWS CLI, replication configuration is applied on the source bucket.

Expand Down Expand Up @@ -440,7 +440,61 @@ $ aws s3api put-bucket-replication --bucket <source> --replication-configuration
}
```

### Offsite Replication option in 3-AZ regions
### Using the web UI

#### Prerequisites
* a source and a destination bucket
* versioning **must** be activated on source **and** destination bucket

#### Apply replication configuration

Find your source bucket in the bucket listing.

Either open the menu and click on "Manage replication"

![replication_screenshot_1](images/source-bucket-menu-EN.png)


Or click directly on your bucket and click on "Manage replication".

![replication_screenshot_2](images/source-bucket-details-EN.png)


Choose "Add a replication rule".


![replication_screenshot_3](images/replication-rules-EN.png)


Specify a name for your rule to help identify it later. The name is required and must be unique within the bucket.

![replication_screenshot_4](images/replication-rule-creation-EN.png)

You can specify a prefix and/or tags to limit the scope of the objects to be replicated.

> [!warning]
> As a reminder, you cannot replicate delete markers if you are using tags to filter your objects.

Under **Destination**, select a destination bucket. The selected bucket must have versioning enabled and if object lock has been enabled on the source bucket then it also must be enabled on the destination bucket.
- By default, the objects will be replicated with the same storage class however, you can choose to replicate the objects to another storage class.
- If there are two or more rules with the same destination bucket, objects will be replicated according to the rule with the highest priority. The higher the number, the higher the priority.

Under **Status**, **Enabled** is selected by default. An enabled rule starts to work as soon as you save it. If you want to disable the rule at creation and activate it later, choose **Disabled**.

To finish, click on "Create the rule".

![replication_screenshot_5](images/replication-rules-success-EN.png)


#### Delete a replication rule

In the Replication rules management view, you can delete a rule from the menu.

![replication_screenshot_6](images/replication-rules-delete-EN.png)



## Offsite Replication option in 3-AZ regions

With Object Storage in a 3-AZ region, we have introduced a new option called **Offsite Replication**, which simplifies the replication process and automatically replicates your data to a remote site for greater resiliency with a one-click action in the OVHcloud Control Panel.
This feature is only available for primary Object Storage in a 3-AZ region (to know more about existing 1-AZ and 3-AZ regions, see [Endpoints and Object Storage geoavailability](/pages/storage_and_backup/object_storage/s3_location)) and is based on an OVHcloud auto-generated and managed replication rule configuration:
Expand All @@ -449,6 +503,8 @@ This feature is only available for primary Object Storage in a 3-AZ region (to k
- Objects stored in the replica bucket are stored in an **Infrequent Access** class and are billed differently. View pricing on [this page](/links/public-cloud/prices). This class is designed for less frequently accessed data and allow you to reduce your overall Object Storage bill together with Standard-class performance level. This said, if the destination bucket storage class doesn’t suit your needs, you can choose another approach and use the asynchronous replication feature and manage the replication rule configuration by yourself.
- The replica bucket and the replication rule configuration are then available for modification if needed.

### Offsite Replication Q&A

#### How can I access the option in the OVHcloud Control Panel?

When creating a new bucket/container in a **3-AZ region**, you will be asked if you want to activave or not the Offsite Replication option. If enabled, and because it relies on the asynchronous replication feature, the versioning will be automatically enabled too.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -365,9 +365,9 @@ Supposons que le bucket source, le bucket `region1-destination-bucket` et le buc
> [!warning]
> Le contrôle de version doit être activé dans le bucket source et le(s) bucket(s) de destination.

### Utilisation de la CLI
## Utilisation de la CLI

#### Créer les buckets source et destinataire
### Créer les buckets source et destinataire

Le bucket source est le bucket dont les objets sont automatiquement répliqués et le bucket destinataire est le bucket qui va contenir vos copies d'objet.

Expand All @@ -382,7 +382,7 @@ $ aws s3 mb s3://my-source-bucket
$ aws s3 mb s3://my-destination-bucket
```

#### Activer le versioning dans le bucket de destination et la source
### Activer le versioning dans le bucket de destination et la source

```bash
$ aws s3api put-bucket-versioning --bucket <bucket_name> --versioning-configuration Status=Enabled
Expand All @@ -396,7 +396,7 @@ $ aws s3api put-bucket-versioning --bucket my-source-bucket --versioning-configu
$ aws s3api put-bucket-versioning --bucket my-destination-bucket --versioning-configuration Status=Enabled
```

#### Appliquer la configuration de réplication
### Appliquer la configuration de réplication

À l'aide de la CLI AWS, la configuration de réplication est appliquée au bucket source.

Expand Down Expand Up @@ -437,7 +437,60 @@ $ aws s3api put-bucket-replication --bucket <source> --replication-configuration
}
```

### Option Offsite Replication dans les régions 3-AZ
## Utilisation de la web UI

#### Prérequis
* un bucket source et un bucket de destination
* le versioning **doit** être activé sur le bucket source **et** le bucket de destination

#### Appliquer la configuration de replication

Trouver votre bucket source dans la liste des buckets.

Soit vous ouvrez le menu et cliquer sur "Gérer la réplication",

![replication_screenshot_1](images/source-bucket-menu-FR.png)

Soit vous cliquez directement sur votre bucket puis cliquez sur "Gérer la réplication".

![replication_screenshot_2](images/source-bucket-details-FR.png)


Sélectionnez "Ajouter une règle de réplication".

![replication_screenshot_3](images/replication-rules-FR.png)


Spécifiez un nom pour votre règle pour vous aider à l'identifier plus tard. Ce nom est requis et doit être unique au sein de votre bucket.

![replication_screenshot_4](images/replication-rule-creation-FR.PNG)


Vous pouvez spécifier un préfixe et/ou des tags pour limiter le champ d'application des objets à répliquer.

> [!warning]
> Pour rappel, vous ne pouvez pas répliquer les marqueurs de suppression si vous utilisez des tags pour filtrer les objets.

Sous **Destination**, sélectionnez un bucket de destination. Le bucket sélectionné doit avoir le versioning activé et si l'object lock a également été activé sur le bucket source, alors il doit aussi l'être sur le bucket de destination.
- Par défaut, les objets seront répliqués en conservant leur classe de stockage d'origine, cependant, vous pouvez choisir de les répliquer vers une autre classe de stockage.
- S'il existe plusieurs règles avec le même bucket de destination, les objets seront répliqués en fonction de la règle ayant la priorité la plus élevée. Plus le nombre est élevé, plus la priorité est élevée.

Sous **Status**, "Activé" est sélectionné par défaut. Une règle activée commence à fonctionner dès que vous l'enregistrez. Si vous souhaitez désactiver la règle lors de sa création et l'activer ultérieurement, sélectionnez **Désactivé**.

Pour terminer, cliquez sur "Créer la règle".

![replication_screenshot_5](images/replication-rules-success-FR.png)


#### Supprimer une règle de réplication

Dans la vue de gestion des règles de réplication, vous pouvez supprimer une règle à partir du menu.

![replication_screenshot_6](images/replication-rules-delete-FR.png)



## Option Offsite Replication dans les régions 3-AZ

Lorsque vous utilisez Object Storage dans une région 3-AZ, nous vous proposons une nouvelle option appelée **Offsite Replication** (réplication hors site), qui simplifie le processus de réplication en répliquant automatiquement vos données sur un site distant pour une plus grande résilience, et ce en un seul clic depuis l'espace client OVHcloud.
Cette fonctionnalité n'est disponible que pour les régions 3-AZ (pour en savoir plus sur les régions 1-AZ et 3-AZ, consultez notre page [Endpoints et géo-disponibilité de l'Object Storage](/pages/storage_and_backup/object_storage/s3_location)) et repose sur une configuration de réplication automatique et gérée par OVHcloud :
Expand All @@ -446,6 +499,8 @@ Cette fonctionnalité n'est disponible que pour les régions 3-AZ (pour en savoi
- Les objets stockés dans le bucket de destination (aussi appelé *replica bucket*) le sont dans une classe différente, nommée **Infrequent Access**, et sont facturés différemment. Consultez la tarification sur [cette page](/links/public-cloud/prices). Cette classe est conçue pour des données moins fréquemment consultées et vous permet de réduire vos coûts Object Storage tout en gardant des performances comparables à la classe Standard. Cependant, si la classe du bucket de destination ne convient pas, il est possible de privilégier une autre approche et d'utiliser la fonctionnalité de réplication asynchrone permettant de gérer l'ensemble des paramètres de la configuration.
- Le bucket de destination et la configuration de la règle de réplication peuvent ensuite être modifiés par l'utilisateur.

### FAQ Offsite Replication

#### Comment puis-je accéder à l’option depuis mon espace client ?

Lors de la création d'un nouveau bucket/conteneur dans une région **3-AZ**, un message vous demande si vous souhaitez activer ou non l'option Offsite Replication. Si elle est activée et qu'elle repose sur la fonctionnalité de réplication asynchrone, le versioning sera automatiquement activé également.
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -481,7 +481,7 @@ This guide lists the features supported by Object Storage.
<td>no</td>
</tr>
<tr>
<td rowspan="6">Web content</td>
<td rowspan="8">Web content</td>
<td rowspan="3">Static web site</td>
<td>put bucket website</td>
<td>yes</td>
Expand All @@ -498,7 +498,7 @@ This guide lists the features supported by Object Storage.
<td>yes</td>
</tr>
<tr>
<td rowspan="3">Pre-signed urls</td>
<td rowspan="4">Presigned urls</td>
<td>GET</td>
<td>yes</td>
<td>yes</td>
Expand All @@ -509,9 +509,20 @@ This guide lists the features supported by Object Storage.
<td>yes</td>
</tr>
<tr>
<td>HEAD</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<td>DELETE</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<td>Browser-based uploads</td>
<td>POST</td>
<td>no</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<td>Data analytics</td>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -481,7 +481,7 @@ Ce guide a pour objectif d'énumérer les fonctionnalités supportées par Objec
<td>no</td>
</tr>
<tr>
<td rowspan="6">Web content</td>
<td rowspan="8">Web content</td>
<td rowspan="3">Static web site</td>
<td>put bucket website</td>
<td>yes</td>
Expand All @@ -498,7 +498,7 @@ Ce guide a pour objectif d'énumérer les fonctionnalités supportées par Objec
<td>yes</td>
</tr>
<tr>
<td rowspan="3">Pre-signed urls</td>
<td rowspan="4">Presigned urls</td>
<td>GET</td>
<td>yes</td>
<td>yes</td>
Expand All @@ -509,9 +509,20 @@ Ce guide a pour objectif d'énumérer les fonctionnalités supportées par Objec
<td>yes</td>
</tr>
<tr>
<td>HEAD</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<td>DELETE</td>
<td>yes</td>
<td>yes</td>
</tr>
<tr>
<td>Browser-based uploads</td>
<td>POST</td>
<td>no</td>
<td>yes</td>
<td>no</td>
</tr>
<tr>
<td>Data analytics</td>
Expand Down