Ettevõtte varundamine
Ettevõtte administraatorid ja omanikud avavad oma ettevõtte veebirakenduses ja valivad Varud. Nad saavad taotleda varundeid, alla laadida ZIP-faile ja haldada oma varundamisserveri API-vid. See eksport ei ole mobiilirakenduses saadaval.
Ulatus ja piirangud
Varu sisaldab ettevõtte tavalisi projekti vestlusi, sealhulgas arhiveeritud vestlusi, sõnumitega, reaktsioonidega, vestluskortidega ja nendega seotud üleslaaditud lisanditega. See hõlmab ka projekti ja vestluse metaandmeid, osalejate nimesid ja nendes vestlustes avaldatud ettevõtte dokumente. Ettevõtte administraatorid ja omanikud saavad varundada ettevõtte vestlusi, millele nad isiklikult ei ole liitunud.
Otse sõnumid, privaatmärkused, isiklikult nähtavad teenused, ettevõtete vahelised vestlused ja isiklikud mustandid on välistatud. Ettevõtte Drive'i ja välislingide sisu jääb selle vestluseksporti välja. Puuduvad seotud lisandid põhjustavad genereerimise ebaõnnestumise. ZIP on andmeksport; automaatne import tagasi Skavasse ei ole veel saadaval.
Kvoodad, inkrementaalsed varundused ja säilitamine
Iga ettevõte võib taotleda ühe täisvarunduse 7 päeva jooksul ja kaks inkrementaalset varundust 24 tunni jooksul. Need rullivad aknad algavad iga taotluse hetkel. Sama valmis faili uuesti allalaadimine ei kulu kvoodi. Ebaõnnestunud genereerimistööd ei loendata nende piirangute alla.
Iga inkrementaalne varundus sisaldab muutusi ja kustutusi viimase täielikult edastatud ja kontrollsumma kinnitatud varundusest alates. Ahel on A + B + C: A on täisvarundus, B sisaldab muutusi alates A-st ja C ainult edasisi muutusi alates B-st. Taastage olek, rakendades iga paketti järjestuses. Muutmata lisad viitavad failidele, mis on juba selles ahelas olemas.
Allalaadimised jäävad saadavaks 24 tunniks pärast genereerimise lõppu. Seejärel eemaldatakse ZIP-fail, ajalugu jääb alles. Hoidke täisvarundus ja kõik sellega seotud inkrementaalsed varundused kohalikult. Võrdlusolek jääb kasutatuks maksimaalselt 90 päevaks pärast täisvarundust; seejärel on vaja uut täisvarundust. Iga inkrementaalne varundus identifitseerib nii täisvarunduse kui ka selle otsese eelneva versiooni ID ja SHA-256 kaudu.
Ainult täielikult vastu võetud ja kinnitatud pakett muutub uueks eelnevaks versiooniks. Valmis, kuid kinnitamata inkrementaalne varundus blokeerib teise inkrementaalse varunduse, kuni see on kinnitatud või aegunud. Kui kinnitamata pakett aegub, algab järgmine katse viimase kinnitatud olekust ja sisaldab muutusi, mida pole veel varundatud. Kui kinnitatud osa puudub kohalikult, laadige see uuesti alla selle 24-tunnise saadavuse jooksul või alustage uut täisvarundust nädala piirangute kohaselt. Eelista üht jagatud varunduskausta ettevõtte kohta; sõltumatud kliendid peavad hoidma sama täielikku ahelat.
Loo API-avaldus
Sisesta jaotis API-avaldused nimi, näiteks „Ettevõtte NAS”, ja loo avaldus. See kuvatakse üks kord, aegub ühe aasta pärast ja saab igal ajal tühistada. Salvesta see oma varunduskeskkonna kaitstud saladuste hoidlasse. Avaldus kuulub ettevõttele ja saab ligipääsu ainult selle ettevõtte varundus-API-le. See töötab iseseisvalt selle looja hilisemast sisselogimisest.
Saada see HTTPS-i kaudu päises Authorization: Bearer YOUR_BACKUP_TOKEN. Hoida avaldusi eemal URL-idest, avalikest skriptidest ja logidest. Ainult ettevõtte administraatorid ja omanikud saavad avaldusi luua, loetleda ja tühistada.
Python: laadi alla täielik varukoopia ja inkrementaalsed uuendused
Laadi alla company_backup.py Pythoni klient ja aseta see oma skripti kõrvale. See nõuab Linuxil või macOS-il Python 3.10 või uuemat ning kasutab ainult standardraamatukogu. Määra SKAVA_BACKUP_TOKEN kaitstud protsessi keskkonda ja asenda 42 ettevõtte ID-ga veebirakenduse aadressist.
import os
from company_backup import BackupClient
client = BackupClient("https://chat.skava.io", 42,
os.environ["SKAVA_BACKUP_TOKEN"])
full = client.backup("full", "backups") # once every 7 days
# Later, up to twice in a rolling 24-hour window:
diff = client.backup("diff", "backups")
Kavandatud ülesanded saavad sama klienti otse käivitada:
python3 company_backup.py --company 42 --kind full --directory backups
python3 company_backup.py --company 42 --kind diff --directory backups
Klient taotleb genereerimise, küsib olekut, salvestab allalaadimise otse kettale, kontrollib suurust, SHA-256 ja ZIP sisu ning kinnitab vastuvõtu. Ta salvestab täisvarundid ja inkrementaalsed varundid eraldi failidena. Hoidke varjatud olekufaili selles kaustas: see sisaldab ahela ja jätkamise teavet. Enne uue inkrementaalse taotlemist kontrollib klient kõik eelnevad ZIP-failid. Pärast katkestamist korrake sama käsku. Sama ettevõtte ja sama kausta paralleelsed ülesanded on blokeeritud.
API voog ilma püsiva ühenduseta
- Päring:
POST /api/v1/companies/42/backupskoos{"kind":"full","request_id":"YOUR_UNIQUE_ID"}. Inkrementaalse jaoks määrakekindväärtuseksdiffja saatke oma kohalik täisvarundi ID väärtusenabase_idning viimane kinnitatud paketi ID väärtusenaparent_id. Vastus sisaldabjob.id. Korduse korral kasutage samarequest_id. - Oleku küsimine:
GET /api/v1/companies/42/backups/JOB_ID, umbes iga kümme sekundit. Genereerimine toimub taustal, kui olek onqueuedvõirunning. Ühendus ei jää päringute vahel avatuna. - Allalaadimine: Kui olek on
readyjaavailable: true, kutsuge väljaGET /api/v1/companies/42/backups/JOB_ID/download. Ainult see ülekandehoidab ühenduse avatuna. Kui ühendus katkeb, laadige kogu fail uuesti alla. - Kinnitage vastuvõtt: Kontrollige
job.bytesjajob.sha256. VõtkeX-Backup-Download-IdjaX-Backup-Receiptallalaadimise vastuse päistest. SaadakePOST /api/v1/companies/42/backups/JOB_ID/downloads/DOWNLOAD_ID/confirmkoos{"receipt":"RECEIPT","bytes":12345,"sha256":"SHA256"}. Ainult täielik ülekande ja vastav kinnitus loetakse edukaks.
GET /api/v1/companies/42/backups tagastab ajaloo, mis on leheküljendatud läbi next_offset. Tühistatud kvoodid või ajutised mahutavuspiirangud tagastavad HTTP 429 koos Retry-After. Varukoopiaid genereeritakse järjestikuliselt piiride sees, et samaaegsed öösel tööd ei koormaks rakendust liiga palju.
Allalaadimise ajaloo mõistmine
Ajalugu näitab täieliku või inkrementaalse tüübi, taotlusaja, aegumise, täieliku varukoopia, eelneva varukoopia ja iga allalaadimise katse koos edastatud baitidega. „Valmis” tuvastab genereeritud faili. „Edastatud” tähendab, et server saatis kõik baadid. „Kontrollsumma kinnitatud” tähendab, et klient kontrollis ja kinnitas täieliku vastuvõtu. Katkenud ja ebaõnnestunud katsed jäävad nähtavaks.
Veebirakendus kontrollib vastuvõtu brauseris enne salvestusdialoogi. See kinnitamine ei tõesta, et fail hiljem püsivalt teie arvutisse salvestati. Automaatsete varunduste korral kirjutab Pythoni klient faili kettale enne vastuvõtu kinnitamist. Veebirakenduse allalaadimised on piiratud 64 MiB-ga; kasuta suuremate arhiivide jaoks Pythoni klienti.