හෙල්ම් උපාංගය සහ එහි අන්තරායන්

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
ටයිෆෝන් භාණ්ඩ ප්‍රවාහන සංකල්පය, ඇන්ටන් ස්වන්පෝයෙල්

මගේ නම Dmitry Sugrobov, මම Leroy Merlin හි සංවර්ධකයෙක්. මෙම ලිපියෙන් මම ඔබට කියන්නම් හෙල්ම් අවශ්‍ය වන්නේ ඇයි, එය Kubernetes සමඟ වැඩ කිරීම සරල කරන්නේ කෙසේද, තුන්වන අනුවාදයේ වෙනස් වී ඇති දේ සහ අක්‍රියතාවයකින් තොරව නිෂ්පාදනයේ යෙදුම් යාවත්කාලීන කිරීමට එය භාවිතා කරන්නේ කෙසේද.

මෙය සම්මන්ත්‍රණයකදී කළ කථාවක් ඇසුරින් කළ සාරාංශයකි @Kubernetes සමුළුව by Mail.ru Cloud Solutions - ඔබට කියවීමට අවශ්‍ය නැතිනම්, වීඩියෝව නරඹන්න.

ඇයි අපි නිෂ්පාදනයේදී Kubernetes භාවිතා කරන්නේ

Leroy Merlin රුසියාවේ සහ යුරෝපයේ DIY සිල්ලර වෙළඳපොලේ ප්රමුඛයා වේ. අපගේ සමාගමට සංවර්ධකයින් සියයකට වඩා, අභ්‍යන්තර සේවකයින් 33 ක් සහ අධි වෙළඳසැල් සහ වෙබ් අඩවියට පිවිසෙන විශාල සංඛ්‍යාවක් ඇත. ඔවුන් සියලු දෙනා සතුටු කිරීම සඳහා, අපි කර්මාන්ත සම්මත ප්රවේශයන් අනුගමනය කිරීමට තීරණය කළා. ක්ෂුද්‍ර සේවා ගෘහ නිර්මාණ ශිල්පය භාවිතයෙන් නව යෙදුම් සංවර්ධනය කිරීම; පරිසරය හුදකලා කිරීමට සහ නිසි ලෙස බෙදා හැරීම සහතික කිරීමට බහාලුම් භාවිතා කරන්න; සහ වාද්‍ය වෘන්දය සඳහා Kubernetes භාවිතා කරන්න. වාද්‍ය වෘන්ද භාවිතා කිරීමේ මිල ශීඝ්‍රයෙන් ලාභදායී වෙමින් පවතී: තාක්‍ෂණය පිළිබඳ ප්‍රවීණ ඉංජිනේරුවන් සංඛ්‍යාව වෙළඳපොලේ වර්ධනය වෙමින් පවතින අතර සැපයුම්කරුවන් සේවයක් ලෙස Kubernetes ඉදිරිපත් කරයි.

කුබර්නෙටස් කරන සෑම දෙයක්ම, ඇත්ත වශයෙන්ම, වෙනත් ආකාරවලින් කළ හැකිය, උදාහරණයක් ලෙස, සමහර ජෙන්කින්ස් ආවරණය කිරීමෙන් සහ ස්ක්‍රිප්ට් වලින් ඩොකර් රචනා කිරීමෙන්, නමුත් සූදානම් කළ සහ විශ්වාසදායක විසඳුමක් තිබේ නම් ජීවිතය සංකීර්ණ කරන්නේ ඇයි? අපි Kubernetes වෙත පැමිණ එය වසරක් තිස්සේ නිෂ්පාදනය සඳහා භාවිතා කරන්නේ එබැවිනි. දැනට අප සතුව කුබර්නෙටස් පොකුරු විසිහතරක් ඇත, එයින් පැරණිම එක වසරකට වඩා පැරණි, කරල් දෙසියයක් පමණ ඇත.

Kubernetes හි විශාල YAML ගොනු වල ශාපය

