OpenVPN daagliks herbegin? Kies die faling, nie die klok nie
'n Herbegin volgens die kalender is onderhoud, nie herstel nie. Bepaal of die eweknie, die proses of die toepassing gefaal het, en gee dan daardie laag die sneller wat dit nodig het.
Jy erf 'n cron-taak wat OpenVPN elke dag om 04:10 herbegin, en dit hou dinge al 'n jaar lank stabiel. Dit ontkoppel egter ook 'n gesonde tonnel op 'n vaste uur en doen niks aan die onderbreking wat werklik middagete gebeur nie. 'n Herbegin volgens die kalender is 'n onderhoudsbesluit. Herstel is 'n ander ontwerp, met 'n spesifieke sneller.
Drie vorme van faling het drie verskillende eienaars nodig. Kies eers die faling, dan volg die meganisme.
Drie falings, drie eienaars
Die tonnel kan op wees terwyl die eweknie weg is: die proses loop, die koppelvlak bestaan, en niks nuttigs gaan daardeur nie. 'n Proses kan dood wees terwyl die eweknie gesond is; dan kan net dit wat hom begin het, hom terugbring. 'n Toepassing agter die tonnel kan stukkend wees terwyl die tonnel en die eweknie albei gesond is, en om die kliënt dan te herbegin vergroot die onderbreking sonder om die oorsaak te raak. Om daardie drie gevalle te skei, is die hele besluit.
Elkeen het sy eie sein en sy eie eienaar. Lewendigheid hoort by die VPN-protokol, die proseslewensiklus hoort by die diensbestuurder, en toepassingsgesondheid hoort by monitering met 'n nou mandaat.
Wat 'n lewendigheidsopsie kan doen en nie kan doen nie
keepalive is 'n helper wat na 'n ping- en 'n ping-herbeginpaar uitbrei, soos die verwysing oor skakelopsies verduidelik, en die time-outs wat dit lewer, is nie op die bediener en die kliënt dieselfde nie. Waardes wat 'n bediener stoot, kan ook oorheers wat 'n kliënt plaaslik opgestel het, en daarom is 'n time-out wat in 'n plaaslike lêer reg lyk, dalk nie die een wat geld nie.
Dit maak dit die regte instrument vir 'n verlore eweknie en die verkeerde instrument vir 'n dooie proses, want 'n proses wat beëindig is, kan nie sy eie tydhouers laat loop nie. Dit sê ook niks oor of 'n toepassing agter die tonnel antwoord nie, want die uitruiling gebeur tussen die twee VPN-punte. Om 'n time-outpaar uit 'n ander ontplooiing te kopieer sonder om rol, verwagte onderbrekings en heraanmelding na te gaan, is hoe 'n stabiele tonnel begin fladder.
Wat die diensbestuurder besit
As die daemon beëindig word, besluit die bestuurder wat hom begin het wat volgende gebeur. 'n Herbeginbeleid wat op faling reageer, met 'n vertraging en 'n limiet op die begintempo, hanteer 'n ineenstortingslus sonder om dit in 'n vurkbom te verander. Daardie instellings reageer op prosesuitkomste en time-outs, en hulle bespeur nie 'n proses wat lewendig maar nutteloos is nie. Dit is nie 'n gaping om met 'n breër beleid te pleister nie; dit is die grens tussen lewensiklus en lewendigheid.
Eienaarskap maak net so veel saak soos die instellings. 'n Verbinding wat deur 'n lessenaarnetwerkbestuurder begin is, moet daardie bestuurder se herstelreëling behou, en om 'n mededingende dienseenheid vir dieselfde koppelvlak by te voeg, gee een tonnel twee eienaars. Kies een en skryf neer watter een dit is.
Wanneer 'n geskeduleerde herbegin regverdig is
'n Herbegin op 'n bepaalde tyd kan 'n redelike onderhoudsaksie wees: dit het 'n eienaar, 'n venster, 'n genoemde instansie en 'n onafhanklike toegang. Wat dit nie kan wees nie, is 'n algemene betroubaarheidsbeleid wat ook almal op 'n vaste uur ontkoppel.
As die herbegin bestaan om 'n bekende lek of 'n vasgevange toestand te omseil, sê dit in die eenheid se beskrywing, want anders hou die volgende persoon dit vir ewig.
Toets die gevalle wat saak maak: die eweknie verdwyn terwyl die proses aanbly, die proses beëindig, 'n herpoging het nuwe geloofsbriewe nodig, en die tonnel kom terug terwyl die toepassing stukkend bly. Kyk watter komponent reageer en watter toestand dit agterlaat.
Die regte vraag is nie hoe dikwels om te herbegin nie, maar wat die faling eerste moet raaksien.