ባለ 3-መንገድ ወደ werf ውህደት፡ ወደ ኩበርኔትስ ከሄልም ጋር “በስቴሮይድ ላይ” ማሰማራት

እኛ (እና እኛ ብቻ ሳንሆን) ለረጅም ጊዜ ስንጠብቀው የነበረው ነገር ተከስቷል፡- werf, የእኛ ክፍት ምንጭ አፕሊኬሽኖችን ለመገንባት እና ወደ ኩበርኔትስ ለማድረስ አሁን ባለ 3-መንገድ ውህደቶችን በመጠቀም ለውጦችን ይደግፋል! ከዚህ በተጨማሪ እነዚህን ሀብቶች እንደገና ሳይገነቡ ያሉትን የ K8s ሀብቶች ወደ Helm ልቀቶች መውሰድ ይቻላል.

ባለ 3-መንገድ ወደ werf ውህደት፡ ወደ ኩበርኔትስ ከሄልም ጋር “በስቴሮይድ ላይ” ማሰማራት

በጣም አጭር ከሆነ እናስቀምጣለን WERF_THREE_WAY_MERGE=enabled - ማሰማራት እናገኛለን "እንደ ውስጥ kubectl apply"ከነባር Helm 2 ጭነቶች እና ትንሽ ተጨማሪ ጋር ተኳሃኝ.

ግን በንድፈ ሀሳቡ እንጀምር፡ ባለ 3-መንገድ-ማዋሃድ ፕላቶች በትክክል ምንድናቸው፣ ሰዎች እነሱን የማፍለቅ ዘዴን እንዴት አመጡ እና በ CI/CD ሂደቶች በኩበርኔትስ ላይ የተመሰረተ መሠረተ ልማት ለምን አስፈላጊ ናቸው? እና ከዚያ በኋላ, በ werf ውስጥ ባለ 3-መንገድ-ማዋሃድ ምን እንደሆነ, ምን አይነት ሁነታዎች በነባሪነት ጥቅም ላይ እንደሚውሉ እና እንዴት እንደሚያስተዳድሩ እንይ.

ባለ 3-መንገድ-ማዋሃድ ፕላስተር ምንድን ነው?

ስለዚህ፣ በ YAML ውስጥ የተገለጹትን ሀብቶች ወደ ኩበርኔትስ የማውጣት ስራ እንጀምር።

ከሃብቶች ጋር ለመስራት የኩበርኔትስ ኤፒአይ የሚከተሉትን መሰረታዊ ስራዎችን ያቀርባል፡ መፍጠር፣ መለጠፍ፣ መተካት እና መሰረዝ። በእነሱ እርዳታ ወደ ክላስተር ምቹ የሆነ ቀጣይነት ያለው የመገልገያ ግንባታ መገንባት አስፈላጊ ነው ተብሎ ይታሰባል. እንዴት?

kubectl አስፈላጊ ትዕዛዞች

በኩበርኔትስ ውስጥ ያሉትን ነገሮች ለማስተዳደር የመጀመሪያው አቀራረብ እነዚያን ነገሮች ለመፍጠር፣ ለማሻሻል እና ለመሰረዝ የ kubectl አስፈላጊ ትዕዛዞችን መጠቀም ነው። በቀላል አነጋገር፡-

  • ቡድን kubectl run ሥራን ወይም ሥራን ማካሄድ ይችላሉ-
    kubectl run --generator=deployment/apps.v1 DEPLOYMENT_NAME --image=IMAGE
  • ቡድን kubectl scale - የተባዙትን ቁጥር ይቀይሩ;
    kubectl scale --replicas=3 deployment/mysql
  • እና የመሳሰሉት.

ይህ አቀራረብ በመጀመሪያ ሲታይ ምቹ ሊመስል ይችላል. ሆኖም ችግሮች አሉ-

  1. ከባድ ነው። አውቶማቲክ.
  2. እንዴት አወቃቀሩን ያንጸባርቁ በጊት ውስጥ? በክላስተር ላይ የሚከሰቱ ለውጦችን እንዴት መገምገም ይቻላል?
  3. እንዴት ማቅረብ እንደሚቻል መራባት ዳግም ሲጀመር ውቅሮች?
  4. ...

