1 votes

Comment puis-je sauvegarder les données de mes clients ?

Si vous exploitez une application SaaS, ou si vous travaillez sur une telle application, j'aimerais avoir de vos nouvelles. Lorsque la sûreté et la sécurité des données de vos clients sont primordiales, comment les sécurisez-vous et les sauvegardez-vous ? J'aimerais connaître votre hébergeur principal (par exemple Heroku, Engine Yard, Rackspace, MediaTemple, etc.) et savoir qui vous utilisez pour votre sauvegarde.

Soyez aussi détaillé que possible - par exemple, un aperçu rapide de votre service et des données que vous stockez (des images par exemple), ce qui se passe avec les images lorsque l'utilisateur les télécharge (par exemple, elles vont sur votre VPS Linode, et sont postées sur le site pour qu'ils puissent les voir - puis elles sont automatiquement envoyées vers AWS ou ailleurs, puis une fois par semaine elles sont sauvegardées sur bande par le fournisseur d'hébergement géré, et vous les sauvegardez également à votre domicile/bureau).

Si vous pouviez également donner une idée du coût unitaire (par Go/par utilisateur/par mois) du stockage - en moyenne, je vous en serais très reconnaissant.

Je suis sur le point de lancer mon application et j'aimerais avoir plus d'informations sur les détails pratiques à prendre en compte.

Merci !

1 votes

On dirait une question pour ServerFault.com ! Où est le code ?

0voto

Jon Points 4161

Je m'occupe des opérations pour un service de collaboration en ligne relativement important. Nous avons près de 200 Go de données relationnelles dans des bases de données MySQL, et environ 20 To de contenu généré par les utilisateurs.

Nous possédons notre propre matériel de serveur, et nous avons donc quelques serveurs de stockage de fichiers pour le contenu généré par les utilisateurs. Ces serveurs exécutent MogileFS, qui est configuré pour répliquer 3 copies de chaque fichier à travers le cluster. Puisque nous avons des copies sur 3 serveurs différents, nous n'utilisons pas de RAID sur les serveurs de fichiers. Le stockage de 3 copies signifie que nous pouvons faire face à une panne de disque ou à l'arrêt d'un serveur pour la maintenance et que nous avons toujours 2 copies de chaque fichier.

Toutes les heures, nous effectuons des sauvegardes hors site avec un script maison. Le script recherche les nouveaux fichiers et effectue une sauvegarde sur un serveur hors site. Ce script conserve sa propre base de données indiquant exactement quels fichiers ont déjà été sauvegardés. (Nous pourrions simplement utiliser l'horodatage pour déterminer les fichiers à copier, mais cela ne nous permettrait pas de "recharger" les sauvegardes en cas de besoin. Nous pourrions aussi simplement vérifier sur le serveur distant la présence de chaque fichier, mais avec 150 millions de fichiers dans MogileFS, cela prendrait une éternité).

Nos sauvegardes à distance sont cryptées à l'aide d'une clé symétrique. C'est en fait assez élégant. Nous avons une seule clé principale de sauvegarde. La clé privée est stockée dans un coffre-fort, et la clé publique est disponible sur tous nos serveurs de fichiers. Les sauvegardes sont cryptées à l'aide de la clé publique maître. Cela signifie qu'elles peuvent toutes être décryptées avec la clé privée maître, mais même si nos serveurs sont tous compromis, l'attaquant ne pourra pas accéder aux sauvegardes cryptées.

Nous utilisons Backup Manager pour gérer les sauvegardes de nos bases de données MySQL et d'autres sauvegardes diverses du serveur. Backup Manager est génial : il gère tout automatiquement, comme le cryptage des sauvegardes et leur envoi hors site. Backup Manager effectue des sauvegardes incrémentielles des répertoires spécifiés sur les serveurs, et exécute mysqldump pour nos bases de données.

Vous pouvez même faire passer d'autres outils par Backup Manager -- par exemple, je teste Percona XtraBackup avec Backup Manager pour des sauvegardes MySQL plus rapides. (Techniquement, XtraBackup n'accélère pas les sauvegardes, il accélère les restaurations. Sans XtraBackup, il fallait presque une semaine pour restaurer notre base de données MogileFS de 40 Go. Il a été utile de régler MySQL, mais même dans ce cas, les performances de restauration n'étaient pas suffisantes. Je viens de commencer à tester XtraBackup, qui pourrait nous permettre de restaurer la base de données en quelques heures, et non en quelques jours).

Je recommande fortement l'utilisation de Backup Manager - il est ridiculement rapide à mettre en place, et gère tous les mécanismes d'établissement de la sauvegarde à distance. J'ai même commencé à l'utiliser sur deux de mes serveurs personnels, en stockant des sauvegardes cryptées sur Amazon S3. Jusqu'à ce que votre ensemble de données soit très important, Backup Manager devrait être capable de tout gérer pour vous, y compris la configuration du serveur, le code source et les données utilisateur. C'est automatique, crypté et très simple à utiliser.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X