Kubernetes හි ක්ෂුද්‍ර සේවාවක් දියත් කිරීමට, අපි අවම වශයෙන් YAML ගොනු පහක් සාදන්නෙමු: යෙදවීම, සේවාව, ඇතුල්වීම, වින්‍යාස සිතියම, රහස් සඳහා - සහ ඒවා පොකුරට යවන්න. ඊළඟ යෙදුම සඳහා අපි එකම ජෑම් පැකේජයක් ලියන්නෙමු, තුන්වන එක සමඟ අපි තවත් එකක් ලියන්නෙමු, යනාදිය. අපි ලේඛන ගණන පරිසරයන් ගණනින් ගුණ කළහොත්, අපට දැනටමත් ලිපිගොනු සිය ගණනක් ලැබෙනු ඇත, මෙය තවමත් ගතික පරිසරයන් සැලකිල්ලට නොගනී.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
හෙල්ම් හි මූලික නඩත්තුකරු ඇඩම් රීස් විසින් "" යන සංකල්පය හඳුන්වා දෙන ලදී.Kubernetes හි සංවර්ධන චක්රය", මෙය පෙනෙන්නේ:

  1. YAML පිටපත් කරන්න - YAML ගොනුවක් පිටපත් කරන්න.
  2. YAML අලවන්න - එය අලවන්න.
  3. Fix Indents - fix indents.
  4. නැවත කරන්න - නැවත නැවත කරන්න.

විකල්පය ක්‍රියාත්මක වේ, නමුත් ඔබට YAML ගොනු බොහෝ වාරයක් පිටපත් කිරීමට සිදුවේ. මෙම චක්රය වෙනස් කිරීම සඳහා, හෙල්ම් සොයා ගන්නා ලදී.

හෙල්ම් යනු කුමක්ද?

පළමුව, හෙල්ම් - පැකේජ කළමනාකරු, ඔබට අවශ්ය වැඩසටහන් සොයා ගැනීමට සහ ස්ථාපනය කිරීමට උපකාර කරයි. ස්ථාපනය කිරීමට, උදාහරණයක් ලෙස, MongoDB, ඔබට නිල වෙබ් අඩවියට ගොස් ද්විමය බාගත කිරීමට අවශ්‍ය නැත, විධානය ක්‍රියාත්මක කරන්න helm install stable/mongodb.

දෙවනුව, හෙල්ම් - අච්චු එන්ජිම, ගොනු පරාමිතිකරණය කිරීමට උපකාරී වේ. අපි Kubernetes හි YAML ගොනු සමඟ තත්වය වෙත ආපසු යමු. එකම YAML ගොනුව ලිවීම පහසුය, එයට ස්ථාන දරන්නන් කිහිපයක් එක් කරන්න, එයට හෙල්ම් අගයන් ආදේශ කරනු ඇත. එනම්, විශාල පලංචියක් වෙනුවට, අවශ්‍ය අගයන් නියම වේලාවට ආදේශ කරන සැකිලි කට්ටලයක් ඇත.

තෙවනුව, හෙල්ම් - යෙදවීමේ මාස්ටර්. එය සමඟ ඔබට යෙදුම් ස්ථාපනය කිරීමට, ආපසු හැරවීමට සහ යාවත්කාලීන කිරීමට හැකිය. මෙය කරන්නේ කෙසේදැයි අපි සොයා බලමු.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්

ඔබගේම යෙදුම් යෙදවීමට Helm භාවිතා කරන්නේ කෙසේද

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

  • සැකිලි සහිත ෆෝල්ඩරයක් දක්වන්න;
  • ලේඛනාගාරය .tar එකකට අසුරා එය වෙත යොමු කරන්න;
  • සැකිල්ල දුරස්ථ ගබඩාවකට දමා හෙල්ම් ග්‍රාහකයේ ගබඩාවට සබැඳියක් එක් කරන්න.

ඔබට අගයන් සහිත ගොනුවක් ද අවශ්‍ය වේ - values.yaml. එහි දත්ත සැකිල්ලට ඇතුල් කරනු ලැබේ. අපි එයත් නිර්මාණය කරමු.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
හෙල්ම් හි දෙවන අනුවාදයට අමතර සේවාදායක යෙදුමක් ඇත - ටිලර්. එය Kubernetes වලින් පිටත එල්ලී Helm සේවාදායකයාගේ ඉල්ලීම් සඳහා රැඳී සිටින අතර, ඇමතූ විට, අවශ්‍ය අගයන් අච්චුවට ආදේශ කර එය Kubernetes වෙත යවයි.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
Helm 3 සරලයි: සේවාදායකයේ සැකිලි සැකසීම වෙනුවට, තොරතුරු දැන් සම්පූර්ණයෙන්ම Helm සේවාලාභියාගේ පැත්තෙන් සැකසෙන අතර Kubernetes API වෙත කෙලින්ම යවනු ලැබේ. මෙම සරල කිරීම පොකුරු ආරක්ෂාව වැඩි දියුණු කරන අතර පෙරළීමේ යෝජනා ක්‍රමයට පහසුකම් සපයයි.