ይህ አካሄድ አፕሊኬሽኑን እና መሠረተ ልማትን እንደ ኮድ (IaC; ወይም እንዲያውም) ከማከማቸት ጋር ጥሩ እንደማይሆን ግልጽ ነው። GitOps እንደ ይበልጥ ዘመናዊ አማራጭ, በ Kubernetes ስነ-ምህዳር ውስጥ ተወዳጅነት በማግኘት). ስለዚህ, እነዚህ ትዕዛዞች በ kubectl ውስጥ ተጨማሪ እድገትን አላገኙም.

ክዋኔዎችን ይፍጠሩ፣ ያግኙ፣ ይተኩ እና ይሰርዙ

ከቀዳሚ ጋር መፍጠር ቀላል ነው: አንጸባራቂውን ወደ ቀዶ ጥገናው ይላኩ create kube api እና ሀብቱ ተፈጥሯል. የ YAML መግለጫው በ Git ውስጥ ሊከማች እና ትዕዛዙን በመጠቀም ሊፈጠር ይችላል። kubectl create -f manifest.yaml.

С በማስወገድ ላይ እንዲሁም ቀላል: ተመሳሳይ መተካት manifest.yaml ከጊት ወደ ቡድን kubectl delete -f manifest.yaml.

ክዋኔ replace ሀብቱን እንደገና ሳይፈጥሩ የንብረት ውቅረትን በአዲስ መተካት ሙሉ በሙሉ ይፈቅድልዎታል። ይህ ማለት በንብረት ላይ ለውጥ ከማድረግዎ በፊት የአሁኑን ስሪት ከኦፕሬሽኑ ጋር መጠየቁ ምክንያታዊ ነው። get, ይቀይሩት እና በቀዶ ጥገናው ያዘምኑት replace. kube apiserver ተገንብቷል። ብሩህ ተስፋ መቆለፍ እና, ከቀዶ ጥገና በኋላ ከሆነ get እቃው ተለውጧል, ከዚያም ክዋኔው replace አይሰራም።

አወቃቀሩን በ Git ውስጥ ለማከማቸት እና ምትክን በመጠቀም ለማዘመን, ቀዶ ጥገናውን ማድረግ ያስፈልግዎታል get፣ ከ Git የሚገኘውን ውቅረት ከተቀበልነው ጋር ያዋህዱ እና ያስፈጽሙ replace. በነባሪ kubectl ትዕዛዙን ብቻ እንዲጠቀሙ ይፈቅድልዎታል kubectl replace -f manifest.yamlየት manifest.yaml - መጫን ያለበት አስቀድሞ ሙሉ በሙሉ የተዘጋጀ (በእኛ ሁኔታ የተዋሃደ) አንጸባራቂ። ተጠቃሚው የማዋሃድ መግለጫዎችን መተግበር እንዳለበት ታወቀ፣ እና ይህ ቀላል ጉዳይ አይደለም…

ምንም እንኳን ልብ ሊባል የሚገባው ጉዳይ ነው። manifest.yaml እና በጂት ውስጥ ተከማችቷል ፣ አንድ ነገር መፍጠር ወይም ማዘመን አስፈላጊ መሆኑን አስቀድመን ማወቅ አንችልም - ይህ በተጠቃሚ ሶፍትዌር መከናወን አለበት።

ጠቅላላ: ቀጣይነት ያለው ልቀት መገንባት እንችላለን መፍጠር፣ መተካት እና መሰረዝ ብቻ በመጠቀም የመሠረተ ልማት ውቅር በጊት ውስጥ ከኮዱ እና ምቹ CI/ሲዲ ጋር መቀመጡን ማረጋገጥ?

በመርህ ደረጃ፣ እንችላለን... ለዚህ የማዋሃድ ስራውን መተግበር ያስፈልግዎታል ማኒፌስቶዎች እና አንድ ዓይነት ማሰሪያ፡-

  • በክላስተር ውስጥ ያለ ነገር መኖሩን ያረጋግጣል ፣
  • የመነሻ ሀብቶችን መፍጠር ፣
  • ያዘምናል ወይም ይሰርዘዋል።

