OpenVPN-ലെ keepalive അല്ലെങ്കിൽ systemd restart: ഏതാണ് വീണ്ടെടുക്കുന്നത്?
നിശ്ശബ്ദ പങ്കാളി, മരിച്ച പ്രക്രിയ, ഉപയോഗശൂന്യമായ അപ്ലിക്കേഷൻ എന്നിവ മൂന്ന് വ്യത്യസ്ത പരാജയങ്ങളാണ്. keepalive OpenVPN-നും പ്രക്രിയ systemd-നും നൽകി ഓരോ കേസും പരീക്ഷിക്കുക.
ഒരു ടണലിൽ മൂന്ന് വ്യത്യസ്ത കാര്യങ്ങൾ തെറ്റാകാം, കൂടാതെ അവയ്ക്ക് മൂന്ന് വ്യത്യസ്ത പ്രതികരണങ്ങൾ വേണം. പങ്കാളി മറുപടി നൽകുന്നത് നിർത്തുന്നു, ഡീമൺ പ്രക്രിയ മരിക്കുന്നു, അല്ലെങ്കിൽ ടണലിന് പിന്നിലെ അപ്ലിക്കേഷൻ സേവനം നിർത്തുന്നു. ഇവയിൽ ഏതെങ്കിലും ഒന്നിന് സേവനം പുനരാരംഭിക്കുന്ന കോൺഫിഗറേഷൻ ശ്രദ്ധാപൂർവ്വമായ മേൽനോട്ടമല്ല; അത് ബന്ധമില്ലാത്ത പരാജയങ്ങളിൽ പ്രയോഗിക്കുന്ന ഒരു പരുക്കൻ നടപടിയാണ്. ഓരോ സംവിധാനത്തിനും യഥാർത്ഥത്തിൽ എന്ത് നിരീക്ഷിക്കാനാകുമെന്ന് താരതമ്യം ചെയ്യുന്നത് ജോലി വിഭജനം വ്യക്തമാക്കുന്നു.
ഒന്നുപോലെ തോന്നുന്ന മൂന്ന് പരാജയങ്ങൾ
പങ്കാളിയുടെ നിശ്ശബ്ദത അർത്ഥമാക്കുന്നത് മറുവശം അയയ്ക്കുന്നത് നിർത്തി എന്നാണ്, കൂടാതെ OpenVPN അത് സ്വയം കണ്ടെത്താനാകും, കാരണം ഹൃദയമിടിപ്പ് അതിന്റേതാണ്. പ്രക്രിയയുടെ മരണം അർത്ഥമാക്കുന്നത് ഡീമൺ പുറത്തുപോയി എന്നാണ്, അത് സേവന മാനേജർ ശ്രദ്ധിക്കുന്നു, OpenVPN-ന് കഴിയില്ല. അപ്ലിക്കേഷൻ പരാജയം അർത്ഥമാക്കുന്നത് ടണൽ കുഴപ്പമില്ല, അതിന് പിന്നിലുള്ള എന്തോ അല്ല എന്നാണ്, മറ്റ് രണ്ട് സംവിധാനങ്ങൾക്കും അത് അറിയാനുള്ള വഴിയില്ല. ഓരോന്നിനും വ്യത്യസ്ത പ്രതികരണം വേണം, അവയൊന്നും ടണൽ പ്രവർത്തിക്കുന്നു എന്ന് ശ്രദ്ധിക്കുന്നതിന് തുല്യമല്ല.
ഇവ വ്യത്യസ്ത പാളികളിൽ നിന്നുള്ള വ്യത്യസ്ത സിഗ്നലുകളാണ്, ഓരോന്നിനും ഊഹിക്കാതെ പ്രവർത്തിക്കാനാകുന്ന ഉടമയുണ്ട്. അവ കലർത്തുന്നത് വ്യാഖ്യാനിക്കാനാകാത്ത ലക്ഷണങ്ങളിൽ പുനരാരംഭിക്കുന്ന ഒരു സംവിധാനം സൃഷ്ടിക്കുന്നു.
ഏതെങ്കിലും ടൈമർ മാറ്റുന്നതിന് മുമ്പ് മൂന്ന് കേസുകളും എഴുതുക. പട്ടിക തന്നെ സാധാരണയായി കാണിക്കുന്നത് ഒരു സംവിധാനത്തോട് മൂന്നും ഉൾക്കൊള്ളാൻ ആവശ്യപ്പെടുന്നു എന്നാണ്.
keepalive യഥാർത്ഥത്തിൽ എന്തിലേക്ക് വികസിക്കുന്നു
keepalive നിർദ്ദേശം ഒരു ചുരുക്കെഴുത്താണ്, വികാസം മോഡ് അനുസരിച്ച് വ്യത്യാസപ്പെടുന്നു. ഒരു സെർവറിൽ, keepalive 10 60 പത്ത് സെക്കൻഡിലൊരിക്കൽ ലോക്കൽ ping, 120 സെക്കൻഡ് ലോക്കൽ പുനരാരംഭ സമയപരിധി, ക്ലയന്റുകൾക്ക് അയയ്ക്കുന്ന 10, 60 മൂല്യങ്ങൾ എന്നിവയാകുന്നു. സെർവറിന്റെ സമയപരിധി ഉദ്ദേശ്യപൂർവ്വം ഇരട്ടിയാക്കുന്നു, അതുവഴി സെർവർ വിട്ടുകൊടുക്കുന്നതിന് മുമ്പ് ക്ലയന്റിന് പുനരാരംഭിക്കാൻ അവസരം ലഭിക്കുന്നു. പ്രൊഫൈലിലെ ചുരുക്കെഴുത്തല്ല, പ്രവർത്തിക്കുന്ന കോൺഫിഗറേഷനിലെ വികസിപ്പിച്ച രൂപം വായിക്കുക.
ആ ഇരട്ടിപ്പാണ് അറുപത് സെക്കൻഡിന് ശേഷം ഇരുവശവും പുനരാരംഭിക്കുന്നു എന്ന് പറയുന്ന ഏത് വിവരണവും തെറ്റായിരിക്കാനുള്ള കാരണം. പാത മോശമാകുമ്പോൾ രണ്ട് അറ്റങ്ങൾ ഒരുമിച്ച് ആടുന്നില്ല എന്നതും ഇത് വിശദീകരിക്കുന്നു.
ഹൃദയമിടിപ്പ് OpenVPN-ന്റെ പങ്കാളി ട്രാഫിക്കാണ്, ഏതെങ്കിലും പൊതു ഹോസ്റ്റിന്റെ ICMP പരിശോധനയല്ല. മറുപടി ടണലിന്റെ ദൂരെ അറ്റം ജീവനോടെയുണ്ട് എന്ന് മാത്രം തെളിയിക്കുന്നു. ഉപയോക്താവിന് യഥാർത്ഥത്തിൽ ആവശ്യമായ ഡാറ്റാബേസിനെക്കുറിച്ചോ വെബ് സേവനത്തെക്കുറിച്ചോ അത് ഒന്നും പറയുന്നില്ല.
Restart=on-failure എന്ത് നിരീക്ഷിക്കുന്നില്ല
ഒരു ഓവർറൈഡ് ചേർക്കുന്നതിന് മുമ്പ് ഇൻസ്റ്റാൾ ചെയ്ത യൂണിറ്റ് വായിക്കുക. Restart=on-failure രേഖപ്പെടുത്തിയ പ്രക്രിയ-പരാജയ വ്യവസ്ഥകളോട് പ്രതികരിക്കുന്നു, അത് കണക്ഷൻ അവസ്ഥ നിരീക്ഷിക്കുന്നതിന് തുല്യമല്ല. ആന്തരിക പുനർബന്ധനം തുടങ്ങിയതിനാൽ അത് പ്രവർത്തിക്കുന്നില്ല, വൃത്തിയായ പുറത്തുകടക്കലിന് തകരലിൽ നിന്ന് വ്യത്യസ്തമായ അർത്ഥമുണ്ട്.
ആ വ്യത്യാസം പ്രധാനമാണ്, കാരണം ആന്തരിക പുനരാരംഭം അതേ പ്രക്രിയയെ ജീവനോടെ നിർത്തുന്നു. യൂണിറ്റ് ഒന്നും കാണുന്നില്ല, ടണൽ സ്വയം കരകയറുന്നു, അതാണ് ശരിയായ ഫലം.
RestartSec ഉം ആരംഭ പരിധികളും ഉദ്ദേശ്യപൂർവ്വം സജ്ജമാക്കുക, അല്ലെങ്കിൽ തകരൽ ലൂപ്പ് ഗേറ്റ്വേയിൽ ആഞ്ഞടിച്ച് യഥാർത്ഥ പിശക് പുനരാരംഭ സന്ദേശങ്ങൾക്കടിയിൽ കുഴിച്ചിടും. പ്രവർത്തിക്കുന്ന പുനരാരംഭ പരിധി യൂണിറ്റിനെ പരാജയത്തിൽ ഉപേക്ഷിക്കുന്നു, അത് കാണാം, പരിധിയില്ലാത്ത ലൂപ്പ് അങ്ങനെയല്ല.
ping-restart ഉം ping-exit ഉം പരസ്പരം മാറ്റാനാവില്ല
ping-restart OpenVPN-ന്റെ ആന്തരിക പുനരാരംഭം പ്രവർത്തിപ്പിക്കുകയും പ്രക്രിയ നിലനിർത്തുകയും ചെയ്യുന്നു. ping-exit അതേ തരം സമയപരിധിയിൽ പ്രക്രിയ അവസാനിപ്പിക്കുന്നു, അത് തീരുമാനം സേവന മാനേജർക്ക് നൽകുന്നു. അവ പരസ്പരം ഒഴിവാക്കുന്നു, രണ്ടാമത്തേത് തിരഞ്ഞെടുക്കുന്നത് വീണ്ടെടുപ്പിന്റെ ഉടമസ്ഥത മാറ്റുന്നു. വ്യത്യാസം ആരാണ് വീണ്ടും ശ്രമിക്കാൻ തീരുമാനിക്കുന്നത്, ശ്രമത്തിൽ എത്ര അവസ്ഥ അതിജീവിക്കുന്നു എന്നതിലാണ്.
സമയപരിധിയിൽ പുറത്തുകടക്കൽ തിരഞ്ഞെടുക്കുകയാണെങ്കിൽ, യൂണിറ്റിന് യോജിക്കുന്ന പുനരാരംഭ നയവും പുറത്തുകടക്കൽ അവസ്ഥ കൈകാര്യം ചെയ്യലും വേണം, അല്ലെങ്കിൽ ജീവനക്ഷമതാ പരാജയം സ്ഥിരമായ നിർത്തലായി തോന്നും. സ്ഥിരതാ ഓപ്ഷനുകൾ ആന്തരിക പുനരാരംഭത്തിലുടനീളം ഇന്റർഫേസുകളും റൂട്ടുകളും സംരക്ഷിക്കാം, പക്ഷേ പ്രക്രിയ പുറത്തുകടക്കലിലുടനീളം അല്ല.
ഓരോ വിന്യാസത്തിനും ഒരു ജീവിതചക്രം തിരഞ്ഞെടുത്ത് കാരണം എഴുതുക. രണ്ട് നിർദ്ദേശങ്ങളും വഹിക്കുന്ന പ്രൊഫൈൽ തീരുമാനിക്കാത്ത പ്രൊഫൈലാണ്.
ഓരോ പരാജയവും അതിന്റേതായ കേസായി പരീക്ഷിക്കുക
അംഗീകൃത വിൻഡോയിൽ നിശ്ശബ്ദ പങ്കാളിയെയും കൊല്ലപ്പെട്ട ഡീമണെയും ലഭ്യമല്ലാത്ത അപ്ലിക്കേഷനെയും അനുകരിച്ച്, ഏത് വീണ്ടെടുപ്പ് പ്രവർത്തിച്ചു എന്ന് പരിശോധിക്കുക. നിശ്ശബ്ദ പങ്കാളി ആന്തരിക പുനർബന്ധനം, കൊല്ലപ്പെട്ട പ്രക്രിയ യൂണിറ്റ് പുനരാരംഭം, അപ്ലിക്കേഷൻ തടസ്സം ഇവയൊന്നും നൽകരുത്. രണ്ട് കേസുകൾ ഒരേ നടപടി നൽകുമ്പോൾ, ഉടമസ്ഥത ഇപ്പോഴും കലർന്നതാണ്.
ആവർത്തിച്ചുള്ള വീണ്ടെടുപ്പും നന്നാക്കലല്ല. നിരസിച്ച ക്രെഡൻഷ്യലുകളോ ഒരേ ഫലപ്രദമായ പേര് പങ്കിടുന്ന രണ്ട് ക്ലയന്റുകളോ പരസ്പരം മാറ്റിസ്ഥാപിക്കുന്നത് തുടരും, വേഗമേറിയ ടൈമറുകൾ ആ ആട്ടം കൂടുതൽ വേഗത്തിലാക്കുന്നു മാത്രം.