Kubernetes සඳහා Ingress controllers පිළිබඳ දළ විශ්ලේෂණය සහ සංසන්දනය

Kubernetes සඳහා Ingress controllers පිළිබඳ දළ විශ්ලේෂණය සහ සංසන්දනය

නිශ්චිත යෙදුමක් සඳහා Kubernetes පොකුරක් දියත් කරන විට, යෙදුම, ව්‍යාපාරය සහ සංවර්ධකයින් මෙම සම්පතට ඉදිරිපත් කරන්නේ කුමක්ද යන්න ඔබ තේරුම් ගත යුතුය. මෙම තොරතුරු සමඟ, ඔබට වාස්තුවිද්යාත්මක තීරණයක් ගැනීමට පටන් ගත හැකි අතර, විශේෂයෙන්ම, විශේෂිත Ingress පාලකයක් තෝරාගැනීම, අද වන විට දැනටමත් විශාල සංඛ්යාවක් ඇත. බොහෝ ලිපි / ලේඛන ආදිය හරහා යාමකින් තොරව පවතින විකල්පයන් පිළිබඳ මූලික අදහසක් ලබා ගැනීම සඳහා, අපි ප්‍රධාන (නිෂ්පාදන සූදානම්) ඇතුල්වීමේ පාලක ඇතුළුව මෙම දළ විශ්ලේෂණය සකස් කර ඇත්තෙමු.

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

නිර්ණායක

ප්‍රතිපත්තිමය වශයෙන්, සංසන්දනය කිරීම සහ ඕනෑම ප්‍රයෝජනවත් ප්‍රති result ලයක් ලබා ගැනීම සඳහා, ඔබ විෂය ක්ෂේත්‍රය පමණක් නොව, පර්යේෂණ දෛශිකය සකස් කරන නිශ්චිත නිර්ණායක ලැයිස්තුවක් ද තේරුම් ගත යුතුය. Ingress / Kubernetes භාවිතා කළ හැකි සියලුම අවස්ථා විශ්ලේෂණය කිරීමට මවාපාමින් තොරව, අපි පාලකයන් සඳහා වඩාත් පොදු අවශ්‍යතා ඉස්මතු කිරීමට උත්සාහ කළෙමු - ඕනෑම අවස්ථාවක ඔබට ඔබේ සියලු විශේෂතා සහ විස්තර වෙන වෙනම අධ්‍යයනය කිරීමට සිදුවනු ඇති බවට සූදානම්ව සිටින්න.

නමුත් මම ආරම්භ කරන්නේ ඒවා සියලු විසඳුම්වල ක්‍රියාත්මක වන අතර ඒවා නොසැලකෙන තරමට හුරුපුරුදු වූ ලක්ෂණ වලින් ය:

  • සේවාවල ගතික සොයාගැනීම (සේවා සොයාගැනීම);
  • SSL අවසන් කිරීම;
  • වෙබ්සොකට් සමඟ වැඩ කිරීම.

දැන් සංසන්දනාත්මක කරුණු සඳහා:

සහාය දක්වන ප්‍රොටෝකෝල

මූලික තේරීම් නිර්ණායක වලින් එකක්. ඔබේ මෘදුකාංගය සම්මත HTTP මත ක්‍රියා නොකරනු ඇත, නැතහොත් එයට එකවර ප්‍රොටෝකෝල කිහිපයක් මත වැඩ කිරීමට අවශ්‍ය විය හැක. ඔබගේ නඩුව ප්‍රමිතියෙන් තොර නම්, පසුව ඔබට පොකුර නැවත සකස් කිරීමට අවශ්‍ය නොවන පරිදි මෙම සාධකය සැලකිල්ලට ගැනීමට වග බලා ගන්න. සියලුම පාලකයන් සඳහා, සහාය දක්වන ප්‍රොටෝකෝල ලැයිස්තුව වෙනස් වේ.

හරයේ ඇති මෘදුකාංගය