කොහොමද ඔක්කොම වැඩ කරන්නේ

විධානය ක්රියාත්මක කරන්න helm install. යෙදුම් නිකුතුවේ නම සඳහන් කර values.yaml වෙත පාත් දෙමු. අවසානයේදී අපි ප්‍රස්ථාරය පිහිටා ඇති ගබඩාව සහ ප්‍රස්ථාරයේ නම දක්වන්නෙමු. උදාහරණයේ, මේවා පිළිවෙලින් "lmru" සහ "bestchart" වේ.

helm install --name bestapp --values values.yaml lmru/bestchart

විධානය ක්‍රියාත්මක කළ හැක්කේ එක් වරක් පමණි, ඒ වෙනුවට නැවත ක්‍රියාත්මක කළ විට install භාවිතා කිරීමට අවශ්ය වේ upgrade. සරල බව සඳහා, විධාන දෙකක් වෙනුවට, ඔබට විධානය ක්රියාත්මක කළ හැකිය upgrade අතිරේක යතුර සමඟ --install. පළමු වරට ක්‍රියාත්මක කරන විට, හෙල්ම් නිකුතුව ස්ථාපනය කිරීමට විධානයක් එවනු ඇති අතර අනාගතයේදී එය යාවත්කාලීන කරනු ඇත.

helm upgrade --install bestapp --values values.yaml lmru/bestchart

හෙල්ම් සමඟ යෙදුමක නව අනුවාදයන් යෙදවීමේ අන්තරායන්

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

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

ක්රමය 1. අවසන් දියත් කිරීමේ සිට තොරතුරු වෙනස් නොකරන්න

එය පවසන පරිදි නිල වෙබ් අඩවිය හෙල්ම්, "කුබර්නෙටස් ප්‍රස්ථාර විශාල හා සංකීර්ණ විය හැක, එබැවින් හෙල්ම් ඕනෑවට වඩා කිසිවක් ස්පර්ශ නොකිරීමට උත්සාහ කරයි." එබැවින්, ඔබ ඩොකර් රෙජිස්ට්‍රියේ යෙදුම් රූපයේ නවතම අනුවාදය යාවත්කාලීන කර විධානය ක්‍රියාත්මක කරන්නේ නම් helm upgrade, එවිට කිසිවක් සිදු නොවනු ඇත. කිසිවක් වෙනස් වී නැති බවත් යෙදුම යාවත්කාලීන කිරීමට Kubernetes වෙත විධානයක් යැවීමට අවශ්‍ය නොවන බවත් හෙල්ම් සිතනු ඇත.

මෙහි සහ පහතින්, නවතම ටැගය පෙන්වන්නේ උදාහරණයක් ලෙස පමණි. ඔබ මෙම ටැගය සඳහන් කරන විට, Kubernetes imagePullPolicy පරාමිතිය කුමක් වුවත්, සෑම අවස්ථාවකදීම ඩොකර් රෙජිස්ට්‍රියෙන් රූපය බාගත කරනු ඇත. නිෂ්පාදනයේ නවතම භාවිතය නුසුදුසු වන අතර අතුරු ආබාධ ඇති කරයි.

ක්රමය 2. රූපයේ LABEL යාවත්කාලීන කරන්න

එකම ලියා ඇති පරිදි ලියකියවිලි, "හෙල්ම් යෙදුමක් යාවත්කාලීන කරන්නේ එය අවසන් නිකුතුවේ සිට වෙනස් වී ඇත්නම් පමණි." මේ සඳහා තාර්කික විකල්පයක් ඩොකර් රූපය තුළම LABEL යාවත්කාලීන කරන බව පෙනේ. කෙසේ වෙතත්, හෙල්ම් යෙදුම් පින්තූර දෙස නොබලන අතර ඒවායේ කිසිදු වෙනසක් ගැන අදහසක් නැත. ඒ අනුව, රූපයේ ලේබල් යාවත්කාලීන කිරීමේදී, හෙල්ම් ඒවා ගැන නොදැන සිටින අතර, යෙදුම් යාවත්කාලීන කිරීමේ විධානය Kubernetes වෙත යවනු නොලැබේ.

