Solution proposée:
Vous avez une instance Amazon EC2, avec un magasin de blocs élastiques suffisamment grand pour contenir la totalité de l'image que vous souhaitez sauvegarder:
backup-host.yourdomain.com:
/mnt/EBS/my-desktop-backup/coreimage.dmg
/mnt/EBS/my-laptop-backup/coreimage.dmg
Où:
/dev/ebs-disk-001 -> /mnt/EBS/my-desktop-backup
/dev/ebs-disk-002 -> /mnt/EBS/my-laptop-backup
etc.
etc.
ou
backup-host.yourdomain.com:
/mnt/EBS/my-desktop-backup_coreimage.dmg
/mnt/EBS/my-laptop-backup_coreimage.dmg
Où:
/dev/ebs-disk-001 -> /mnt/EBS
La synchronisation de votre sauvegarde initiale prendrait beaucoup de temps, mais si vous utilisez rsync pour la synchronisation, vous pouvez éventuellement demander à l'image distante de s'adapter aux modifications apportées à votre image locale.
Une fois que cela est rattrapé, vous pouvez initier un instantané EBS du côté d'Amazon pour le volume EBS contenant votre image cryptée.
Rincez et répétez pour chaque période de sauvegarde + instantané que vous souhaitez sauvegarder sur le serveur distant, en tenant compte des éléments / exigences suivants:
- L'image cryptée doit être démontée.
- La copie d’image distante doit être synchronisée à 100% avec l’image locale non montée.
- La capture instantanée doit être effectuée avec le volume EBS distant synchronisé, les mémoires tampons du système de fichiers vidées et aucune modification en attente.
Grâce à cela, vous pourrez effectuer les sauvegardes incrémentielles à l'aide de la technologie cloud d'Amazon.
S3 a des limitations sérieuses, qui ne conviendraient pas à vos besoins, pour ce but particulier.
L’instance EC2, si elle est entièrement prise en charge par EBS, peut être fermée lorsque vous n’effectuez pas de synchronisation à distance. Ainsi, lorsque votre sauvegarde démarre, vous pouvez la faire démarrer via l'API EC2 d'Amazon et obtenir le nom dynamique ou l'adresse IP. Une fois qu'il est confirmé, il peut lancer la sauvegarde rsync. Une fois terminé, il peut arrêter l'image distante et initier une action de capture instantanée de volume Amazon EBS.
Modifier:
rsync effectue des différences de niveau de bloc / bloc pour les fichiers plus volumineux. Vous pouvez spécifier la taille du diff de bloc:
--block-size=SIZE
Vous pouvez également spécifier que le flux de données envoyé au serveur distant soit compressé, ce qui vous permet d'économiser du trafic.
Mises en garde sur S3 vs EBS:
Si la solution que vous utilisez ne prend pas en charge le fractionnement et la transmission parallèle de fichiers volumineux, Amazon S3 limite les données envoyées à moins de 400 Ko / s après une certaine taille.
J'utilise des sauvegardes différentielles rsync sur mes serveurs vers S3 en tant qu'archives compressées. Même avec des tailles de balles d'environ 500 Mo, S3 va étrangler. Pour résoudre ce problème, vous devez diviser le fichier que vous envoyez en plusieurs parties, sinon la sauvegarde sur S3 durera une éternité.
Alors qu’une instance EC2 avec des volumes EBS sera plus rapide et ne nécessitera pas de fractionner les fichiers, ce qui simplifie la sauvegarde et la restauration.