Backup med rsync til egeneid remote backupmaskin
På alle Linux baserte maskiner finnes programmet rsync (remote synchronization). Det er et terminalbasert program som i sin enkleste form kopierer filer fra en lokal maskin til en remote maskin. Programmet har avansert funksjonalitet med mange konfigurasjonsmuligheter.
Anta vi vil gjøre backup av en filserver. Dataene på denne kildemaskinen skal kopieres over til en backupmaskin. For eksempel en Synology maskin. Man gjør først en initiell backup. Alle dataene kopieres fra filserveren over til Synology. Er det store mengder data kan en slik jobb ta lang tid. Å gjøre dette over internett kan være umulig da det kan ta uker. Å gjøre det over et kontornettverk tar mye kortere tid, anslagsvis timer. Fordi nettverket er raskere og også fordi transaksjonen ikke behøver å være kryptert. Den initielle backupen er utgangspunktet for påfølgende daglige inkrementelle backups.
Når den initielle backupen er gjort på kontornettverket flyttes Synology maskinen til en annen fysisk lokasjon. Der den skal stå permanent. Eksempelvis hjem til en ansatt. rsync backupjobben settes opp til å gå for eksempel en gang i døgnet. Nå gjøres inkrementelle backuper. Det vil si, bare endringer i dataene på filserveren kopieres over. Dette er mye mindre data enn den initielle backupen og kan fint gjøres over internett uten at det tar for lang tid. Alle slike transaksjoner gjøres kryptert.
Med mindre datamengder, gigabyte og ikke terrabyte, kan man gjøre den initielle backupen over internett. Det reduserer logistikk arbeid.
En Synology er velegnet som målmaskin fordi dette er enkle, stabile maskiner med enormt stor harddisk. Kostnaden per lagret gigabyte er lav. Også andre typer målmaskin er mulig. For eksempel en gammel PC satt opp med Linux.
For at rsync skal være brukervennlig og ha tilstrekkelig funksjonalitet må man lage et script som hånterer oppgaver som utsendelse av email til IT ansvarlig hver gang en backupjobb har gått slik at man vet om den har gått riktig eller feiler, oppsett for automatisk backup på bestemte tidspunkt, etc.
psdigital har et egenutviklet backupscript psbup.sh
for denne type backup.
Fordi originalen og backupen er plassert på to forskjellige geografiske lokasjoner er man beskyttet mot det meste, eksempelvis diskkrasj, tyveri, brann, oversvømmelse etc. Og selvsagt sletting av fil ved feiltakelse.
rsync følger med Linux maskiner og Linux-baserte maskiner som Synology. rsync er også på Apple Mac maskiner (som er basert på UNIX, opphavet til Linux). rsync er også på Windows maskiner, siden Win10 i form av WSL Windows Subsystem for Linux, eller via cygwin. For en introduksjon til rsync og Synology, se Synology rsync daemon og Synology rsync over SSH.
Med store mengder data kan man spare mange timer på å kjøre den initielle jobben ukryptert. En jobb som kryptert tar 24 timer tar rundt 6 timer ukryptert. Med store mengder data kan en initiell backup kryptert over internett ta uker.
En annen måte å gjøre den initielle backupen er å bruke en ekstern harddisk. Som koples til kildemaskinen for eksempel med USB. Man behøver da ikke flytte målmaskinen så logistikken blir enklere. En annen fordel er at man kan benytte samme eksterne harddisken som måldisk og da behøver målmaskinen ikke ha en stor intern harddisk. Den initielle backupen skjer da lokalt på kildemaskinen (filserveren) og ikke over et nettverk. Man kopler den eksterne harddisken til kildemaskinen. Alle dataene kopieres over til ekstern harddisk med rsync scriptet. Deretter fraktes den eksterne harddisken til bygningen der Synology målmaskinen står (eller en annen type målmaskin). Den eksterne harddisken koples til målmaskinen. Enten kan man først kopiere dataene fra den eksterne harddisken over til målmaskinen og de påfølgende inkrementelle backupene går da til målmaskinens interne harddisk. Eller, eksempelvis hvis målmaskinens interne harddisk ikke er så stor, går de påfølgende inkrementelle backupene til den eksterne harddisken som man da har koplet permanent til målmaskinen.
Man kan potensielt benytte en gammel PC som målmaskin. For eksempel satt opp med Linux operativsystem. Et slikt scenario har lav kostnad da gamle PCer ofte er nesten gratis. Og operativsystemet Linux er som kjent gratis.
Fordeler med denne måten å ta backup på:
- Man har hele tiden full kontroll på egne data. Alt lagres på egne maskiner, istedenfor i en skyløsning, egentlig bare et annet ord for datasenter, der det er uoversiktlig hvor dataene lagres geografisk, hvem som har tilgang, osv.
- Restore av store mengder data kan gjøres raskere. Restore av store mengder data tar lang tid dersom dataene skal lastes ned over internett. Med denne måten å ta backup på kan man dra hjem til den som har backupen stående hos seg, hente maskinen eller den eksterne harddisken, dra tilbake til kontoret og gjøre restore på det lokale nettverket (eller over en USB-tilkopling). Ved restore av store mengder data er dette en betydelig fordel. Og noen ganger eneste mulighet, fordi ellers kan det ta ukevis. Alternativt må sky-leverandøren preparere en ekstern harddisk med dataene og sende denne med et budfirma. Som i ytterste konsekvens kan bety at kundens firma får dager med nedetid.
- Ved lagring av sensitive data kan det være juridiske restriksjoner på hvor dataene kan lagres geografisk. Slike hensyn kan være enklere å ivareta når man selv eier maskinene.
- Ingen kostnad for leie av skyløsning.
- Med mindre datamengder kan man benytte en målmaskin psdigital disponerer.
Bakdeler med denne måten å ta backup på:
- Mer komplisert og tidkrevende å sette opp.
- Restore av data over internett er mer komplisert. Eksempelvis restore av en fil som ble slettet ved en feiltakelse. Backup scriptet har ikke et brukervennlig GUI. Restore må gjøres av en IT kyndig person. psdigital eller en ressurs hos kunden.
- Man må skaffe egen backupmaskin. En Synology med stor harddisk koster i området 10 000 kroner. Man kan også benytte en nesten gratis Linuxmaskin.
- Man må ha et sted å ha målmaskinen. For eksempel hos en ansatt man stoler på.
- Årlig lisenskostnad for psbup scriptet.
Referanser
- Wikipedia rsync
https://en.wikipedia.org/wiki/Rsync