OpenVPN up skripti çox erkən işlədi, yoxsa heç vaxt hazır olmadı?
up qarmağı tunel cihazı görünəndə işləyir, marşrutlardan və tətbiq hazırlığından əvvəl. Skripti gözləmə əlavə etmək əvəzinə ehtiyac duyduğu hadisəyə uyğunlaşdırın.
up skripti işləyir, sıfır ilə çıxır və içindəki tapşırıq iki saniyə sonra terminaldan mükəmməl işləyən şəxsi xidmətə çata bilmir. İnstinkt vaxtlamadır və adi düzəliş gözləmədir, bu da anlamadan yarışı gizlədir. Daha faydalı oxunuş budur ki, “up” hazırlıq zəmanəti deyil, qarmağın adıdır. O, tunel cihazı konfiqurasiya edildikdə işə düşür, bu da marşrutlardan, DNS-dən və şübhəsiz tunelin arxasındakı hər hansı tətbiqdən əvvəldir.
Qabıq testi uğurla keçdi, çünki hər şey qərarlaşdıqdan sonra işlədi. Qarmaq bir konkret anda işlədi.
up başlanğıc sırasında harada dayanır
OpenVPN tunel cihazını konfiqurasiya edir və sonra up qarmağını işlədir. Marşrut quraşdırılması daha sonrakı mərhələdir və öz qarmağı var, buna görə up daxilində yerləşdirilmiş marşrutdan asılı tapşırıq faydalı yolu olmayan cihaz görə bilər. Marşrut işini route-up-a qoyun və vaxtlama problemi adətən yox olur.
Təlimat bu sıranı və hər qarmağın aldığı mühiti sənədləşdirir. Bu sıra klassik “mənim qabığımdan işləyir” hesabatının bütün izahıdır və həm də eyni skriptin bir maşında keçib daha yavaş marşrut mərhələsi olan digərində uğursuz olmasının səbəbidir. Nəticələrin heç biri skriptin keyfiyyəti haqqında heç nə demir.
DNS və tətbiq hazırlığı daha da sonra gəlir. Quraşdırılmış marşrutlar belə uzaq ucun dinlədiyinə, adın həll olunduğuna və ya istifadəçiyə bağlı tapşırıq üçün masaüstü sessiyasının mövcud olduğuna sübut deyil.
Qarmaq əslində nəyi miras alır
Qarmaq OpenVPN prosesinin hesabı və mühiti altında işləyir, bu da sizin interaktiv qabığınızla eyni deyil. Onda istifadəçi sessiya avtobusu, masaüstü mühiti və ya yalnız girişdə açılan etimadnamə olmaya bilər. Tapşırığın həqiqətən hansılarına ehtiyac duyduğunu yazın.
Bu, şəbəkə işinə bənzəyən, lakin istifadəçi kontekstindən asılı olan tapşırıqlar üçün vacibdir: istifadəçi etimadnaməsi ilə paylaşımın quraşdırılması, istifadəçi üzrə proksi qurulması və ya printerin konfiqurasiya edilməsi. İmtiyazlı tunel qarmağı onlar üçün yanlış yerdir və nə qədər gözləmə itkin sessiyanı düzəltmir.
Tapşırıq qarmaqda uğursuz olduqda hesabı, mühiti və uğursuz olan ilk əməliyyatı qeyd edin. Bu, vaxtından əvvəl vaxtlamanı icazə və ya kontekst problemindən ayırır və ikisinin tamamilə fərqli düzəlişləri var. Onların arasında təxmin etmək beş dəqiqəlik düzəlişi bütöv bir günorta edir.
Niyə gözləmə əlavə etmək hazırlıq yoxlaması deyil
Gözləmə skripti gecikdirir və yarış pəncərəsini sürüşdürür. Sürətli gündə tapşırıq uğur qazanır; yavaş gündə yenidən uğursuz olur və nasazlığı təkrar etmək çətinləşir, çünki gecikmə işləyirmiş kimi görünür. Yalnız yüngül yük altında işləyən gecikmə təsadüfdür, düzəliş deyil.
Asılılıq marşrutdursa, marşrut quraşdırılmasına uyğun qarmaqdan istifadə edin. Asılılıq tunelin arxasındakı xidmətdirsə, həmin konkret şərti gözləyən və heç vaxt gəlmədikdə aydın şəkildə uğursuz olan məhdud yoxlamadan istifadə edin.
Nasazlığı açıq saxlayın. Həqiqi işi uğursuz olduğu halda sıfırla çıxan qarmaq uğursuz olan qarmaqdan pisdir, çünki xidmət meneceri uğur qeyd edir və heç kim bir daha baxmır. Skriptin özündən gələn bir jurnal sətri bunu dürüst saxlamağın ən ucuz yoludur.
Təmizləmə və yenidən qoşulma eyni qayğıya layiqdir
Ortaq vəziyyəti dəyişən skript uyğun geri qaytarma yolu tələb edir. Qarmaq tərəfindən əlavə edilən marşrutlar, həlledici qeydləri və firewall işarələri idempotent və geri çevrilən olmalıdır, əks halda yenidən qoşulma ikinci nüsxəni birincinin üstünə yığacaq.
Yenidən qoşulmalar qarmaqları tam xidmət başlanğıcından daha tez-tez işlədə bilər. Sessiyanı yenidən quran davamlı interfeys up və route-up dövrünü yenidən tetikleyə bilər, buna görə hər yüklənmədə bir icra fərz edən skript sonda səhv davranacaq. Bir günlük yırğalanma ərzində icraları jurnalda sayın ki, həqiqətən nə qədər tez-tez işlədiyini görəsiniz. Sonra skripti bu qədər dəfə işləmək üçün təhlükəsiz edin.
Uğursuz olan həyat dövrünü sınayın, sonrakı əmri deyil. Yüklənməni və ya yenidən qoşulmanı təkrar yaradın, qarmağın icrasını izləyin və tapşırığın həqiqətən işlədiyi anda uğur qazandığını təsdiqləyin. Sonradan interaktiv qabıqdan gələn uğur asılılıq haqqında sübutdur, başlanğıc yolunun işlədiyinə dair sübut deyil.
Hər tapşırığın asılı olduğu hadisəni adlandırın, sonra onu həmin hadisəyə bağlayın. Qalan hər şey özünü yoxlama kimi göstərən gecikmədir.