ඔබ vpn-gateway නමින් Pod එකක් යෙදවෙයි, පරීක්ෂණ සේවාලාභියෙකු එහි ලිපිනයට යොමු කරයි, පැකට් අතුරුදහන් වන ආකාරය දකියි. මැනිෆෙස්ට් තුළ කිසිවක් වැරදි නැති අතර kubelet ට පැමිණිල්ලක් නැත. හේතුව ව්‍යුහාත්මක මිස වින්‍යාසගත නොවේ: Kubernetes සෑම Pod එකකටම එහිම ජාල නාම අවකාශය ලබා දෙයි, එබැවින් නමක්, ලේබලයක් හෝ හවුල් API නාම අවකාශයක් පැකට් යන තැන කිසිවක් වෙනස් නොකරයි. එබැවින් VPN රථවාහනය පොකුරෙන් පිටවන ආකාරය තීරණය කිරීම හිමිකාරිත්වය පිළිබඳ ප්‍රශ්නයකින් ආරම්භ වේ, කන්ටේනර රූපවලින් නොවේ.

ක්‍රම දෙකක් බොහෝ සැබෑ යෙදවීම් ආවරණය කරන අතර ඒවා එකිනෙකට මාරු කළ නොහැක. එකක් උමග කාර්ය භාරයේම ජාල නාම අවකාශය තුළ තබයි. අනෙක CNI වෙතින් තෝරාගත් රථවාහනය නියමිත ද්වාර නෝඩයක් හරහා යැවීමට ඉල්ලා සිටී. ඒවා වෙනස් ආකාරයෙන් අසාර්ථක වේ, වෙනස් ආකාරයෙන් පරිමාණය වේ, වෙනස් කණ්ඩායම්වලට පිළිතුරු දෙයි, එබැවින් කන්ටේනර ප්‍රශ්නය සාමාන්‍යයෙන් කිසිදා නොවිසඳෙන තර්ක ඇති කරයි.

Pod මායිම නාම අවකාශයකි, පැනීමේ සත්කාරකයක් නොවේ

Linux ජාල නාම අවකාශය එහි අතුරුමුහුණත්, ලිපින, මාර්ග සහ ගිනිපවුරු නීති හිමිකර ගනී, සෑම Pod එකකටම එකක් ලැබේ. එම Pod තුළ ඇති කන්ටේනර එයට එකතු වේ, එබැවින් සහායක කන්ටේනරයකට යෙදුම පසුව අනුගමනය කරන මාර්ග නැවත ලිවිය හැක. අසල්වැසි Pod එකකට සමාන පෙනුමක් ඇති නමුත් සම්පූර්ණයෙන්ම වෙන් වූ තැටියක් ඇත. ද්වාර Pod එකකට උරුම විය හැකි හවුල් වගුවක් නැත, එක් නාම අවකාශයකින් තවත් එකකට රථවාහනයේ ව්‍යංග හුවමාරුවක් නැත.

එබැවින් ද්වාර-Pod රටාව ක්‍රියා කරන්නේ ඉහළින් යමක් ඇත්තටම එයට පැකට් යවන විට පමණි: Service එකක්, නෝඩයේ ස්ථිතික මාර්ගයක් හෝ CNI තුළ මෙහෙයවීමේ ප්‍රතිපත්තියක්. ලිපිනයක් පමණක් කිසිවක් ආකර්ෂණය නොකරයි.

සෑම Pod එකකටම උමග ලබා දෙන දේ සහ එහි පිරිවැය

කාර්ය භාරයේ නාම අවකාශය තුළ ක්‍රියා කරන උමග එම කාර්ය භාරයට එහිම සේවාලාභී අනන්‍යතාවය ලබා දෙයි, බොහෝ දුරස්ථ ප්‍රවේශ සේවා සැසියක් අවසර දීමට හෝ ගණන් ගැනීමට පෙර එය ඉල්ලා සිටී. හානි අරය ද ස්ථානීයව පවතී: කැඩුණු උමගක් සියල්ල භාවිත කරන හවුල් මාර්ගය වෙනුවට Deployment එකක් නවතා දමයි. එය ක්‍රියා කරන ආකාරය ක්‍රියාත්මක කිරීම මත රඳා පවතී, එහිදීම මිනිසුන් වැරදි ලෙස අනුමාන කරයි.