በሚዘምንበት ጊዜ፣ እባክዎ ያንን ልብ ይበሉ ሃብት ተቀይሮ ሊሆን ይችላል። ካለፈው ጀምሮ get እና የብሩህ መቆለፊያን ጉዳይ በራስ-ሰር ያዙ - ተደጋጋሚ የማዘመን ሙከራዎችን ያድርጉ።

ሆኖም ግን, kube-apiserver ሃብቶችን ለማዘመን ሌላ መንገድ ሲያቀርብ ለምን መንኮራኩሩን ያድሳል፡ ክዋኔው። patch፣ ከተገለጹት አንዳንድ ችግሮች ተጠቃሚውን የሚያቃልለው?

መጣፈያ

አሁን ወደ ፕላስተሮች ደርሰናል.

ጥገናዎች በኩበርኔትስ ውስጥ ባሉ ነገሮች ላይ ለውጦችን ለመተግበር ዋና መንገዶች ናቸው። ኦፕሬሽን patch እንደሚከተለው ይሰራል

  • የkube-apiserver ተጠቃሚ በJSON ቅጽ ላይ ፕላስተር መላክ እና እቃውን መግለጽ አለበት።
  • እና apiserver ልሹ አሁን ያለውን የነገሩን ሁኔታ ይቋቋማል እና ወደ አስፈላጊው ቅጽ ያመጣል.

በዚህ ጉዳይ ላይ ብሩህ መቆለፊያ አያስፈልግም. ይህ ክዋኔ ከመተካት የበለጠ ገላጭ ነው, ምንም እንኳን መጀመሪያ ላይ ሌላ መንገድ ቢመስልም.

በዚህ መንገድ

  • ኦፕሬሽን በመጠቀም create ከጊት በተገለጠው መሠረት አንድ ነገር እንፈጥራለን ፣
  • በ እገዛ delete - ዕቃው የማይፈለግ ከሆነ ይሰርዙ ፣
  • በ እገዛ patch - እቃውን እንለውጣለን, በጊት ውስጥ ወደተገለጸው ቅጽ እናመጣለን.

ነገር ግን, ይህንን ለማድረግ, መፍጠር ያስፈልግዎታል ትክክለኛ ጠጋኝ!

በ Helm 2: ባለ 2-መንገድ-ውህደት ውስጥ ጥገናዎች እንዴት እንደሚሠሩ

መጀመሪያ መልቀቂያ ሲጭኑ ሄልም ቀዶ ጥገናውን ያከናውናል create ለገበታ መርጃዎች.

ለእያንዳንዱ መርጃ የ Helm ልቀት ሲያዘምኑ፡-

  • ከቀዳሚው ገበታ እና አሁን ባለው የገበታ ሥሪት መካከል ባለው የግብዓት ሥሪት መካከል ያለውን ንጣፍ ይመለከታል ፣
  • ይህንን ፕላስተር ይተገበራል።

ይህንን ፕላስተር እንጠራዋለን ባለ 2-መንገድ መጋጠሚያበፍጥረቱ ውስጥ 2 ማኒፌስቶዎች ስለሚሳተፉ፡-

  • ከቀዳሚው የተለቀቀው የመረጃ ምንጭ ፣
  • የመረጃ ምንጭ አሁን ካለው ምንጭ።

ክዋኔን ሲያስወግዱ delete በ kube apiserver በቀደመው እትም ላይ ለታወጁ ሀብቶች ተጠርቷል ነገር ግን አሁን ባለው ያልተገለጸ።

የ 2 መንገድ ውህደት ጠጋኝ አቀራረብ ችግር አለው፡ ወደ እሱ ይመራል። በክላስተር ውስጥ ካለው የሀብቱ ትክክለኛ ሁኔታ እና በጊት ውስጥ ካለው አንጸባራቂ ጋር አለመመሳሰል.