පාලකය පදනම් කරගත් යෙදුම්වල වෙනස්කම් කිහිපයක් තිබේ. ජනප්‍රිය ඒවා නම් nginx, traefik, haproxy, envoy. සාමාන්‍ය අවස්ථාවෙහිදී, ගමනාගමනය ලැබෙන සහ සම්ප්‍රේෂණය වන ආකාරය කෙරෙහි එය එතරම් බලපෑමක් ඇති නොකරනු ඇත, නමුත් “හුඩ් යට” ඇති දේවල විභව සූක්ෂ්මතා සහ විශේෂාංග දැන ගැනීම සැමවිටම ප්‍රයෝජනවත් වේ.

රථවාහන මාර්ගගත කිරීම

කිසියම් සේවාවක් සඳහා ගමනාගමන දිශාව පිළිබඳව තීරණයක් ගත හැක්කේ කුමක් මතද? සාමාන්යයෙන් මේවා සත්කාරක සහ මාර්ගය, නමුත් අමතර හැකියාවන් ඇත.

පොකුරක් තුළ නාම අවකාශය

Namespace (namespace) - Kubernetes හි සම්පත් තාර්කිකව බෙදීමේ හැකියාව (උදාහරණයක් ලෙස, වේදිකාව, නිෂ්පාදනය, ආදිය). එක් එක් නාම අවකාශයේ වෙන වෙනම ස්ථාපනය කළ යුතු ඇතුල්වීමේ පාලක ඇත (එවිට එය ගමනාගමනය මෙහෙයවිය හැක පමණි මෙම අවකාශයේ කරල් වලට). සමස්ත පොකුර සඳහාම ගෝලීය වශයෙන් ක්‍රියා කරන ඒවා (සහ ඔවුන්ගේ පැහැදිලි බහුතරය) ඇත - ඒවා තුළ රථවාහන නාම අවකාශය නොසලකා පොකුරේ ඕනෑම පොඩ් එකකට යොමු කෙරේ.

උඩුගං සඳහා සාම්පල

යෙදුම, සේවාවන්හි සෞඛ්‍ය සම්පන්න අවස්ථා වෙත ගමනාගමනය යොමු කරන්නේ කෙසේද? ක්රියාකාරී සහ නිෂ්ක්රීය චෙක්පත්, නැවත උත්සාහ කිරීම්, පරිපථ කඩනයන් සමඟ විකල්ප ඇත (වැඩි විස්තර සඳහා, බලන්න, උදාහරණයක් ලෙස, Istio ගැන ලිපියක්), අභිරුචි සෞඛ්‍ය පරීක්ෂණ, ආදිය. සමතුලිතතාවයෙන් අසමත් වූ සේවාවන් ලබා ගැනීම සහ කාලානුරූපව ඉවත් කිරීම සඳහා ඔබට ඉහළ අවශ්‍යතා තිබේ නම් ඉතා වැදගත් පරාමිතියක්.

සමතුලිත ඇල්ගොරිතම

බොහෝ විකල්ප තිබේ: සාම්ප්රදායික සිට රවුන්ඩ් රොබින් විදේශීය වෙත rdp-කුකී, මෙන්ම වැනි තනි ලක්ෂණ ඇලෙන සුළු සැසි.

සත්යාපනය

පාලකය සහාය දක්වන අවසර යෝජනා ක්‍රම මොනවාද? Basic, digest, auth, external-auth - මම හිතන්නේ මෙම විකල්ප හුරුපුරුදු විය යුතුයි. Ingress හරහා ප්‍රවේශ වන බොහෝ සංවර්ධක (සහ/හෝ හුදෙක් පුද්ගලික) ලූප තිබේ නම් මෙය වැදගත් නිර්ණායකයකි.

රථවාහන බෙදා හැරීම

කැනරි රෝල්අවුට් (කැනරි), ඒ / බී පරීක්‍ෂාව, රථවාහන දර්පණය (කැඩපත් කිරීම / සෙවනැලි කිරීම) වැනි බහුලව භාවිතා වන රථවාහන බෙදා හැරීමේ යාන්ත්‍රණයන්ට පාලකය සහාය දක්වයිද? ඵලදායි පරීක්ෂාව, නිෂ්පාදන දෝෂ නිදොස් කිරීම (හෝ අවම අලාභයක් සහිතව), රථවාහන විශ්ලේෂණය සහ යනාදිය සඳහා නිවැරදි සහ නිරවද්‍ය ගමනාගමන කළමනාකරණය අවශ්‍ය යෙදුම් සඳහා මෙය ඇත්තෙන්ම වේදනාකාරී විෂයයකි.

