Predloženi blksnap mehanizam za kreiranje snimaka blok uređaja u Linuxu

Kompanija Veeam, koja proizvodi softver za backup i oporavak od katastrofe, predložila je blksnap modul za uključivanje u Linux kernel sa implementacijom mehanizma za kreiranje snimaka blok uređaja i praćenje promjena u blok uređajima. Za rad sa snimcima, pripremljeni su uslužni program komandne linije blksnap i biblioteka blksnap.so, koji vam omogućavaju interakciju sa modulom kernela putem ioctl poziva iz korisničkog prostora.

Svrha kreiranja modula je organiziranje sigurnosne kopije diskova i virtualnih diskova bez prekida rada - modul vam omogućava da snimite trenutno stanje cijelog blok uređaja u snimku, pružajući izolirani dio za sigurnosnu kopiju koji ne ovisi o tekućim promjenama . Važna karakteristika blksnap-a je mogućnost istovremenog kreiranja snimaka za nekoliko blok uređaja odjednom, što omogućava ne samo da se osigura integritet podataka na nivou blok uređaja, već i da se postigne konzistentnost stanja različitih blok uređaja u rezervnoj kopiji.

Za praćenje promjena u podsistemu blok uređaja (bdev), dodana je mogućnost pričvršćivanja filtera koji vam omogućavaju presretanje I/O zahtjeva. blksnap implementira filter koji presreće zahtjeve za pisanje, čita staru vrijednost i sprema je u zasebnu listu promjena koja određuje stanje snimka. Ovakvim pristupom logika rada sa blok uređajem se ne mijenja, snimanje u originalni blok uređaj se izvodi kako jeste, bez obzira na snimke, što eliminira mogućnost oštećenja podataka i izbjegava probleme čak i u slučaju nepredvidivih kritičnih grešaka. u blksnap i prelivanje prostora dodijeljenog za promjene.

Modul vam također omogućava da odredite koji su blokovi promijenjeni između posljednjeg i bilo kojeg prethodnog snimka, što može biti korisno za implementaciju inkrementalnih sigurnosnih kopija. Za spremanje promjena, u odnosu na stanje snimka, proizvoljan raspon sektora može se dodijeliti na bilo kojem blok uređaju, što vam omogućava da spremite promjene u zasebne datoteke unutar FS-a na blok uređajima. Veličina područja za pohranjivanje promjena može se povećati u bilo kojem trenutku, čak i nakon kreiranja snimka.

Blksnap je baziran na kodu veeamsnap modula, koji je dio Veeam Agent for Linux proizvoda, ali je redizajniran za specifičnosti isporuke u glavnom dijelu Linux kernela. Konceptualna razlika između blksnap-a i veeamsnap-a je upotreba sistema filtera koji je priključen na blok uređaj, umjesto posebne komponente bdevfilter koja presreće I/O.

izvor: opennet.ru

Dodajte komentar