የችግሩን ምሳሌ በምሳሌ

  • በጊት ውስጥ አንድ ገበታ መስኩ ያለበትን አንጸባራቂ ያከማቻል image የማሰማራት ጉዳዮች ubuntu:18.04.
  • ተጠቃሚ በ kubectl edit የዚህን መስክ ዋጋ ወደዚህ ቀይሮታል። ubuntu:19.04.
  • የ Helm ገበታ እንደገና ሲሰራጭ ፕላስተር አያመነጭም, ምክንያቱም ሜዳው image በቀድሞው የተለቀቀው እትም እና አሁን ባለው ገበታ ውስጥ ተመሳሳይ ናቸው.
  • እንደገና ከተሰማሩ በኋላ image አጽም ubuntu:19.04ሰንጠረዡ ቢናገርም ubuntu:18.04.

ከሥነ-ሥርዓት ውጪ ሆነን መግለጫ ጠፋን።

የተመሳሰለ ሀብት ምንድን ነው?

በአጠቃላይ ሲናገሩ ፡፡ ተጠናቀቀ በሩጫ ክላስተር ውስጥ ባለው የመረጃ ሰነዱ እና ከማንፀባረቂያው መካከል ግጥሚያ ማግኘት አይቻልም። ምክንያቱም በእውነተኛ ማኒፌክት ውስጥ በአንዳንድ ተቆጣጣሪዎች በተለዋዋጭ መንገድ ከንብረቱ የሚጨመሩ እና የሚወገዱ የአገልግሎት ማብራሪያዎች፣ ተጨማሪ መያዣዎች እና ሌሎች መረጃዎች ሊኖሩ ይችላሉ። ይህንን ውሂብ በጂት ውስጥ ማስቀመጥ አንችልም እና አንፈልግም። ሆኖም በጂት ውስጥ በግልፅ የገለፅናቸው መስኮች በሚለቀቁበት ጊዜ ተገቢውን ዋጋ እንዲወስዱ እንፈልጋለን።

በጣም አጠቃላይ ሆኖ ይታያል የተመሳሰለ የንብረት ደንብ: ሃብትን በሚለቁበት ጊዜ ከጂት ጋዜጣ ላይ በግልፅ የተገለጹትን (ወይም በቀድሞው ስሪት ውስጥ የተገለጹ እና አሁን የተሰረዙ) መስኮችን መለወጥ ወይም መሰረዝ ይችላሉ ።

ባለ 3-መንገድ መጋጠሚያ

ዋናዉ ሀሣብ ባለ 3-መንገድ መጋጠሚያ: ከጊት የመጨረሻው የተተገበረው የማኒፌክት እትም እና ከጊት በታለመው የማኒፌክተሩ እትም መካከል ያለውን የወቅቱን የማኒፌክት ከሩጫ ክላስተር ግምት ውስጥ በማስገባት መካከል ፕላስተር እናመነጫለን። የተገኘው ፕላስተር የተመሳሰለውን የንብረት ህግ ማክበር አለበት፡-

  • ወደ ዒላማው ስሪት የተጨመሩ አዳዲስ መስኮች በፕላስተር በመጠቀም ይታከላሉ;
  • በመጨረሻው የተተገበረው ስሪት ውስጥ ያሉ እና በዒላማው ስሪት ውስጥ የሌሉ መስኮች በ patch በመጠቀም እንደገና ይጀመራሉ።
  • አሁን ባለው የእቃው ስሪት ውስጥ ካሉት የማሳያው ዒላማው ስሪት የሚለያዩ መስኮች ፕላቹን በመጠቀም ይሻሻላሉ።

ጥገናዎችን የሚያመነጨው በዚህ መርህ ላይ ነው kubectl apply:

  • የመጨረሻው የተተገበረው የአንጸባራቂው እትም በእቃው ማብራሪያ ውስጥ ተከማችቷል ፣
  • ኢላማ - ከተጠቀሰው YAML ፋይል የተወሰደ
  • አሁን ያለው ከሩጫ ዘለላ ነው።

አሁን ንድፈ ሃሳቡን ከመረመርን በኋላ፣ በ werf ውስጥ ምን እንዳደረግን ለመንገር ጊዜው አሁን ነው።

ለውጦችን ወደ werf በመተግበር ላይ

ከዚህ ቀደም ዌርፍ፣ ልክ እንደ Helm 2፣ ባለ 2-መንገድ-ማዋሃድ ጥገናዎችን ተጠቅሟል።

መጠገኛ ጥገና

