Skip to content
VDS · బ్యాకప్‌లు మరియు డిస్క్

టెస్ట్ రీస్టోర్: మీ బ్యాకప్‌లను ముందుగానే తనిఖీ చేయండి

ట్రయల్ రీస్టోర్ ఎలా నిర్వహించాలి, ఫలితంగా ఏమి నమోదు చేయాలి, మరియు నిజమైన విపత్తులో కాకుండా డ్రిల్స్‌లో మాత్రమే బయటపడే సాధారణ ఆశ్చర్యాలు ఏమిటి.

23 ఆగస్టు, 2026న నవీకరించబడింది

మీరు ఎప్పుడూ రీస్టోర్ చేయని బ్యాకప్ అనేది బ్యాకప్ కాదు — అది ఒక ఆశ మాత్రమే. త్రైమాసికానికి ఒకసారి గంట సమయం కేటాయించి ప్రాక్టీస్ రీస్టోర్ చేస్తే, ఆ ఆశ నిరూపితమైన వాస్తవంగా మారుతుంది.

ఏమి తనిఖీ చేయాలి

ఏదైనా సంఘటన జరగడానికి ముందు మీరు సమాధానాలు తెలుసుకోవాల్సిన మూడు ప్రశ్నలు:

  1. పూర్ణత్వం. ప్రారంభించడానికి అవసరమైన ప్రతిదీ బ్యాకప్‌లో ఉందా: డేటా, సెట్టింగ్‌లు, కీలు, సర్టిఫికెట్లు, షెడ్యూల్.
  2. చదవగలిగే స్థితి. ఆర్కైవ్ తెరుచుకుంటుందా, డేటాబేస్ డంప్ ఎటువంటి లోపాలు లేకుండా రీస్టోర్ అవుతుందా.
  3. సమయం. పూర్తి రీస్టోర్‌కు ఎన్ని గంటలు పడుతుంది. ఈ సంఖ్యను ముందుగానే తెలుసుకోవాలి, ఒత్తిడిలో ఉన్నప్పుడు కనుగొనకూడదు.

డ్రిల్ ఎలా నిర్వహించాలి

అత్యంత నిజాయితీ కలిగిన మార్గం ప్రొడక్షన్ మెషీన్‌పై కాకుండా వేరే మెషీన్‌పై చేయడం. ఒక నెల పాటు VDS-1 తీసుకోండి, దానిపై మొదటి నుండి రీస్టోర్ చేయండి, సమయం నమోదు చేయండి.

export RESTIC_REPOSITORY="sftp:backup@backup.example.com:/srv/restic"
export RESTIC_PASSWORD_FILE=/root/.restic-pass

restic snapshots
restic restore latest --target /restore
ls -la /restore

డేటాబేస్‌ను రీస్టోర్ చేయండి:

docker compose up -d db
gunzip -c /restore/var/backups/db.sql.gz | docker compose exec -T db psql -U postgres app
docker compose exec -T db psql -U postgres app -c "select count(*) from users;"

అప్లికేషన్‌ను ప్రారంభించి బ్రౌజర్‌లో తెరవండి — ఇది చివరి దశ. పేజీ తెరుచుకునే వరకు, రీస్టోర్ జరిగినట్లు కాదు.

మరింత తేలికైన ఎంపిక కూడా ఉపయోగకరమే: అదే మెషీన్‌పై వేరే కంటైనర్‌లోకి డేటాబేస్‌ను మాత్రమే రీస్టోర్ చేసి, డేటా ఉందో లేదో మరియు తాజాగా ఉందో లేదో నిర్ధారించుకోండి.

అన్‌ప్యాకింగ్ విజయవంతమైందో లేదో మాత్రమే కాకుండా, డేటా తేదీని కూడా తనిఖీ చేయండి. నమ్మదగిన విధంగా సృష్టించబడుతున్న బ్యాకప్ ఒక నెల క్రితం నుండి అవసరమైన డైరెక్టరీని చేర్చడం ఆపేసినా, స్నాప్‌షాట్ జాబితాలో పూర్తిగా సాధారణంగా కనిపిస్తుంది. టేబుల్స్‌లోని రికార్డుల సంఖ్యను మరియు తాజా ఫైల్‌ల టైమ్‌స్టాంప్‌లను పోల్చి చూడండి.