ගෙවූ දායකත්වය

උසස් ක්‍රියාකාරීත්වය සහ / හෝ තාක්ෂණික සහාය ඇතිව, පාලකය සඳහා ගෙවන විකල්පයක් තිබේද?

චිත්‍රක පරිශීලක අතුරුමුහුණත (වෙබ් UI)

පාලක වින්‍යාසය කළමනාකරණය කිරීමට කිසියම් GUI තිබේද? ප්‍රධාන වශයෙන් "හස්තභාවය" සඳහා සහ / හෝ Ingress'a වින්‍යාසයට යම් යම් වෙනස්කම් කිරීමට අවශ්‍ය අයට, නමුත් "අමු" සැකිලි සමඟ වැඩ කිරීම අපහසු වේ. සංවර්ධකයින්ට පියාසර ගමනාගමනය සමඟ යම් අත්හදා බැලීම් කිරීමට අවශ්‍ය නම් එය ප්‍රයෝජනවත් විය හැකිය.

JWT වලංගුකරණය

අවසාන යෙදුමට පරිශීලකයාගේ අවසරය සහ වලංගු කිරීම සඳහා JSON වෙබ් ටෝකන වල බිල්ට් වලංගුකරණය පැවතීම.

සැකසුම් අභිරුචිකරණය සඳහා ඇති හැකියාව

ඔබේම විධාන, කොඩි යනාදිය සම්මත වින්‍යාස සැකිලිවලට එක් කිරීමට ඔබට ඉඩ සලසන යාන්ත්‍රණ තිබීම යන අර්ථයෙන් සැකිලි විස්තාරණය.

මූලික DDOS ආරක්ෂණ යාන්ත්රණ

සරල අනුපාත සීමා ඇල්ගොරිතම හෝ ලිපින, සුදු ලැයිස්තු, රටවල් ආදිය මත පදනම්ව වඩාත් සංකීර්ණ රථවාහන පෙරීමේ විකල්ප.

හෝඩුවාවක් ඉල්ලන්න

ප්‍රවේශයන් වෙතින් නිශ්චිත සේවා / කරල්, සහ ඉතා මැනවින් සේවා / කරල් අතර ඉල්ලීම් නිරීක්ෂණය කිරීමට, ලුහුබැඳීමට සහ නිදොස් කිරීමට ඇති හැකියාව.

ඩබ්ලිව්

සහාය යෙදුම් ගිනි පවුර.

පාලකයන්

මත පදනම්ව පාලක ලැයිස්තුව පිහිටුවන ලදී නිල Kubernetes ලියකියවිලි и මෙම වගුව. නිශ්චිතභාවය හෝ අඩු ව්‍යාප්තිය (සංවර්ධනයේ මුල් අවධිය) හේතුවෙන් අපි ඒවායින් සමහරක් සමාලෝචනයෙන් බැහැර කළෙමු. ඉතිරිය පහත සාකච්ඡා කෙරේ. විසඳුම් පිළිබඳ පොදු විස්තරයකින් ආරම්භ කර සාරාංශ වගුවකින් ඉදිරියට යමු.

Kubernetes වෙතින් ඇතුල් වීම

වෙබ් අඩවිය: github.com/kubernetes/ingress-nginx
බලපත්‍රය: Apache 2.0

මෙය Kubernetes සඳහා නිල පාලකය වන අතර ප්‍රජාව විසින් සංවර්ධනය කරනු ලැබේ. පැහැදිලිවම නමෙන්, එය nginx මත පදනම් වී ඇති අතර අමතර විශේෂාංග ක්‍රියාත්මක කිරීමට භාවිතා කරන වෙනත් Lua ප්ලගීන කට්ටලයක් මඟින් අනුපූරක වේ. nginx හි ජනප්‍රියතාවය සහ පාලකයක් ලෙස භාවිතා කරන විට අවම වෙනස් කිරීම් හේතුවෙන්, මෙම විකල්පය සාමාන්‍ය ඉංජිනේරුවෙකු සඳහා (වෙබ් අත්දැකීම් සහිත) වින්‍යාස කිරීමට පහසුම සහ පහසුම විය හැකිය.