ወደ አዲስ የ patches አይነት ለመቀየር - 3-መንገድ-መዋሃድ - የመጀመሪያው እርምጃ የሚባለውን አስተዋውቀናል ጥገና ጥገናዎች.

በሚሰማሩበት ጊዜ መደበኛ ባለ 2-መንገድ-ማዋሃድ ፕላስተር ጥቅም ላይ ይውላል፣ ነገር ግን ዌርፍ በተጨማሪም የሀብቱን ትክክለኛ ሁኔታ በጂት ውስጥ ከተጻፈው ጋር የሚያመሳስለውን ንጣፍ ያመነጫል (ይህ ዓይነቱ ንጣፍ ከላይ በተገለጸው ተመሳሳይ የተመሳሰለ የንብረት መመሪያ በመጠቀም ነው የተፈጠረው) .

አለመመሳሰል ከተፈጠረ፣ በስምረቱ መጨረሻ ተጠቃሚው ተዛማጅ መልእክት ያለው ማስጠንቀቂያ እና ንብረቱን ወደ ተመሳሰለ ቅጽ ለማምጣት መተግበር ያለበት ፕላስተር ይቀበላል። ይህ ፕላስተር በልዩ ማብራሪያ ውስጥም ተመዝግቧል werf.io/repair-patch. የተጠቃሚው እጆች እንደሆነ ይታሰባል сам ይህንን ፕላስተር ይተገብራል: werf በጭራሽ አይተገበርም.

የጥገና ጥገናዎችን ማመንጨት በ 3-መንገድ-መዋሃድ መርህ ላይ በትክክል የንጣፎችን አፈጣጠር ለመፈተሽ የሚያስችል ጊዜያዊ መለኪያ ነው, ነገር ግን እነዚህን ጥገናዎች ወዲያውኑ አይጠቀሙ. በአሁኑ ጊዜ ይህ የአሠራር ሁኔታ በነባሪነት ነቅቷል።

ባለ 3-መንገድ-ማዋሃድ ማጣበቂያ ለአዲስ የተለቀቁ ብቻ

ከዲሴምበር 1፣ 2019 ጀምሮ የቅድመ-ይሁንታ እና የአልፋ የwerf ስሪቶች ይጀምራሉ ነባሪ በአዲስ የ Helm ልቀቶች ላይ ብቻ ለውጦችን ተግባራዊ ለማድረግ ሙሉ ባለ 3-መንገድ-ውህደት ጥገናዎችን ይጠቀሙ። ነባር ልቀቶች ባለ 2-መንገድ-መዋሃድ + የጥገና ጥገና ዘዴዎችን መጠቀማቸውን ይቀጥላሉ።

ይህ የአሠራር ሁኔታ በማቀናበር በግልጽ ሊነቃ ይችላል። WERF_THREE_WAY_MERGE_MODE=onlyNewReleases አሁን።

አመለከተ: ባህሪው በበርካታ ልቀቶች ላይ በዌፍ ውስጥ ታየ፡ በአልፋ ቻናል ውስጥ ከስሪት ጋር ተዘጋጅቷል። v1.0.5-አልፋ.19, እና በቅድመ-ይሁንታ ሰርጥ ውስጥ - ከ ጋር v1.0.4-ቤታ.20.

ለሁሉም የተለቀቁ ባለ3-መንገድ-ማዋሃድ ፕላስተር

ከዲሴምበር 15፣ 2019 ጀምሮ፣ ቤታ እና አልፋ የwerf ስሪቶች በሁሉም ልቀቶች ላይ ለውጦችን ለመተግበር ሙሉ ባለ 3-መንገድ-ማዋሃድ ጥገናዎችን በነባሪነት መጠቀም ይጀምራሉ።

ይህ የአሠራር ሁኔታ በማቀናበር በግልጽ ሊነቃ ይችላል። WERF_THREE_WAY_MERGE_MODE=enabled አሁን።

በሃብት አውቶማቲካሊንግ ምን ይደረግ?

በኩበርኔትስ ውስጥ 2 ዓይነት አውቶማቲክ ማድረጊያ ዓይነቶች አሉ-HPA (አግድም) እና ቪፒኤ (ቋሚ)።