කර්නල තත්ත්වය පමණක් අවශ්‍ය වින්‍යාසයක් init කන්ටේනරයක අවසන් වී පිටවිය හැක. Pod හි මුළු ආයු කාලය තුළ ජීවතව සිටිය යුතු පරිශීලක අවකාශ ඩේමනයට Kubernetes 1.29 හි ස්වදේශීය පැති-කන්ටේනරයක් ලෙස හඳුන්වා දුන් නැවත ආරම්භ කළ හැකි init කන්ටේනර ආකෘතිය අවශ්‍ය වේ, මෙම වෙනස රුචියෙන් නොව උමගේ ක්‍රියාත්මක කිරීමෙන් පැමිණේ. මෙම ආකෘතියේ පිරිවැය පුනරාවර්තනයයි: සෑම ප්‍රතිනිර්මාණයක්ම සත්‍යාපනය කරයි, තමන්ගේම උමග ලිපිනය ලබා ගනී, දුරස්ථ සැසි ස්ථානයක් පරිභෝජනය කරයි, එබැවින් ස්වයං-පරිමාණ සිදුවීම සබැඳියේ අනෙක් පැත්තේ ධාරිතා සිදුවීමක් බවට පත් වේ. එක් අක්‍රමාංකයක් සියලු ප්‍රතිනිර්මාණවලට පිටපත් කිරීම එම පිරිවැය ඉවත් නොකරයි, එය විගණන මාවත ඉවත් කරයි. අවසර ද එම පරීක්ෂාවම ලැබිය යුතුය, මන්ද තම නාම අවකාශයේ NET_ADMIN අවශ්‍ය උමගකට privileged: true උදාහරණයේ මුළු සත්කාරකයේ අධිකාරිය උරුම කර ගැනීමට හේතුවක් නැත.

CNI පිටවීම හිමිකර ගන්නා විට

CNI එයට සහාය දෙන්නේ නම්, පිටවීමේ ද්වාරය කාර්ය භාරය සහ ගමනාන්ත පරාසය අනුව රථවාහනය තෝරා, පසුව එක් අනාවැකි කළ හැකි මූලාශ්‍ර ලිපිනයක් යටතේ තෝරාගත් නෝඩ හරහා යවයි. Cilium හි අනුවාදය සාමාන්‍ය යොමුව වන අතර, එහි ලේඛන පැහැදිලිව පවසන්නේ මෙම විශේෂාංගයට නිශ්චිත Cilium වින්‍යාසයක් සහ නිවැරදි අතුරුමුහුණත් හා ලිපින සහිත ද්වාර නෝඩ අවශ්‍ය බවයි. එය Pod නිර්මාණය කිරීමෙන් පසු ආරම්භක කාල පරිච්ඡේදයක් ද සඳහන් කරයි, එහිදී මෙහෙයවීම තවම ක්‍රියාත්මක නොවේ, එය පාද සටහනක් නොව නිර්මාණ ආදානයකි.

එම ප්‍රමාදය ඔබේම පොරොන්දුවට එරෙහිව කියවන්න. වෙනත් මාර්ගයකින් කිසිදු රථවාහනයක් පිටවිය නොහැක යන්න නියමය නම්, පරතරය තුළ යවන නව Pod එකක් දැනටමත් එය බිඳ ඇත, එබැවින් ආරම්භක අනුපිළිවෙලට තමන්ගේම පිළිතුරක් අවශ්‍යයි: ප්‍රතිපත්තිය ක්‍රියාත්මක වන තෙක් යෙදුම රඳවා ගන්න, නැතහොත් එම කවුළුව පිළිගෙන ලේඛනගත කරන්න.

ප්‍රකාශය පටුව තබන්න. පිටවීමේ ද්වාරය මාර්ගයක් තෝරා පරිවර්තනය කරයි. එය VPN එකක් අවසන් නොකරයි, පිටුපසින් සහාය දක්වන සම්බන්ධතාවයක් නොමැතිව පොකුර ඔබේ දුරස්ථ ජාලයේ සේවාලාභියා බවට පත් නොකරයි.

