Pritunl: cyflwr rheoli yn erbyn y proffil a gynhyrchwyd
Mae proffil cleient a chopi ffurfwedd ill dau yn edrych fel copïau wrth gefn. Cymharwch beth sy’n eiddo i MongoDB, beth sy’n eiddo i’r gwesteiwr, a sut i adfer Pritunl sy’n gweithio.
Mae un archif yn adfer defnydd Pritunl sy’n gweithio; mae’r llall yn adfer darlun ohono. Mae proffil cleient, copi o ffurfwedd y gwesteiwr a tharball o’r cyfeiriadur cyflwr i gyd yn edrych fel copïau wrth gefn, ac nid oes yr un ohonynt ar ei ben ei hun yn dod â’r sefydliadau, y defnyddwyr a’r diffiniadau gweinydd yn ôl y mae Pritunl yn eu rheoli. Y gwahaniaeth yw perchnogaeth: mae rhywfaint o gyflwr yn perthyn i gronfa ddata, rhywfaint i’r gwesteiwr, a rhywfaint yn allbwn a ailosodwyd. Dewiswch y haen anghywir ac mae’r adferiad yn cynhyrchu gweinydd sy’n dechrau, yn gwrando ac yn gwybod dim. Mae’r gymhariaeth hon yn gwahanu’r tair haen fel bod yr archif a gedwir gennych yn cyd-fynd â’r methiant rydych yn adfer ohono.
Mae dau wrthrych yn edrych fel copïau wrth gefn a dim ond un yn adfer y gwasanaeth
Mae proffil cleient a lawrlwythwyd yn cynnwys tystysgrif, allwedd a phen terfyn. Mae’n gyflawn ar gyfer y ddyfais honno ac yn ddiwerth fel cofnod o’r defnydd: nid yw’n cario sefydliadau, na defnyddwyr anabl, na llwybrau gweinydd, na chyfrifon gweinyddol. Mae adfer o ffolder o broffiliau yn rhoi cleientiaid na allant ddilysu yn erbyn unrhyw beth.
Mae copi o ffurfwedd y gwesteiwr yr un mor rannol. /etc/pritunl.conf yn dal gosodiadau ar lefel y gwesteiwr, gan gynnwys sut i gyrraedd y gronfa ddata, ac nid yw’n cynnwys yr gwrthrychau VPN eu hunain.
Beth sy’n eiddo i’r gronfa ddata a beth sy’n eiddo i’r gwesteiwr
Mae Pritunl yn cadw diffiniadau gweinydd, defnyddwyr, sefydliadau ac allweddi yn MongoDB. Y gronfa ddata honno yw’r awdurdod rheoli, ac mae pob ffeil OpenVPN a gynhyrchwyd ar y disg yn allbwn sy’n deillio ohoni. Mae newid a wneir yn uniongyrchol i ffeil a gynhyrchwyd yn goroesi tan yr ailosodiad nesaf ac yna’n diflannu, a dyna pam nad yw golygu ffeiliau amser rhedeg yn atgyweiriad parhaus. Mae’r un rheol yn berthnasol i lwybrau a rhyngwynebau effeithiol: maent yn disgrifio’r hyn a gynhyrchodd yr awdurdod rheoli, nid yr hyn y dylai ei gynhyrchu.
Mae’r gwesteiwr yn cyfrannu set lai ond na ellir ei throsglwyddo o werthoedd. Un ohonynt yw /var/lib/pritunl/pritunl.uuid, hunaniaeth y nod penodol hwnnw.
Mae’r hunaniaeth honno’n bwysicaf mewn clwstwr. Mae angen ei gofrestriad ei hun ar westeiwr cyfnewid yn lle clôn o UUID nod gweithredol, neu mae’r ddau yn ymladd dros yr un hunaniaeth. Cofnodwch y mapio rhwng pob gwesteiwr, ei UUID a’r gronfa ddata y mae’n pwyntio ati, oherwydd nid yw un dump cronfa ddata yn disgrifio pa osodiadau gwesteiwr a berthynai i ba beiriant. Mae fersiynau meddalwedd ac enwau pen terfyn cyhoeddus yn perthyn i’r un cofnod.
Gwnewch dump cyson, nid copi cyfeiriadur
Mae copïo cyfeiriadur data MongoDB tra bo’r gwasanaeth yn ysgrifennu yn cynhyrchu ffeiliau na fyddant o bosibl yn ffurfio cronfa ddata y gellir ei defnyddio. Defnyddiwch lwybr dump a gefnogir gan y gronfa ddata yn lle hynny, wedi’i redeg yn erbyn y topoleg sydd gennych mewn gwirionedd:
mongodump --uri="mongodb://127.0.0.1:27017/pritunl" --out=/var/backups/pritunl/db
sudo tar czf /var/backups/pritunl/host.tgz /etc/pritunl.conf /var/lib/pritunl/pritunl.uuid
Mae gwesteiwr annibynnol yn goddef y ffurf syml honno. Mae angen pwynt mewn amser cyson ar set o gopïau, ac mae gan dump sy’n seiliedig ar oplog ofynion nad oes gan ddump plaen. Mae’r weithdrefn a gefnogir yn dibynnu ar eich fersiwn a’ch topoleg MongoDB, felly peidiwch â’i chasglu o bresenoldeb cyfeiriadur data. Archifwch yr haen westeiwr wrth ymyl y dump, yn yr un rhediad, gyda’r un stamp amser.
Ymarferwch yr adferiad cyn i chi fod ei angen
Mae copi wrth gefn nad oes neb wedi’i adfer yn rhagdybiaeth. Adeiladwch y gwasanaeth mewn rhwydwaith ynysig, adferwch y dump a rhowch ffeiliau’r gwesteiwr yn ôl:
mongorestore --uri="mongodb://127.0.0.1:27017" --drop /var/backups/pritunl/db
sudo tar xzf /var/backups/pritunl/host.tgz -C /
Yna gwiriwch y gwrthrychau yn hytrach na’r broses: mewngofnodwch, cadarnhewch fod sefydliadau a defnyddwyr yn bresennol, a dechreuwch un cleient prawf yn erbyn diffiniad gweinydd rydych yn ei adnabod. Ataliwch y gwesteiwr a adferwyd rhag hysbysebu pen terfyn cynhyrchu neu dderbyn cysylltiadau go iawn nes bod cyfeiriadau a hunaniaethau yn fwriadol. Dyma hefyd lle’r ydych yn darganfod bod yr archif angen tystlythyrau a oedd yn byw yn unig ar y peiriant a fethodd, felly storiwch dystlythyrau adfer yn rhywle annibynnol. Nid yw adferiad sy’n dibynnu ar y gwesteiwr yr ydych newydd ei golli yn gynllun adfer.
Yn olaf, cofiwch fod snapshot hen yn adfer hen benderfyniadau. Os gwnaeth gweinyddwr analluogi hunaniaeth ar ôl i’r dump gael ei gymryd, mae’r adferiad yn ei hailalluogi. Mae cymodi ar ôl adfer yn perthyn i’r weithdrefn, nid i’r ôl-feddwl.