Linuxలో బ్లాక్ పరికరాల స్నాప్‌షాట్‌లను సృష్టించడం కోసం blksnap మెకానిజం ప్రతిపాదించబడింది

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

డ్రైవ్‌లు మరియు వర్చువల్ డిస్క్‌ల యొక్క అంతరాయం లేని బ్యాకప్‌ను సాధ్యం చేయడమే ఈ మాడ్యూల్ యొక్క ఉద్దేశ్యం. ఇది మొత్తం బ్లాక్ డివైస్ యొక్క ప్రస్తుత స్థితిని ఒక స్నాప్‌షాట్‌లో సంగ్రహించడానికి అనుమతిస్తుంది, తద్వారా జరుగుతున్న మార్పులతో సంబంధం లేకుండా బ్యాకప్ కోసం ఒక ప్రత్యేకమైన స్నాప్‌షాట్‌ను అందిస్తుంది. బహుళ బ్లాక్ డివైస్‌ల కోసం ఏకకాలంలో స్నాప్‌షాట్‌లను సృష్టించగలగడం blksnap యొక్క ఒక ముఖ్యమైన లక్షణం. ఇది బ్లాక్ డివైస్ స్థాయిలో డేటా సమగ్రతను నిర్ధారించడమే కాకుండా, బ్యాకప్‌లోని వివిధ బ్లాక్ డివైస్‌లలో స్థిరత్వాన్ని కూడా నిర్ధారిస్తుంది.

మార్పులను ట్రాక్ చేయడానికి, బ్లాక్ డివైస్ సబ్‌సిస్టమ్ (bdev) ఇప్పుడు I/O అభ్యర్థనలను అడ్డగించడానికి ఫిల్టర్‌లను జోడించడాన్ని సపోర్ట్ చేస్తుంది. blksnap రైట్ అభ్యర్థనలను అడ్డగించి, పాత విలువను చదివి, స్నాప్‌షాట్ స్థితిని నిర్వచించే ఒక ప్రత్యేక చేంజ్ లిస్ట్‌లో నిల్వ చేసే ఫిల్టర్‌ను అమలు చేస్తుంది. ఈ విధానం బ్లాక్ డివైస్ ఆపరేషన్ల లాజిక్‌ను కాపాడుతుంది; ఒరిజినల్ బ్లాక్ డివైస్‌కు చేసే రైట్‌లు, స్నాప్‌షాట్‌లతో సంబంధం లేకుండా యథాతథంగా నిర్వహించబడతాయి. ఇది డేటా కరప్షన్ (డేటా పాడయ్యే) అవకాశాన్ని తొలగిస్తుంది మరియు blksnapలో ఊహించని క్లిష్టమైన లోపాలు సంభవించి, మార్పుల కోసం కేటాయించిన స్థలం నిండిపోయిన సందర్భంలో కూడా సమస్యలను నివారిస్తుంది.

చివరి స్నాప్‌షాట్‌కు మరియు దాని ముందున్న ఏ స్నాప్‌షాట్‌కు మధ్య ఏ బ్లాక్‌లు సవరించబడ్డాయో నిర్ధారించడానికి కూడా ఈ మాడ్యూల్ మిమ్మల్ని అనుమతిస్తుంది, ఇది ఇంక్రిమెంటల్ బ్యాకప్‌లను అమలు చేయడానికి ఉపయోగకరంగా ఉంటుంది. స్నాప్‌షాట్ స్థితికి సాపేక్షంగా మార్పులను నిల్వ చేయడానికి, ఏదైనా బ్లాక్ డివైస్‌పై ఏకపక్ష శ్రేణి సెక్టార్లను కేటాయించవచ్చు, ఇది బ్లాక్ డివైస్‌లలోని ఫైల్ సిస్టమ్‌లో వేర్వేరు ఫైళ్ళలో మార్పులను సేవ్ చేయడానికి అనుమతిస్తుంది. స్నాప్‌షాట్ సృష్టించబడిన తర్వాత కూడా, మార్పు నిల్వ ప్రాంతం యొక్క పరిమాణాన్ని ఎప్పుడైనా పెంచవచ్చు.

Blksnap అనేది Veeam Agent for Linux లో భాగమైన veeamsnap మాడ్యూల్ ఆధారంగా రూపొందించబడింది, కానీ ప్రధాన Linux కెర్నల్‌లో అందించే ప్రత్యేకతలకు అనుగుణంగా దీనిని తిరిగి వ్రాయబడింది. I/Oను అడ్డగించే ప్రత్యేక bdevfilter కాంపోనెంట్‌కు బదులుగా, బ్లాక్ డివైజ్‌కు జతచేయబడిన ఫిల్టర్‌ల వ్యవస్థను ఉపయోగించడమే blksnap మరియు veeamsnap మధ్య ఉన్న భావనాపరమైన వ్యత్యాసం.

మూలం: opennet.ru