ක්රමය 3: යතුරක් භාවිතා කරන්න --force

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
අපි අත්පොත් වෙත හැරී අවශ්ය යතුර සොයා බලමු. යතුර වඩාත්ම අර්ථවත් කරයි --force. පැහැදිලි නම තිබියදීත්, හැසිරීම බලාපොරොත්තු වූවාට වඩා වෙනස් ය. යෙදුම් යාවත්කාලීන කිරීමට බල කිරීම වෙනුවට, එහි සැබෑ අරමුණ අසාර්ථක තත්වයේ පවතින නිකුතුවක් ප්‍රතිසාධනය කිරීමයි. ඔබ මෙම යතුර භාවිතා නොකරන්නේ නම්, ඔබ විසින් විධානයන් අනුපිළිවෙලින් ක්රියාත්මක කළ යුතුය helm delete && helm install --replace. ඒ වෙනුවට යතුර භාවිතා කිරීමට යෝජනා කෙරේ --force, මෙම විධානයන් අනුක්‍රමිකව ක්‍රියාත්මක කිරීම ස්වයංක්‍රීය කරයි. මේ ගැන වැඩි විස්තර අදින්න ඉල්ලීම. යෙදුම් අනුවාදය යාවත්කාලීන කරන ලෙස හෙල්ම්ට පැවසීම සඳහා, අවාසනාවකට, මෙම යතුර ක්‍රියා නොකරනු ඇත.

ක්‍රමය 4. කෙලින්ම Kubernetes හි ලේබල වෙනස් කරන්න

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
විධානය භාවිතයෙන් පොකුරේ කෙලින්ම ලේබලය යාවත්කාලීන කිරීම kubectl edit - නරක අදහස. මෙම ක්‍රියාව ධාවනය වන යෙදුම සහ මුලින් යෙදවීම සඳහා යවන ලද එක අතර තොරතුරු නොගැලපීමකට තුඩු දෙනු ඇත. මෙම නඩුවේ යෙදවීමේදී හෙල්ම්ගේ හැසිරීම එහි අනුවාදයට වඩා වෙනස් වේ: හෙල්ම් 2 කිසිවක් නොකරන අතර හෙල්ම් 3 යෙදුමේ නව අනුවාදය යොදවනු ඇත. හේතුව තේරුම් ගැනීමට, ඔබ Helm ක්රියා කරන ආකාරය තේරුම් ගත යුතුය.

Helm වැඩ කරන්නේ කෙසේද?

යෙදුමක් එහි අවසන් නිකුතුවේ සිට වෙනස් වී ඇත්ද යන්න තීරණය කිරීමට, Helm භාවිතා කළ හැක:

  • Kubernetes හි ධාවනය වන යෙදුම;
  • නව අගයන්.yaml සහ වත්මන් සටහන;
  • හෙල්ම්ගේ අභ්‍යන්තර නිකුතුවේ තොරතුරු.

වඩාත් කුතුහලයෙන් සිටින අය සඳහා: Helm නිකුතු පිළිබඳ අභ්යන්තර තොරතුරු ගබඩා කරන්නේ කොහේද?විධානය ක්‍රියාත්මක කිරීමෙන් helm history, අපි Helm භාවිතයෙන් ස්ථාපනය කර ඇති අනුවාද පිළිබඳ සියලු තොරතුරු ලබා ගනිමු.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
යවන ලද සැකිලි සහ අගයන් පිළිබඳ සවිස්තරාත්මක තොරතුරු ද ඇත. අපට එය ඉල්ලා සිටිය හැක:

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
Helm හි දෙවන අනුවාදයේ, මෙම තොරතුරු "OWNER=TILLER" ලේබලයෙන් සලකුණු කර ඇති ConfigMap හි, Tiller ධාවනය වන නාම අවකාශයේම (පෙරනිමියෙන් kube-system) පිහිටා ඇත:

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

හෙල්ම් උපාංගය සහ එහි අන්තරායන්

දෙවන Helm, යාවත්කාලීනයක් අවශ්‍ය දැයි තේරුම් ගැනීමට උත්සාහ කරන විට, තොරතුරු මූලාශ්‍ර දෙකක් පමණක් භාවිතා කරයි: දැන් එයට සපයා ඇති දේ සහ configMap හි ඇති නිකුතු පිළිබඳ අභ්‍යන්තර තොරතුරු.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
තුන්වන හෙල්ම් තුන්-මාර්ග ඒකාබද්ධ කිරීමේ උපාය මාර්ගයක් භාවිතා කරයි: එම තොරතුරු වලට අමතරව, එය Kubernetes හි දැනට ක්‍රියාත්මක වන යෙදුම ද සැලකිල්ලට ගනී.