QuestionPer-Pod tunnelCNI egress gateway
Who holds the client identityEach workloadThe gateway, shared
What scaling changesEnrollment and sessions per replicaThroughput and capacity per node
What the remote side seesDistinct addressesOne translated source
Failure scopeOne DeploymentEvery workload behind the gateway

පරිවර්තනය දුරස්ථ පැත්ත දකින දේ නිශ්ශබ්දව වෙනස් කරයි

ද්වාරය මූලාශ්‍රය නැවත ලියූ පසු සෑම Pod එකකම ලිපින අතුරුදහන් වේ, එබැවින් අනන්‍යතාවය මත පදනම් වූ අවසර ලැයිස්තුවක් එක් හවුල් ලිපිනයක් මත පදනම් වූ ලැයිස්තුවක් බවට පත් වේ. මෙය දෝෂයක් නොව හුවමාරුවකි: නඩත්තු කිරීමට අඩු නීති, යමක් නරක ලෙස හැසිරෙන විට තදින් ආරෝපණය.

යෙදුම් මට්ටමේ සත්‍යාපනය සහ ඉල්ලීම් ලොග්කරණය ජාලය තවදුරටත් වාර්තා නොකරන දේ දැරිය යුතුය. ද්වාරයේ ධාරිතාව සහ ප්‍රතිස්ථාපනය හවුල් යටිතල පහසුකම් ලෙස සලකන්න, මන්ද එක් නෝඩයක නැවත ආරම්භය දැන් එහි පිටුපස ඇති සෑම කාර්ය භාරයක්ම බාධා කරයි, සහ ආපසු මාර්ගය කල්තියා පරීක්ෂා කරන්න: දුරස්ථ කෙළවරට පරිවර්තිත ලිපිනයට ළඟා වන ආකාරය දැනගත යුතුය, සාමාන්‍යයෙන් මැනිෆෙස්ට් නොව, මිනිසෙකු හිමිකර ගත යුතු මාර්ගයක් හෝ NAT හරහා. ලිපින සැලසුම් කිරීම ද මෙහි අයත් වේ, මන්ද අතිච්ඡාදනය වන පොකුරු සහ දුරස්ථ පරාස දෙකම ආකෘති බිඳ දමන අතර IPv6 භාවිතය පරස්පර සැලැස්මකට නිදහසට කරුණක් නොවේ.

හිමිකාරිත්වය අනුව තීරණය කරන්න, පසුව පොරොන්දු වූ අසාර්ථකත්වය පරීක්ෂා කරන්න

දුරස්ථ සේවාව තනි කාර්ය භාර සත්‍යාපනය කරන විට, Deployment කිහිපයකට පමණක් සබැඳිය අවශ්‍ය වන විට, සහ අසාර්ථකත්වය ස්ථානීයව තිබිය යුතු විට සෑම Pod එකකටම උමග තෝරන්න. ජාල කණ්ඩායමක් දැනටමත් මාර්ගය හිමිකර ගන්නා විට, බොහෝ කාර්ය භාර එක් ගමනාන්තයක් හවුලේ ගන්නා විට, සහ ස්ථාවර මූලාශ්‍ර ලිපිනය මුළු අභ්‍යාසයේම අරමුණ වන විට ද්වාරය තෝරන්න.

කෙසේ වුවද, ස්ථාවර තත්ත්වය නොව ඔබ විකුණූ ගුණාංගය පරීක්ෂා කරන්න. Pod එකක් සාදන්න, එයට වහාම යැවීමට ඉඩ දෙන්න, උමගෙන් කිසිවක් පලා නොයන බව පොරොන්දුව නම් පළමු තත්පර කිහිපය නිරීක්ෂණය කරන්න. ප්‍රතිනිර්මාණ පහකට පරිමාණය කරන්න, පොරොන්දුව සෑම කාර්ය භාරයකටම අනන්‍යතාවය නම් දුරස්ථ කෙළවර වාර්තා කරන සැසි ගණන් කරන්න. මෙම පරීක්ෂා දෙක මැනිෆෙස්ට් සමාලෝචනයට වඩා බොහෝ ඉක්මනින් යාන්ත්‍රණයේ සීමා හෙළිදරව් කරන අතර, ඊළඟ සිදුවීම කුමන කණ්ඩායමටද යන්න පවසයි.

අදාළ ලිපි