NGINX Inc විසින් ඇතුල්වීම.

වෙබ් අඩවිය: github.com/nginxinc/kubernetes-ingress
බලපත්‍රය: Apache 2.0

nginx සංවර්ධකයින්ගේ නිල නිෂ්පාදනය. මත පදනම් වූ ගෙවුම් අනුවාදයක් ඇත NGINX Plus. ප්‍රධාන අදහස නම් ඉහළ මට්ටමේ ස්ථාවරත්වයක්, නිරන්තර පසුගාමී අනුකූලතාවයක්, බාහිර මොඩියුලයක් නොමැතිකම සහ ප්‍රකාශිත වැඩි වේගය (නිල පාලකයට සාපේක්ෂව), ලුවා ප්‍රතික්ෂේප කිරීම හේතුවෙන් සාක්ෂාත් කර ගැනීමයි.

නිල පාලකය සමඟ සසඳන විට පවා (එකම Lua මොඩියුල නොමැතිකම හේතුවෙන්) නිදහස් අනුවාදය සැලකිය යුතු ලෙස අඩු වේ. ඒ අතරම, ගෙවූ තැනැත්තාට තරමක් පුළුල් අතිරේක ක්‍රියාකාරීත්වයක් ඇත: තත්‍ය කාලීන ප්‍රමිතික, JWT වලංගුකරණය, ක්‍රියාකාරී සෞඛ්‍ය පරීක්‍ෂා කිරීම් සහ තවත් දේ. NGINX Ingress වලට වඩා වැදගත් වාසියක් වන්නේ TCP / UDP ගමනාගමනය සඳහා පූර්ණ සහාය වීමයි (සහ ප්‍රජා අනුවාදයේ ද!). අඩු - නොමැති වීම කෙසේ වෙතත්, "සංවර්ධකයින් සඳහා ඉහළම ප්‍රමුඛතාවයක් ඇති" රථවාහන බෙදා හැරීමේ විශේෂාංගය, නමුත් ක්‍රියාත්මක කිරීමට කාලය ගතවේ.

කොං ඇතුල්වීම

වෙබ් අඩවිය: github.com/Kong/kubernetes-ingress-controller
බලපත්‍රය: Apache 2.0

Kong Inc විසින් නිෂ්පාදනය කරන ලදී. අනුවාද දෙකකින්: වාණිජ සහ නොමිලේ. Lua මොඩියුල විශාල සංඛ්‍යාවක් සමඟින් දීර්ඝ කර ඇති nginx මත පදනම්ව.

මුලදී, එය API ඉල්ලීම් සැකසීම සහ මාර්ගගත කිරීම කෙරෙහි අවධානය යොමු කරන ලදී, i.e. API Gateway එකක් ලෙස, නමුත් මේ වන විට එය සම්පූර්ණ Ingress controller එකක් බවට පත්ව ඇත. ප්‍රධාන වාසි: ස්ථාපනය කිරීමට සහ වින්‍යාස කිරීමට පහසු සහ පුළුල් පරාසයක අතිරේක විශේෂාංග ක්‍රියාත්මක කරන ලද අතිරේක මොඩියුල (තෙවන පාර්ශවීය සංවර්ධකයින් ඇතුළුව) බොහෝය. කෙසේ වෙතත්, ගොඩනඟන ලද කාර්යයන් දැනටමත් බොහෝ හැකියාවන් ලබා දෙයි. රැකියා වින්‍යාසය CRD සම්පත් භාවිතයෙන් සිදු කෙරේ.

නිෂ්පාදනයේ වැදගත් ලක්ෂණයක් - එකම සමෝච්ඡය තුළ වැඩ කිරීම (හරස් නම් පරතරය වෙනුවට) මතභේදාත්මක මාතෘකාවකි: සමහරුන්ට එය අවාසියක් ලෙස පෙනෙනු ඇත (ඔබ එක් එක් සමෝච්ඡය සඳහා ආයතන නිෂ්පාදනය කළ යුතුය), සහ යමෙකුට එය විශේෂාංගයකි ( බීоවැඩි හුදකලා මට්ටම, ලෙස එක් පාලකයක් කැඩී ඇත්නම්, ගැටළුව පරිපථයට පමණක් සීමා වේ).