හෙල්ම් උපාංගය සහ එහි අන්තරායන්
මෙම හේතුව නිසා, හෙල්ම් හි පැරණි අනුවාදය කිසිවක් නොකරනු ඇත, මන්ද එය පොකුරේ ඇති යෙදුම් තොරතුරු සැලකිල්ලට නොගනී, නමුත් හෙල්ම් 3 විසින් වෙනස්කම් ලබාගෙන නව යෙදුම යෙදවීම සඳහා යවනු ලැබේ.

ක්රමය 5. --recreate-pods ස්විචය භාවිතා කරන්න

යතුරක් සමඟ --recreate-pods යතුර සමඟ ඔබ මුලින් සාක්ෂාත් කර ගැනීමට සැලසුම් කළ දේ ඔබට සාක්ෂාත් කරගත හැකිය --force. බහාලුම් නැවත ආරම්භ වන අතර, imagePullPolicy: සෑම විටම නවතම ටැගය සඳහා ප්‍රතිපත්තියට අනුව (ඉහත පාද සටහනේ මේ ගැන වැඩි විස්තර), Kubernetes විසින් රූපයේ නව අනුවාදයක් බාගත කර දියත් කරනු ඇත. මෙය හොඳම ආකාරයෙන් සිදු නොවනු ඇත: යෙදවීමේ උපායමාර්ගය සැලකිල්ලට නොගෙන, එය සියලු පැරණි යෙදුම් අවස්ථා හදිසියේම අක්‍රිය කර නව ඒවා දියත් කිරීමට පටන් ගනී. නැවත ආරම්භ කිරීමේදී, පද්ධතිය ක්රියා නොකරනු ඇත, පරිශීලකයින් දුක් විඳිනු ඇත.

Kubernetes තුළම, එවැනිම ගැටලුවක් දිගු කලක් පැවතුනි. දැන්, විවෘත කර වසර 4 කට පසුව නිකුත් කිරීම, ගැටළුව නිරාකරණය කර ඇති අතර, Kubernetes හි 1.15 අනුවාදයෙන් පටන් ගෙන, කරල් නැවත ආරම්භ කිරීමේ හැකියාව දිස්වේ.

හෙල්ම් හුදෙක් සියලුම යෙදුම් ක්‍රියා විරහිත කර අසල නව බහාලුම් දියත් කරයි. යෙදුම අක්‍රිය වීමට හේතු නොවන පරිදි, නිෂ්පාදනයේදී ඔබට මෙය කළ නොහැක. මෙය අවශ්‍ය වන්නේ සංවර්ධන අවශ්‍යතා සඳහා පමණක් වන අතර එය සිදු කළ හැක්කේ වේදිකා පරිසරයන් තුළ පමණි.

හෙල්ම් භාවිතයෙන් යෙදුම් අනුවාදය යාවත්කාලීන කරන්නේ කෙසේද?

අපි හෙල්ම් වෙත යවන ලද අගයන් වෙනස් කරන්නෙමු. සාමාන්‍යයෙන්, මේවා රූප ටැගය වෙනුවට ආදේශ කරන අගයන් වේ. ඵලදායි නොවන පරිසරයන් සඳහා බොහෝ විට භාවිතා වන නවතම අවස්ථාවෙහිදී, වෙනස් කළ හැකි තොරතුරු විවරණයක් වන අතර, එය Kubernetes සඳහාම නිෂ්ඵල වන අතර, Helm සඳහා එය යෙදුම යාවත්කාලීන කිරීමේ අවශ්‍යතාවය සඳහා සංඥාවක් ලෙස ක්‍රියා කරනු ඇත. විවරණ අගය පිරවීම සඳහා විකල්ප:

  1. අහඹු අගය සම්මත කාර්යය භාවිතා කරමින් - {{ randAlphaNum 6 }}.
    අවවාදයක් ඇත: එවැනි විචල්‍යයක් සහිත ප්‍රස්ථාරයක් භාවිතා කරන එක් එක් යෙදවීමකින් පසුව, විවරණ අගය අද්විතීය වන අතර, වෙනස්කම් ඇති බව හෙල්ම් උපකල්පනය කරයි. අපි එහි අනුවාදය වෙනස් කර නොමැති වුවද, අපි සැමවිටම යෙදුම නැවත ආරම්භ කරන බව පෙනේ. මෙය තීරනාත්මක නොවේ, මන්ද යත් අක්‍රිය කාලයක් ඇති නොවන නමුත් එය තවමත් අප්‍රසන්න ය.
  2. ඇලවීම ධාරාව දිනය සහ වේලාව - {{ .Release.Date }}.
    විචල්‍යයක් ස්ථිරවම අනන්‍ය විචල්‍යයක් සහිත අහඹු අගයකට සමාන වේ.
  3. වඩාත් නිවැරදි ක්රමයක් වන්නේ භාවිතා කිරීමයි චෙක්සම්. මෙය රූපයේ SHA හෝ git හි අවසාන කැපවීමේ SHA වේ - {{ .Values.sha }}.
    ඒවා ගණන් කර ඇමතුම් පැත්තේ හෙල්ම් සේවාදායකයා වෙත යැවීමට අවශ්‍ය වනු ඇත, උදාහරණයක් ලෙස ජෙන්කින්ස් හි. යෙදුම වෙනස් වී ඇත්නම්, චෙක්සම් වෙනස් වේ. එබැවින්, හෙල්ම් යෙදුම යාවත්කාලීන කරන්නේ අවශ්‍ය වූ විට පමණි.