సాధారణంగా ఏమి బయటపడుతుంది

  • .env ఫైల్ మరచిపోతారు. డేటా ఉంటుంది, కానీ దానికి సంబంధించిన పాస్‌వర్డ్‌లు ఉండవు.
  • సర్టిఫికెట్లు మరచిపోతారు. సైట్ లోడ్ అవుతుంది కానీ HTTPS ద్వారా స్పందించదు.
  • షెడ్యూల్ మరచిపోతారు. అంతా పనిచేస్తుంది, కానీ బ్యాకప్‌లు ఇక సృష్టించబడవు — మరియు అది మీకు ఒక నెల తర్వాత తెలుస్తుంది.
  • ప్రారంభ క్రమం రాయబడి ఉండదు. డేటాబేస్‌కు ముందే అప్లికేషన్ ప్రారంభమై క్రాష్ అవుతుంది.
  • రిపాజిటరీ పాస్‌వర్డ్ పోయిన మెషీన్‌పై మాత్రమే ఉండింది. బ్యాకప్‌లు ఉన్నాయి, కానీ వాటికి యాక్సెస్ లేదు.
  • రీస్టోర్ రెండు గంటలకు బదులు పది గంటలు పడుతుంది. రిసీవర్ బ్యాండ్‌విడ్త్ లేదా డిస్క్ షెల్ఫ్, చూడండి డిస్క్ వేగం.

క్రమాన్ని రాసి పెట్టుకోండి

డ్రిల్ ఆధారంగా, ఒక చిన్న సూచనను రాసి మెషీన్ వెలుపల ఉంచండి:

  1. అదే లేదా పెద్ద టియర్ మెషీన్‌ను ఆర్డర్ చేయండి — ప్రొవిజనింగ్‌కు సుమారు ఒక నిమిషం పడుతుంది.
  2. Docker ఇన్‌స్టాల్ చేసి బ్యాకప్ నుండి /opt/myapp రీస్టోర్ చేయండి.
  3. డేటాబేస్ డంప్‌ను రీస్టోర్ చేసి, రికార్డుల సంఖ్యను తనిఖీ చేయండి.
  4. /etc/nginx మరియు సర్టిఫికెట్లను రీస్టోర్ చేసి, వెబ్ సర్వర్‌ను ప్రారంభించండి.
  5. డొమైన్‌ను కొత్త చిరునామాకు పాయింట్ చేయండి.
  6. crontab.txt నుండి షెడ్యూల్‌ను రీస్టోర్ చేయండి.
  7. తనిఖీ చేయండి: సైట్ తెరుచుకుంటుంది, లాగిన్ పనిచేస్తుంది, బ్యాకప్‌లు మళ్లీ సృష్టించబడుతున్నాయి.

అంశం 5 అత్యంత తక్కువ అంచనా వేయబడినది. DNS రికార్డులు తక్షణమే అప్‌డేట్ అవ్వవు, మరియు మీరు మైగ్రేషన్‌ను ఏమాత్రం పరిగణనలోకి తీసుకున్నా, రికార్డ్ TTLని ముందుగానే 300 సెకన్లకు తగ్గించాలి.

ఎంత తరచుగా

ప్రొడక్షన్ సేవలకు త్రైమాసికానికి ఒకసారి, మిగతా అన్నింటికీ ప్రతి ఆరు నెలలకు ఒకసారి. అదనంగా ఏదైనా పెద్ద మార్పు తర్వాత ఎప్పుడూ: కొత్త డేటాబేస్, కొత్త సేవ, డైరెక్టరీలను తరలించడం. డ్రిల్‌ను క్యాలెండర్‌లో పెట్టండి, లేకపోతే అది ఎప్పటికీ జరగదు.

బ్యాకప్‌లో ఏమి ఉండాలి — సరిగ్గా ఏమి బ్యాకప్ చేయాలి. ఎక్కడ ఉంచాలి — ఆఫ్‌సైట్ బ్యాకప్‌లు. ఒక సంఘటన ఇప్పటికే జరిగితే — డేటా పోయింది.