VPS फ़ेल हो सकता है, ग़लती से डिलीट हो सकता है या किसी बुरे अपडेट से टूट सकता है। एकमात्र सुरक्षा वह बैकअप है जिसे आपने टेस्ट किया हो। यह गाइड मुफ़्त टूल से सरल, स्वचालित, एन्क्रिप्टेड बैकअप सेट करती है।
3-2-1 नियम
अपने डेटा की 3 प्रतियाँ रखें, 2 अलग तरह के स्टोरेज पर, और 1 प्रति बिल्कुल अलग जगह पर। VPS के लिए इसका आमतौर पर मतलब है लाइव डेटा, एक लोकल स्नैपशॉट और किसी दूसरे प्रदाता या दूसरे देश में एक ऑफ़-साइट प्रति।
क्या बैकअप लें
- वेबसाइट फ़ाइलें और अपलोड (
/var/www)। - डेटाबेस, पहले फ़ाइल में डंप किए हुए (लाइव डेटाबेस फ़ाइलें कभी कॉपी न करें)।
- कॉन्फ़िगरेशन:
/etc/nginx,/etcके बदलाव, Docker Compose फ़ाइलें और वॉल्यूम। - Cron जॉब और कोई भी कस्टम स्क्रिप्ट।
ऑपरेटिंग सिस्टम आप मिनटों में दोबारा इंस्टॉल कर सकते हैं। जो दोबारा इंस्टॉल नहीं हो सकता, वह है आपका डेटा और आपकी सेटिंग्स।
एन्क्रिप्टेड, डीडुप्लिकेटेड बैकअप के लिए restic इस्तेमाल करें
sudo apt install -y restic
export RESTIC_REPOSITORY=sftp:backup@other-server:/backups/vps1
export RESTIC_PASSWORD_FILE=/root/.restic-pass
restic init
पासवर्ड फ़ाइल को एक लंबी रैंडम स्ट्रिंग से बनाएँ और उसकी एक प्रति कहीं सुरक्षित रखें। अगर आप यह पासवर्ड खो देते हैं, तो बैकअप नहीं खोले जा सकते। restic S3-संगत स्टोरेज को भी सपोर्ट करता है, इसलिए आप किसी भी ऑब्जेक्ट स्टोर पर पुश कर सकते हैं।
एक बैकअप स्क्रिप्ट
#!/bin/bash
set -e
export RESTIC_REPOSITORY=sftp:backup@other-server:/backups/vps1
export RESTIC_PASSWORD_FILE=/root/.restic-pass
mysqldump --single-transaction --all-databases | gzip > /var/backups/db.sql.gz
restic backup /var/www /etc /var/backups/db.sql.gz
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 6 --prune
इसे /usr/local/bin/backup.sh के रूप में सेव करें, एक्ज़ीक्यूटेबल बनाएँ और शेड्यूल करें:
sudo chmod +x /usr/local/bin/backup.sh
echo "30 3 * * * root /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1" | sudo tee /etc/cron.d/backup
रिस्टोर का परीक्षण करें
restic snapshots
restic restore latest --target /tmp/restore-test --include /etc/nginx
जिस बैकअप को आपने कभी रीस्टोर नहीं किया, वह सिर्फ़ एक उम्मीद है। तिमाही में एक बार टेस्ट करें, और कुछ भी बदलने के बाद हमेशा।
स्नैपशॉट मदद करते हैं, पर काफ़ी नहीं हैं
प्रदाता के स्नैपशॉट तेज़ होते हैं और जोखिम भरे बदलावों से पहले काम आते हैं, लेकिन वे उसी प्रदाता और अकाउंट के साथ रहते हैं। उन्हें एक सुविधा मानें और एक स्वतंत्र ऑफ़-साइट प्रति रखें।