Pod tunel konteynerini tətbiqdən əvvəl başladır və ilk sorğular uğur qazanır — bu, problemi gizlədən vəziyyətin məhz özüdür. Sıralama bir yarışı düzəldir və tunel sıradan çıxdıqdan dörd saat sonra tətbiqin başlatdığı trafik haqqında heç nə demir. Bunlar iki ayrı qərardır. Adətən yalnız biri dizayn edilir.

Sıralama yalnız ilk sorğunu məhdudlaşdırır

Kubernetes yenidən başladıla bilən init konteynerlərindən qurulan yan konteyner həyat dövrünü dəstəkləyir. Bu model daxilində başlatma zondası tunel hazır olduğunu bildirənə qədər növbəti işəsalma addımını saxlayır. Bu, həqiqi bir təkmilləşdirmədir və giriş skriptinə sleep əlavə etmək əvəzinə ondan qəsdən istifadə etməyə dəyər. Qapı yalnız yoxladığı şərt qədər yaxşıdır.

Bu modeldən kənarda sıralama semantikası istifadə etdiyiniz icra mühitinə və ya asılılıq sisteminə aiddir və onların üst-üstə düşməsi şərt deyil. Başqa platformadan köçürülmüş yerləşdirmə tuneli gözləyirmiş kimi görünə bilər, çünki tətbiq təsadüfən yavaş başlayır. Bu eyni zəmanət deyil və yük altında sıradan çıxır.

Qapının nə müşahidə etdiyini deyin: proses var, interfeys var, əl sıxışma tamamlandı. Bunların hər biri “bu podun lazım olan təyinat nöqtələrinə məlumat yolu işləyir” iddiasından zəifdir.

Məlumat yolunu fərz etmək əvəzinə tətbiq edin

Zond bir anda aparılan yoxlamadır, firewall isə anlar arasında keçərli xassədir. Tələb tətbiq trafikinin heç vaxt tuneldən kənara çıxmamasıdırsa, bu, paylaşılan şəbəkə ad məkanında qəbul-et və ya ləğv-et qaydası kimi ifadə olunmalıdır. Konteynerlərin başlama sırası bu tələbi daşıya bilməz. Yalnız qayda daşıya bilər.

Bir poddakı konteynerlər həmin ad məkanını paylaşır, buna görə tətbiq nöqtəsi ad məkanının özüdür. Nə yazırsınız yazın, o tunelin öz xarici bağlantısını açıq saxlamalıdır, çünki tətbiqi qorumaq üçün onu bloklamaq tətbiqin lazım olan yolunu kəsir.

Uğursuzluq siyasətini açıq şəkildə qərarlaşdırın: tunel sağlam olmayanda tətbiq trafiki tam dayanmalıdır, yoxsa davam edib qorunmayan kimi işarələnməlidir? Hər ikisi müdafiə oluna bilər və heç biri konteynerləri müəyyən sıra ilə başlatmaqla əldə etdiyiniz deyil.

Adını çəkmədiyiniz trafiki sınayın

Nəzarətli tunel uğursuzluğu zamanı yeni sorğu göndərin və onun xaricə çıxıb-çıxmadığına baxın. Sonra yoxlamanı çıxış ünvanı testinin heç toxunmadığı yollarda təkrarlayın: klaster daxilində DNS həlli, IPv6 təyinatları və ictimai internet əvəzinə klasterdaxili ünvanlarla əldə olunan xidmətlər. Tunel öldükdən sonra səssizcə işləməyə davam edən yollar məhz bunlardır.

Çıxış ünvanı səhifəsi bir sorğunun həmin anda gözlədiyiniz yerə getdiyini sübut edir. O, digər yolların inventarını çıxara bilməz və sınadığınızla podun çata bildiyi arasındakı boşluq maraqlı uğursuzluqların yaşadığı yerdir.

Testi yalnız təmiz başlatmadan sonra deyil, yan konteynerin yenidən başlatmasından sonra da təkrarlayın. Yenidən başladılmış tunel konteyneri ad məkanını aralıq vəziyyətdə marşrutlar və siyasətlə qoya bilər.

Yerləşdirmə qeydini yazın

Yerləşdirmə qeydlərinə üç fakt aiddir: hazırlıq testi və onun nə müşahidə etdiyi, həmin test uğursuz olduqda bərpa əməliyyatı və çıxışı idarə edən tətbiq qaydası. Yan konteyner sənədləşməsi həyat dövrü mexanikasını əhatə edir və həmin siyasət qərarını sizə buraxır. Bu bölgü düzgündür və siyasətin adətən olmamasının səbəbi də elə budur.

Qoruma ilə səhv salınan sağlamlıq yoxlaması ən bahalı yaşıl göstəricidir, çünki insanların sual verməsini dayandırır. Onu sənədləşmədə düzgün adlandırmaq bir cümləyə başa gəlir və bunun qarşısını alır.

Nəhayət, bərpa yolunu bir dəfə tətbiq işləyərkən sınayın. Çıxışı bərpa etmək üçün podun yenidən yaradılmasını tələb edən dizayn bir qərardır və kəşf etdiyiniz deyil, verdiyiniz qərar olmalıdır.

Əlaqəli məqalələr