ට්රේෆික්

වෙබ් අඩවිය: github.com/containous/traefik
බලපත්රය: MIT

ක්ෂුද්‍ර සේවා සහ ඒවායේ ගතික පරිසරය සඳහා ඉල්ලීම් මාර්ගගත කිරීම සමඟ වැඩ කිරීමට මුලින් නිර්මාණය කරන ලද ප්‍රොක්සියක්. එබැවින්, බොහෝ ප්‍රයෝජනවත් විශේෂාංග: නැවත පණගැන්වීමකින් තොරව වින්‍යාසය යාවත්කාලීන කිරීම, සමතුලිත කිරීමේ ක්‍රම විශාල සංඛ්‍යාවක් සඳහා සහාය, වෙබ් අතුරු මුහුණත, ප්‍රමිතික යොමු කිරීම, විවිධ ප්‍රොටෝකෝල සඳහා සහාය, REST API, කැනරි නිකුතු සහ තවත් බොහෝ දේ. තවත් හොඳ විශේෂාංගයක් වන්නේ කොටුවෙන් පිටත සහතික සංකේතනය කරමු සඳහා සහය වීමයි. අවාසිය නම්, ඉහළ උපයෝගිතා (HA) සංවිධානය කිරීම සඳහා, පාලකයට තමන්ගේම KV ගබඩාවක් ස්ථාපනය කර සම්බන්ධ කිරීමට සිදුවනු ඇත.

HAProxy

වෙබ් අඩවිය: github.com/jcmoraisjr/haproxy-ingress
බලපත්‍රය: Apache 2.0

HAProxy දිගු කලක් තිස්සේ ප්‍රොක්සි සහ ගමනාගමන සමතුලිතතාවයක් ලෙස හැඳින්වේ. Kubernetes පොකුරක කොටසක් ලෙස, එය "මෘදු" වින්‍යාස යාවත්කාලීන කිරීමක් (ගමන් ගමනාගමනය නැතිවීමකින් තොරව), DNS මත පදනම් වූ සේවා සොයාගැනීම, API භාවිතයෙන් ගතික වින්‍යාසය ලබා දෙයි. CM ප්‍රතිස්ථාපනය කිරීමෙන් වින්‍යාස අච්චුව සම්පූර්ණයෙන්ම අභිරුචිකරණය කිරීම මෙන්ම එහි ඇති Sprig පුස්තකාල කාර්යයන් භාවිතා කිරීමේ හැකියාවද ආකර්ශනීය විය හැකිය. සාමාන්යයෙන්, විසඳුමේ ප්රධාන අවධාරණය වන්නේ අධික වේගය, එහි ප්රශස්තකරණය සහ පරිභෝජනය කරන ලද සම්පත් වල කාර්යක්ෂමතාවයි. පාලකයේ වාසිය වන්නේ විවිධ සමතුලිත ක්රම වල වාර්තාගත සංඛ්යාවක සහායයි.

වොයේජර්

වෙබ් අඩවිය: github.com/appscode/voyager
බලපත්‍රය: Apache 2.0

සපයන්නන් විශාල සංඛ්‍යාවක් මත පුළුල් පරාසයක විශේෂාංග සඳහා සහය දක්වන විශ්වීය විසඳුමක් ලෙස ස්ථානගත කර ඇති HAproxy පාලකය මත පදනම්ව. L7 සහ L4 හි ගමනාගමනය සමතුලිත කිරීම සඳහා අවස්ථාවක් ලබා දෙන අතර, සමස්තයක් ලෙස TCP L4 ගමනාගමනය සමතුලිත කිරීම විසඳුමේ ප්‍රධාන අංගයක් ලෙස හැඳින්විය හැක.

සමෝච්ඡය

වෙබ් අඩවිය: github.com/heptio/contour
බලපත්‍රය: Apache 2.0

