ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-21, Tuesday
☁️ ක්ලවුඩ් තාක්ෂණය · 🕒 කියවීමට විනාඩි 2 · 👁 1

Kubernetes පෝඩ් පරීක්ෂණ 3 වර්ග: Liveness, Readiness, Startup සැලසුම

Kubernetes පෝඩ් පරීක්ෂණ 3 වර්ග: Liveness, Readiness, Startup සැලසුම

ඔබගේ යෙදුම Kubernetes පරිසරයට තබා දැමුවාම, පෝඩ් එකක් ඇරඹෙයි, පසුව අහඹු ලෙස මැරෙයි, හෝ ඉල්ලීම් කිසිවක් එන නැත, හෝ ආරම්භයෙදී 90 තත්පරක් ගතවී පෝඩ් එක නැවත නැවත ආරම්භ වේ. මේ සියල්ලම එකම හේතුවක් – පරීක්ෂණ (probe) සැකසුම් වැරදීම හෝ අස්ථානගත කිරීමයි.

Kubernetes තුල livenessProbe, readinessProbe, startupProbe යන ත්‍රිත්වයක් ඇත. ඒවා වෙනස්‑වෙනස් කාර්යයන් කරයි; එකිනෙකට ගැලපෙන්නා වූ පරිදි සැකසුවහොත් පෝඩ් එක අඛණ්ඩව නැවත නැවත ආරම්භ වන තත්ත්වයක් ඇති වේ. නිවැරදිව සැකසුවහොත් ඔබේ යෙදුම ස්වයං‑සුවිශේෂීව පවත්වාගෙන යාමට, ස්කේල් කිරීමේදී ගැටළුවක් නොමැතිව, රෝලින්‍ග් අප්ඩේට්‍වලදී ඉල්ලීම් අඩුවීමක් සිදුවන්නේ නැත.

Liveness Probe – කොන්ටේනරය ජීවත්ද?

මෙම පරීක්ෂණය "කොන්ටේනරය තවමත් සෞඛ්‍යවත්ද" කියා පරීක්ෂා කරයි. පරීක්ෂණය අසාර්ථක වුවහොත් kubelet එය මරලා නැවත ආරම්භ කරයි. උදාහරණයක් ලෙස HTTP GET /healthz (port 8080) යොදා ගත හැක. මෙය ඩෙඩ්ලොක් හෝ අසීමිත ලූප් වැනි අභ්‍යන්තර ගැටලු හඳුනා ගැනීමට පමණක් භාවිතා කළ යුතුයි. දත්ත ගබඩා (DB) හෝ Redis වැනි බාහිර සේවා පරීක්ෂා කිරීම වැරදීමක්; එවැනි අවස්ථාවක DB බිඳ වැටුනත් පෝඩ් එක නැවත ආරම්භ වීමෙන් ප්‍රශ්නය විසඳන්නේ නැත.

Readiness Probe – ඉල්ලීම් සඳහා සූදානම්ද?

Readiness Probe "මෙම පෝඩ් එකට ඉල්ලීම් යැවිය හැදිනිද" කියා තීරණය කරයි. අසාර්ථක වුවහොත් පෝඩ් එක සේවා අවසන් ලැයිස්තුවෙන් ඉවත් වේ, නමුත් නැවත ආරම්භ නොවේ. මෙහිදී බාහිර සම්බන්ධතා, දත්ත ගබඩා සම්බන්ධතාව, කෑෂ් පූරණය වැනි කරුණු පරීක්ෂා කළ යුතුයි. දත්ත ගබඩා යළි සම්බන්ධ වූ පසු පෝඩ් එක ස්වයංක්‍රීයව ලෝඩ් බැලන්සර් වෙත ආපසු එක් කරයි. එසේම, රෝලින්‍ග් අප්ඩේට්‍වලදී පරණ පෝඩ් එක නව පෝඩ් එක සූදානම් වන තෙක් ඉවත් නොකරයි, එවිට සේවා අඩුවීමක් නොවෙයි.

Startup Probe – දිගු ආරම්භය සඳහා ආදරය

Kubernetes 1.18 සිට Startup Probe එකක් ඇතුළත් කර ඇත. එය "යෙදුම ආරම්භක කාලය සම්පූර්ණ කරද" කියා පරීක්ෂා කරයි. උදාහරණයක් ලෙස /healthz (port 8080) මාර්ගයෙන් 30 වරක් 10 තත්පරක් පරීක්ෂා කිරීමෙන් 300 තත්පර (5 මිනිත්තු) දක්වා ආරම්භයට අවකාශය සලසයි. Startup Probe ක්‍රියාත්මක වන අතර liveness සහ readiness probes අක්‍රිය වේ; ඒවා සාර්ථක වීමෙන් පසු පමණක් ක්‍රියාත්මක වේ. Java වැනි දිගු ආරම්භ කාලයක් ඇති යෙදුම් සඳහා මෙය අතිශය ප්‍රයෝජනවත්.

Probe වර්ග – HTTP, TCP, Exec

  • httpGet: HTTP අන්තර්මුඛයක් ඇති සේවාවන් සඳහා සුදුසු.
  • tcpSocket: TCP සම්බන්ධතාව පරීක්ෂා කරයි, සරල සේවා සඳහා.
  • exec: කමන්ඩ් එකක් ක්‍රියාත්මක කර එහි ප්‍රතිඵලය පරීක්ෂා කරයි.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ තාක්ෂණික සමාජය, විශේෂයෙන්ම කලාපයේ යෙදුම් සංවර්ධකයින්, ස්ටාට්අප් සමාගම්, ව්‍යාපාරිකයින් සඳහා Kubernetes health probes හඳුනා ගැනීම අත්‍යවශ්‍යයි. නිවැරදි probe සැකසුම් මඟින් පද්ධති අස්ථිරතා අඩු කර, සේවා නවීකරණය හා ස්කේලබල් වීමේදී අඩු අවදානමක් ලබා දේ. දේශීය දත්ත කේන්ද්‍ර හෝ Cloud සේවා (AWS, Azure, GCP) සමඟ සම්බන්ධතාව ඇති ආයතනවල, readiness probe මඟින් බාහිර සම්පත් පරීක්ෂා කිරීමෙන් සේවා නතර වීම වැළැක්විය හැක. ඒවගේම, startup probe භාවිතයෙන් Java, .NET Core වැනි භාෂා වල දිගු ආරම්භ කාලය ඇති යෙදුම් පරිසරයන්හි අඩු downtime එකක් ලබා ගත හැක. එමනිසා, දේශීය තාක්ෂණික පුහුණු පාඨමාලා, DevOps සමාජය, සහ IT උපදේශක ආයතනවල මෙම සංකල්පය අත්‍යවශ්‍ය අධ්‍යයන මාතෘකාවක් බවට පත්වේ.

ඔබේ Kubernetes පරිසරය සකස් කර, health probes නිවැරදිව සැකසීමෙන්, පෝඩ් අසාර්ථකතා වලින් මුදාගෙන, ව්‍යාපාරික අඩුපාඩු නැතිව, ස්ථාවර, වේගවත් සේවා සැපයීමට හැකි වේ.

💡 ඔබේ Kubernetes පරිසරය අදම සකස් කර බලන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#Kubernetes #HealthProbes #DevOps #SriLankaTech