PD-6 — Plan d'implémentation¶
📚 Navigation User Story
| Document | | | ---------- | -- | | 📋 [Spécification](PD-6-specification.md) | | | 🛠️ **Plan d'implémentation** | *(ce document)* | | ✅ [Critères d'acceptation](PD-6-acceptability.md) | | | 📝 [Retour d'expérience](PD-6-rex.md) | | [← Retour à storage](../PD-198-epic.md) · [↑ Index User Story](index.md)Objectif¶
Configurer la Cross-Region Replication de Paris vers Frankfurt avec RTC.
Choix techniques retenus¶
- AWS S3 CRR : réplication native, fiable
- RTC (Replication Time Control) : SLA 15 minutes garanti
- DEEP_ARCHIVE : coût minimal sur la replica
- Module Terraform : sous-module
frankfurt/dansworm_glacier
Architecture ciblée¶
Paris (eu-west-3) Frankfurt (eu-central-1)
┌─────────────────────────┐ ┌─────────────────────────┐
│ documents-cold-dev │──── CRR ──▶│ archives-frankfurt-dev │
│ (S3 Object Lock) │ 15 min │ (DEEP_ARCHIVE) │
│ COMPLIANCE mode │ SLA │ Object Lock replicated │
└─────────────────────────┘ └─────────────────────────┘
Découpage technique¶
Phase 1 : Bucket Frankfurt¶
- Création bucket avec Object Lock COMPLIANCE
- Configuration versioning (obligatoire pour CRR)
- Configuration encryption
Phase 2 : IAM Role CRR¶
- Role IAM pour S3 replication
- Policies source et destination
- Trust relationship
Phase 3 : Configuration CRR¶
resource "aws_s3_bucket_replication_configuration" "crr" {
bucket = aws_s3_bucket.documents_cold.id
role = aws_iam_role.replication.arn
rule {
id = "crr-to-frankfurt"
status = "Enabled"
destination {
bucket = aws_s3_bucket.archives_frankfurt.arn
storage_class = "DEEP_ARCHIVE"
replication_time {
status = "Enabled"
time {
minutes = 15
}
}
}
delete_marker_replication {
status = "Disabled" # WORM compliance
}
}
}
Phase 4 : Monitoring¶
- CloudWatch metrics CRR
- Alertes SNS si réplication en retard
Points de vigilance¶
- Delete marker replication DOIT être désactivée pour WORM
- Bucket Frankfurt DOIT avoir Object Lock activé AVANT la première réplication
- Logging désactivé sur Frankfurt (source a le logging)
Hors périmètre¶
- Réplication bidirectionnelle
- Failover automatique DNS