මෙම විසඳුම එන්වෝයි මත පමණක් පදනම් නොවේ: එය සංවර්ධනය කරන ලදී එකට මෙම ජනප්‍රිය ප්‍රොක්සියේ කතුවරුන් සමඟ. වැදගත් අංගයක් වන්නේ IngressRoute CRD සම්පත් භාවිතයෙන් Ingress සම්පත් පාලනය වෙන් කිරීමේ හැකියාවයි. එකම පොකුරක් භාවිතා කරන බොහෝ සංවර්ධන කණ්ඩායම් සහිත සංවිධාන සඳහා, මෙය අසල්වැසි ලූපවල ගමනාගමනය සමඟ වැඩ කිරීමේ ආරක්ෂාව උපරිම කිරීමට සහ ඇතුල් වීමේ සම්පත් වෙනස් කිරීමේදී දෝෂ වලින් ආරක්ෂා කිරීමට උපකාරී වේ.

එය විස්තීරණ සමතුලිත ක්‍රම මාලාවක් ද ඉදිරිපත් කරයි (ඉල්ලීම දර්පණය, ස්වයංක්‍රීය පුනරාවර්තනය, ඉල්ලීම් අනුපාත සීමා කිරීම සහ තවත් බොහෝ දේ ඇත), ගමනාගමන ප්‍රවාහ සහ අසාර්ථකත්වය පිළිබඳ සවිස්තරාත්මක අධීක්ෂණය. සමහර විට යමෙකුට එය ඇලෙන සුළු සැසි සඳහා සහාය නොමැතිකම සැලකිය යුතු අඩුපාඩුවක් වනු ඇත (වැඩ වුවද දැනටමත් සිදුවෙමින් පවතී).

ඉස්තියෝ ඇතුල්වීම

වෙබ් අඩවිය: istio.io/docs/tasks/traffic-management/ingress
බලපත්‍රය: Apache 2.0

පිටතින් එන ගමනාගමනය කළමනාකරණය කරන Ingress පාලකයක් පමණක් නොව, පොකුර තුළ ඇති සියලුම ගමනාගමනය පාලනය කරන විස්තීර්ණ සේවා දැල් විසඳුමකි. ආවරණය යටතේ, එන්වෝයි එක් එක් සේවාව සඳහා සයිඩ්කාර් ප්‍රොක්සියක් ලෙස භාවිතා කරයි. සාරාංශයක් ලෙස, මෙය "ඕනෑම දෙයක් කළ හැකි" විශාල සංයෝජනයක් වන අතර, එහි ප්රධාන අදහස වන්නේ උපරිම කළමනාකාරිත්වය, ව්යාප්තිය, ආරක්ෂාව සහ විනිවිදභාවයයි. එය සමඟින්, ඔබට රථවාහන මාර්ගගත කිරීම, සේවා අතර අවසර ලබා ගැනීම, සමතුලිත කිරීම, අධීක්ෂණය, කැනරි නිකුතු සහ තවත් බොහෝ දේ මනාව සකස් කළ හැකිය. ලිපි මාලාවේ Istio ගැන වැඩිදුර කියවන්න "Istio සමඟ microservices වෙත ආපසු".

තානාපති

වෙබ් අඩවිය: github.com/datawire/ambassador
බලපත්‍රය: Apache 2.0

එන්වෝයි මත පදනම් වූ තවත් විසඳුමක්. එය නොමිලේ සහ වාණිජ අනුවාද ඇත. එය "සම්පූර්ණයෙන්ම Kubernetes වෙත ආවේණික" ලෙස ස්ථානගත කර ඇත, එය අනුරූප වාසි ගෙන එයි (K8s පොකුරේ ක්‍රම සහ ආයතන සමඟ දැඩි ලෙස ඒකාබද්ධ වීම).

සංසන්දනාත්මක වගුව

ඉතින්, ලිපියේ කූටප්රාප්තිය මෙම විශාල වගුවයි:

Kubernetes සඳහා Ingress controllers පිළිබඳ දළ විශ්ලේෂණය සහ සංසන්දනය

එය සමීප දසුනක් සඳහා ක්ලික් කළ හැකි අතර, ආකෘතියෙන් ද ලබා ගත හැකිය ගූගල් ෂීට්.

සාරාංශ කිරීමට