አግድም በራስ-ሰር የተባዙትን ቁጥር ይመርጣል, ቀጥ ያለ - የንብረቶች ብዛት. የሁለቱም ቅጂዎች ብዛት እና የግብዓት መስፈርቶች በንብረት መግለጫው ውስጥ ተገልጸዋል (የመረጃ ማኒፌስትን ይመልከቱ)። spec.replicas ወይም spec.containers[].resources.limits.cpu, spec.containers[].resources.limits.memory и другие).

ችግር፡- አንድ ተጠቃሚ ለሃብቶች የተወሰኑ እሴቶችን እንዲገልጽ በገበታ ውስጥ ካዋቀረ ወይም ቅጂዎች እና አውቶማቲክ ማድረጊያዎች ለዚህ ሃብት የነቁ ከሆነ በእያንዳንዱ የማሰማራት werf እነዚህን ዋጋዎች በገበታው ዝርዝር ውስጥ ወደ ተጻፈው ይመልሳል። .

ለችግሩ ሁለት መፍትሄዎች አሉ. ለመጀመር በገበታ አንጸባራቂ ውስጥ አውቶማቲክ እሴቶችን በግልፅ ከመግለጽ መቆጠብ ጥሩ ነው። ይህ አማራጭ በሆነ ምክንያት የማይስማማ ከሆነ (ለምሳሌ፣ የመነሻ ሀብቶች ገደቦችን እና በገበታው ውስጥ ያሉትን የተባዛዎች ብዛት ለማዘጋጀት አመቺ ስለሆነ) ዌርፍ የሚከተሉትን ማብራሪያዎች ይሰጣል።

  • werf.io/set-replicas-only-on-creation=true
  • werf.io/set-resources-only-on-creation=true

እንደዚህ ያለ ማብራሪያ ካለ werf በእያንዳንዱ ማሰማራቱ ላይ ያሉትን ተጓዳኝ እሴቶች ዳግም አያስጀምርም, ነገር ግን ሀብቱ መጀመሪያ ሲፈጠር ብቻ ያስቀምጣቸዋል.

ለበለጠ ዝርዝር የፕሮጀክት ሰነድ ይመልከቱ HPA и VPA.

ባለ 3-መንገድ-መዋሃድ ፕላስተር መጠቀምን ይከለክላል

ተጠቃሚው በአሁኑ ጊዜ የአካባቢ ተለዋዋጭን በመጠቀም በ werf ውስጥ አዲስ ጥገናዎችን መጠቀም መከልከል ይችላል። WERF_THREE_WAY_MERGE_MODE=disabled. ሆኖም ፣ በመጀመር ላይ ከማርች 1፣ 2020 ጀምሮ ይህ እገዳ ተግባራዊ አይሆንም። እና ባለ 3-መንገድ-ማዋሃድ ንጣፎችን ብቻ መጠቀም የሚቻል ይሆናል.

werf ውስጥ ሀብቶች ጉዲፈቻ

ለውጦችን በባለ 3-መንገድ-ማዋሃድ ጥገናዎች የመተግበር ዘዴን ማግኘታችን በክላስተር ውስጥ ያሉትን ሀብቶች ወደ Helm መልቀቅ ያለ ባህሪን ወዲያውኑ ተግባራዊ እንድናደርግ አስችሎናል።