අපගේ උත්සාහයන් සාරාංශ කරමු

  • හෙල්ම් අවම ආක්‍රමණශීලී ආකාරයෙන් වෙනස්කම් සිදු කරයි, එබැවින් ඩොකර් රෙජිස්ට්‍රියේ යෙදුම් රූප මට්ටමේ ඕනෑම වෙනසක් යාවත්කාලීන කිරීමක් සිදු නොවේ: විධානය ක්‍රියාත්මක කිරීමෙන් පසු කිසිවක් සිදු නොවේ.
  • ප්රධාන --force ගැටළු සහගත නිකුතු ප්‍රතිසාධනය කිරීමට භාවිතා කරන අතර බලහත්කාරයෙන් යාවත්කාලීන කිරීම් සමඟ සම්බන්ධ නොවේ.
  • ප්රධාන --recreate-pods බලහත්කාරයෙන් යෙදුම් යාවත්කාලීන කරනු ඇත, නමුත් එය විනාශකාරී ආකාරයෙන් සිදු කරනු ඇත: එය සියලු බහාලුම් හදිසියේම අක්‍රිය කරයි. පරිශීලකයින් මෙයින් පීඩා විඳිති; ඔබ මෙය නිෂ්පාදනයේදී නොකළ යුතුය.
  • විධානය භාවිතයෙන් Kubernetes පොකුරට සෘජුවම වෙනස්කම් කරන්න kubectl edit එපා: අපි අනුකූලතාව බිඳ දමමු, හෙල්ම් අනුවාදය අනුව හැසිරීම වෙනස් වේ.
  • හෙල්ම් හි නව අනුවාදය නිකුත් කිරීමත් සමඟ බොහෝ සූක්ෂ්මතා මතු වී තිබේ. හෙල්ම් ගබඩාවේ ඇති ගැටළු පැහැදිලි භාෂාවෙන් විස්තර කර ඇත, ඒවා ඔබට විස්තර තේරුම් ගැනීමට උපකාරී වනු ඇත.
  • ප්‍රස්ථාරයකට සංස්කරණය කළ හැකි විවරණයක් එක් කිරීම එය වඩාත් නම්‍යශීලී කරයි. මෙය ඔබට අක්‍රීය කාලයකින් තොරව යෙදුම නිවැරදිව පෙරළීමට ඉඩ සලසයි.

ජීවිතයේ සෑම අංශයකම ක්‍රියාත්මක වන “ලෝක සාමය” චින්තනයක්: භාවිතයට පෙර උපදෙස් කියවන්න, පසුව නොවේ. සම්පූර්ණ තොරතුරු සමඟ පමණක් විශ්වාසදායක පද්ධති ගොඩනැගීමට සහ පරිශීලකයින් සතුටු කිරීමට හැකි වනු ඇත.

වෙනත් අදාළ සබැඳි:

  1. සමඟ දැන හඳුනා ගැනීම හෙල්ම් 3
  2. හෙල්ම් නිල වෙබ් අඩවිය
  3. GitHub හි හෙල්ම් ගබඩාව
  4. 25 ප්රයෝජනවත් Kubernetes මෙවලම්: යෙදවීම සහ කළමනාකරණය

මෙම වාර්තාව මුලින්ම ඉදිරිපත් කළේ @Kubernetes සමුළුව Mail.ru Cloud Solutions මගින්. බලන්න видео වෙනත් කාර්ය සාධන සහ ටෙලිග්‍රාම් හි සිදුවීම් නිවේදන සඳහා දායක වන්න Mail.ru සමූහයේ Kubernetes අවට.

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

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