මෙම ලිපියේ පරමාර්ථය වන්නේ ඔබේ විශේෂිත අවස්ථාවෙහිදී කුමන තේරීමක් කළ යුතුද යන්න පිළිබඳ වඩාත් සම්පූර්ණ අවබෝධයක් (කෙසේ වෙතත්, කිසිසේත් සම්පූර්ණ නොවේ!) ලබා දීමයි. සුපුරුදු පරිදි, සෑම පාලකයෙකුටම තමන්ගේම වාසි සහ අවාසි ඇත ...

Kubernetes වෙතින් වන සම්භාව්‍ය Ingress එහි පවතින බව සහ ඔප්පු කිරීම සඳහා හොඳ වේ, ප්‍රමාණවත් තරම් පොහොසත් විශේෂාංග - සාමාන්‍යයෙන්, එය “ඇස් සඳහා ප්‍රමාණවත්” විය යුතුය. කෙසේ වෙතත්, ස්ථාවරත්වය, විශේෂාංග මට්ටම සහ සංවර්ධනය සඳහා වැඩි අවශ්‍යතා තිබේ නම්, ඔබ NGINX Plus සහ ගෙවන දායකත්වයක් සමඟ ඇතුල් වීම කෙරෙහි අවධානය යොමු කළ යුතුය. Kong සතුව පොහොසත්ම ප්ලග්-ඉන් කට්ටලයක් ඇත (සහ, ඒ අනුව, ඔවුන් සපයන අවස්ථා), සහ ගෙවන ලද අනුවාදයේ ඒවායින් වැඩි ගණනක් ඇත. API Gateway, CRD සම්පත් මත පදනම් වූ ගතික වින්‍යාසය, මෙන්ම මූලික Kubernetes සේවාවන් ලෙස වැඩ කිරීමට එයට ඕනෑ තරම් අවස්ථා තිබේ.

තුලනය සහ අවසර ලබා ගැනීමේ ක්‍රම සඳහා වැඩි අවශ්‍යතා සමඟ, Traefik සහ HAProxy දෙස බලන්න. මේවා විවෘත මූලාශ්‍ර ව්‍යාපෘති, වසර ගණනාවක් පුරා ඔප්පු කර ඇති, ඉතා ස්ථායී සහ ක්‍රියාකාරීව සංවර්ධනය වෙමින් පවතී. සමෝච්ඡය දැන් වසර කිහිපයක් තිස්සේ නිකුත් වී ඇත, නමුත් එය තවමත් තරුණ වැඩියි පෙනෙන අතර එන්වෝයි මත මූලික අංග පමණක් එකතු කර ඇත. යෙදුම ඉදිරිපිට WAF තිබීම / කාවැද්දීම සඳහා අවශ්‍යතා තිබේ නම්, ඔබ Kubernetes හෝ HAProxy වෙතින් එකම ඇතුල්වීම කෙරෙහි අවධානය යොමු කළ යුතුය.

සහ විශේෂාංග අනුව පොහොසත්ම වන්නේ එන්වෝයි මත ගොඩනගා ඇති නිෂ්පාදන, විශේෂයෙන් ඉස්ටියෝ ය. එය "ඕනෑම දෙයක් කළ හැකි" සවිස්තරාත්මක විසඳුමක් බව පෙනේ, කෙසේ වෙතත්, වෙනත් විසඳුම් වලට වඩා වින්‍යාස කිරීම / දියත් කිරීම / පරිපාලනය සඳහා සැලකිය යුතු ඉහළ ප්‍රවේශ සීමාවක් අදහස් කරයි.

අපි 80-90% අවශ්‍යතා ආවරණය කරන සම්මත පාලකයක් ලෙස Kubernetes වෙතින් Ingress තෝරාගෙන තවමත් භාවිතා කර ඇත. එය තරමක් විශ්වාසදායක, වින්‍යාස කිරීමට සහ පුළුල් කිරීමට පහසුය. සාමාන්‍යයෙන්, නිශ්චිත අවශ්‍යතා නොමැති විට, එය බොහෝ පොකුරු/යෙදුම් වලට ගැලපේ. එකම විශ්වීය සහ සාපේක්ෂ සරල නිෂ්පාදන වලින්, Traefik සහ HAProxy නිර්දේශ කළ හැකිය.

ප්රාදේශීය සභා

අපගේ බ්ලොග් අඩවියේ ද කියවන්න:

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න