Helm 2 ችግር አለበት፡ ይህን ሃብት ከባዶ ሳትፈጥር ቀደም ሲል በክላስተር ውስጥ ያለውን መገለጫዎች ወደ ገበታ ማከል አትችልም (ተመልከት. #6031, #3275). ዌርፍ አሁን ያሉትን ሀብቶች ለመልቀቅ እንዲቀበል አስተምረናል። ይህንን ለማድረግ አሁን ባለው የሀብቱ ስሪት ላይ ከሩጫ ክላስተር (ለምሳሌ ፣ በመጠቀም) ላይ ማብራሪያ መጫን ያስፈልግዎታል። kubectl edit):

"werf.io/allow-adoption-by-release": RELEASE_NAME

አሁን ሀብቱ በገበታው ላይ መገለጽ አለበት እና በሚቀጥለው ጊዜ werf ተገቢውን ስም የያዘ ልቀት ሲያሰማራ፣ ያለው ሃብት በዚህ ልቀት ተቀባይነት ይኖረዋል እና በእሱ ቁጥጥር ስር ይቆያል። ከዚህም በላይ ለመልቀቅ ሀብትን በመቀበል ሂደት ዌርፍ የንብረቱን ወቅታዊ ሁኔታ ከተራዘመ ክላስተር ወደ ገበታው ላይ ወደተገለጸው ሁኔታ ያመጣል, ተመሳሳይ ባለ 3-መንገድ-ማዋሃድ ጥገናዎችን እና የተመሳሰለውን የሃብት ህግን ይጠቀማል.

አመለከተ: ቅንብር WERF_THREE_WAY_MERGE_MODE የሃብት ጉዲፈቻን አይጎዳውም - በጉዲፈቻ ጊዜ, ባለ 3-መንገድ-ማዋሃድ ንጣፍ ሁልጊዜ ጥቅም ላይ ይውላል.

ዝርዝሮች - ውስጥ ሰነድ.

መደምደሚያዎች እና የወደፊት እቅዶች

ከዚህ ጽሑፍ በኋላ ባለ 3-መንገድ-ማዋሃድ ፕላቶች ምን እንደሆኑ እና ለምን ወደ እነርሱ እንደመጡ የበለጠ ግልጽ እንደሚሆን ተስፋ አደርጋለሁ። ከዌርፍ ፕሮጄክት ልማት ከተግባራዊ እይታ አንጻር የእነርሱ ትግበራ የሄልም መሰል ስርጭትን ለማሻሻል ሌላ እርምጃ ነበር። አሁን Helm 2. ሲጠቀሙ ብዙውን ጊዜ የሚነሱትን የውቅረት ማመሳሰልን ችግሮች መርሳት ይችላሉ.

አሁንም አንዳንድ ችግሮች እና ፈተናዎች እንደ ሄልም መሰል ማሰማራቶች አሉ፣ ለምሳሌ Go አብነቶችን መጠቀም፣ እኛ በቀጣይነት እንቀጥላለን።

ስለ ሃብት ማሻሻያ ዘዴዎች እና ስለ ጉዲፈቻ መረጃ በ ላይም ይገኛል። ይህ የሰነድ ገጽ.

ሄልም 3

ልዩ ትኩረት ሊሰጠው የሚገባው ተለቋል ልክ በሌላ ቀን አዲስ ዋና የሄልም ስሪት - v3 - እሱም እንዲሁም ባለ 3-መንገድ-ማዋሃድ ጥገናዎችን የሚጠቀም እና ቲለርን ያስወግዳል። አዲሱ የሄልም ስሪት ያስፈልገዋል ስደት ነባር ጭነቶች ወደ አዲሱ የመልቀቂያ ማከማቻ ቅርጸት ለመቀየር።

ዌርፍ በበኩሉ በአሁኑ ጊዜ ቲለርን መጠቀምን አስወግዶ ወደ ባለ 3-መንገድ ተቀይሯል እና አክሏል ብዙ ተጨማሪከነባር የ Helm 2 ጭነቶች ጋር ተኳሃኝ ሆኖ ሲቆይ (የማይግሬሽን ስክሪፕቶች መተግበር የለባቸውም)። ስለዚህ፣ werf ወደ Helm 3 እስኪቀየር ድረስ፣ የዌርፍ ተጠቃሚዎች የ Helm 3 ዋና ጥቅሞችን ከ Helm 2 አያጡም (werf ደግሞ እነሱም አላቸው)።

ነገር ግን የዌርፍ ወደ Helm 3 codebase መቀየር የማይቀር ነው እና በቅርብ ጊዜ ውስጥ ይከሰታል። ምናልባት ይህ werf 1.1 ወይም werf 1.2 ይሆናል (በአሁኑ ጊዜ ዋናው የ werf ስሪት 1.0 ነው፤ ስለ werf እትም መሣሪያ የበለጠ መረጃ ለማግኘት፣ ይመልከቱ) እዚህ). በዚህ ጊዜ, Helm 3 ለማረጋጋት ጊዜ ይኖረዋል.

PS

በብሎጋችን ላይ ያንብቡ፡-

ምንጭ: hab.com

አስተያየት ያክሉ