የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች

"የክላውድ ቤተኛ" ወይም በቀላሉ "የደመና" አፕሊኬሽኖች የተፈጠሩት በተለይ በደመና መሠረተ ልማት ውስጥ ለመስራት ነው። እነሱ በተለምዶ የተገነቡት በኮንቴይነሮች ውስጥ የታሸጉ ያልተጣመሩ የማይክሮ አገልግሎቶች ስብስብ ሲሆን እነሱም በተራው በደመና መድረክ የሚተዳደሩ ናቸው። እንደነዚህ ያሉ አፕሊኬሽኖች በነባሪነት ለውድቀቶች ይዘጋጃሉ ይህም ማለት በአስተማማኝ ሁኔታ ይሰራሉ ​​​​እና ከባድ የመሠረተ ልማት ደረጃ ውድቀቶች ቢኖሩትም እንኳ ይለካሉ. የሳንቲሙ ሌላኛው ወገን የደመናው መድረክ በራስ ሰር ማስተዳደር እንዲችል በኮንቴይነር አፕሊኬሽኖች ላይ የሚጥላቸው ገደቦች (ኮንትራቶች) ናቸው።

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች

ወደ ደመና-ተኮር አፕሊኬሽኖች የመንቀሳቀስን አስፈላጊነት እና አስፈላጊነት ሙሉ በሙሉ ቢያውቁም፣ ብዙ ድርጅቶች አሁንም የት መጀመር እንዳለባቸው አያውቁም። በዚህ ልጥፍ ውስጥ ፣ በኮንቴይነር የተያዙ አፕሊኬሽኖችን በሚገነቡበት ጊዜ ከተከተሉ ፣ የደመና መድረኮችን አቅም እንዲገነዘቡ እና በ IT መሠረተ ልማት ላይ ከባድ ውድቀቶች ቢኖሩትም አስተማማኝ አሠራር እና የመተግበሪያዎች ልኬት እንዲያገኙ የሚያስችልዎትን በርካታ መርሆዎችን እንመለከታለን። ደረጃ. እዚህ የተገለጹት የመርሆቹ የመጨረሻ ግብ እንደ ኩበርኔትስ ባሉ የደመና መድረኮች በራስ ሰር የሚተዳደሩ መተግበሪያዎችን እንዴት መገንባት እንደሚቻል መማር ነው።

የሶፍትዌር ንድፍ መርሆዎች

በፕሮግራሚንግ ዓለም ውስጥ፣ መርሆዎች ሶፍትዌሮችን በሚፈጥሩበት ጊዜ መከተል ያለባቸውን ትክክለኛ አጠቃላይ ህጎች ያመለክታሉ። ከማንኛውም የፕሮግራም ቋንቋ ጋር ሲሰሩ ጥቅም ላይ ሊውሉ ይችላሉ. እያንዳንዱ መርህ የራሱ ግቦች አሉት ፣ እነዚህም ብዙውን ጊዜ አብነቶች እና ልምዶች ናቸው። ከፍተኛ ጥራት ያላቸውን ሶፍትዌሮችን ለመፍጠር በርካታ መሰረታዊ መርሆችም አሉ, ሁሉም ሌሎች የሚፈሱበት. የመሠረታዊ መርሆች አንዳንድ ምሳሌዎች እነሆ።

  • መሳም (ቀላል, ደደብ ያድርጉት) - አያወሳስበው;
  • ደረቅ (ራስህን አትድገም) - እራስህን አትድገም;
  • YANNI (እርስዎ አያስፈልጉትም) - ወዲያውኑ የማይፈለግ ነገር አይፍጠሩ;
  • SoC የጭንቀት መለያየት - ኃላፊነቶችን ማጋራት።

እንደሚመለከቱት ፣ እነዚህ መርሆዎች ምንም ዓይነት ልዩ ህጎችን አያወጡም ፣ ግን በተግባራዊ ልምድ ላይ በመመስረት የጋራ አስተሳሰብ ተብሎ የሚጠራው ምድብ ናቸው ፣ እነዚህም በብዙ ገንቢዎች የሚጋሩ እና በመደበኛነት የሚያመለክቱት።
በተጨማሪም, አለ SOLID - በሮበርት ማርቲን የተቀናበረው ነገር-ተኮር ፕሮግራም እና ዲዛይን የመጀመሪያዎቹ አምስት መርሆዎች ስብስብ። SOLID ሰፊ፣ ክፍት የሆነ፣ ተጨማሪ መርሆችን ያካትታል—በአንድ ላይ ሲተገበር—የተሻሉ የሶፍትዌር ስርዓቶችን ለመፍጠር እና ለረጅም ጊዜ በተሻለ ሁኔታ እንዲቆዩ ያግዛሉ።

የ SOLID መርሆዎች የ OOP መስክ ናቸው እና እንደ ክፍሎች ፣ መገናኛዎች እና ውርስ ባሉ ጽንሰ-ሀሳቦች እና ፅንሰ-ሀሳቦች ቋንቋ ተቀርፀዋል። በማነጻጸር፣ ለደመና አፕሊኬሽኖች የእድገት መርሆች ሊዘጋጁ ይችላሉ፣ እዚህ ያለው መሰረታዊ አካል ብቻ ክፍል ሳይሆን መያዣ ነው። እነዚህን መርሆዎች በመከተል እንደ ኩበርኔትስ ያሉ የደመና መድረኮችን ግቦች እና አላማዎች በተሻለ ሁኔታ የሚያሟሉ በኮንቴይነር የተያዙ መተግበሪያዎችን መፍጠር ይችላሉ።

ክላውድ-ቤተኛ ኮንቴይነሮች፡ የቀይ ኮፍያ አቀራረብ

ዛሬ ማንኛውም መተግበሪያ በአንፃራዊነት በቀላሉ ወደ ኮንቴይነሮች ሊታሸግ ይችላል። ነገር ግን አፕሊኬሽኖች በውጤታማነት አውቶሜትድ እንዲሆኑ እና እንደ ኩበርኔትስ ባሉ የደመና መድረክ ውስጥ እንዲደራጁ፣ ተጨማሪ ጥረት ያስፈልጋል።
ከዚህ በታች ለተዘረዘሩት ሀሳቦች መሠረት የሆነው ዘዴው ነበር። የአስራ ሁለቱ ምክንያቶች መተግበሪያ እና ሌሎች ብዙ የድረ-ገጽ አፕሊኬሽኖችን በመገንባት ላይ በተለያዩ ጉዳዮች ላይ ይሰራሉ, ከምንጭ ኮድ አስተዳደር እስከ ማዛመጃ ሞዴሎች. የተገለጹት መርሆች የሚሠሩት በማይክሮ ሰርቪስ ላይ የተገነቡ እና እንደ ኩበርኔትስ ላሉ የደመና መድረኮች የተነደፉ ኮንቴይነር አፕሊኬሽኖችን ማዘጋጀት ብቻ ነው። በውይይታችን ውስጥ ያለው መሰረታዊ ነገር የእቃ መያዣው ምስል ነው, እና የታለመው ኮንቴይነር አሂድ ጊዜ የእቃ መጫኛ ኦርኬስትራ መድረክ ነው. የታቀዱት መርሆች ግብ በአብዛኛዎቹ የኦርኬስትራ መድረኮች ላይ መርሐግብር፣ ማመጣጠን እና የክትትል ሥራዎችን በራስ ሰር የሚሠሩባቸውን መያዣዎች መፍጠር ነው። መርሆዎቹ በተለየ ቅደም ተከተል አይቀርቡም.

ነጠላ የጭንቀት መርህ (ኤስሲፒ)

ይህ መርህ በብዙ መልኩ ከአንድ የኃላፊነት መርህ ጋር ተመሳሳይ ነው። SRP), የ SOLID ስብስብ አካል የሆነ እና እያንዳንዱ ነገር አንድ ኃላፊነት ሊኖረው እንደሚገባ ይገልጻል, እና ይህ ሃላፊነት ሙሉ በሙሉ በክፍል ውስጥ መካተት አለበት. የ SRP ነጥቡ እያንዳንዱ ሃላፊነት ለለውጥ ምክንያት ነው, እና አንድ ክፍል ለለውጥ አንድ እና አንድ ምክንያት ብቻ ሊኖረው ይገባል.

በኤስሲፒ ውስጥ፣ ከኦኦፒ ክፍል ጋር ሲነፃፀር የመያዣውን ከፍተኛ የአብስትራክሽን ደረጃ እና ሰፊ ዓላማን ለማመልከት “አሳቢነት” ከሚለው ቃል ይልቅ “አሳሳቢ” የሚለውን ቃል እንጠቀማለን። እና የ SRP አላማ አንድ ምክንያት ብቻ እንዲለወጥ ከሆነ, ከ SCP ጀርባ መያዣዎችን እንደገና የመጠቀም እና የመተካት ችሎታን የማስፋት ፍላጎት አለ. SRP ን በመከተል እና ነጠላ ችግርን የሚፈታ መያዣ በመፍጠር እና በተግባራዊ ሁኔታ በተሟላ መንገድ በማዘጋጀት ያንን የመያዣ ምስል በተለያዩ የመተግበሪያ ሁኔታዎች ውስጥ እንደገና የመጠቀም እድሎችን ይጨምራል።

የኤስ.ሲ.ፒ መርህ እያንዳንዱ መያዣ አንድ ነጠላ ችግርን መፍታት እና ጥሩ ማድረግ እንዳለበት ይገልጻል። በተጨማሪም ፣ በኮንቴይነር ዓለም ውስጥ ያለው SCP በ OOP ዓለም ውስጥ ከ SRP ማግኘት ቀላል ነው ፣ ምክንያቱም ኮንቴይነሮች ብዙውን ጊዜ አንድ ነጠላ ሂደትን ያካሂዳሉ ፣ እና ብዙ ጊዜ ይህ ሂደት አንድ ነጠላ ተግባር ይፈታል።

የእቃ መያዢያ ማይክሮ ሰርቪስ ብዙ ችግሮችን በአንድ ጊዜ መፍታት ካለበት፣ ከዚያም ወደ ነጠላ-ተግባር ኮንቴይነሮች ተከፋፍሎ በአንድ ፖድ (የኮንቴይነር መድረክ ዝርጋታ አሃድ) የጎን መኪና እና የኢንቴይነር አብነቶችን በመጠቀም ሊጣመር ይችላል። በተጨማሪም SCP አሮጌ መያዣ (እንደ የድር አገልጋይ ወይም የመልእክት ደላላ ያሉ) ተመሳሳይ ችግር በሚፈታ በአዲስ መተካት ቀላል ያደርገዋል ነገር ግን የተስፋፋ ተግባር ወይም ሚዛኖች በተሻለ።

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች

ከፍተኛ ታዛቢነት መርህ (HOP)

ኮንቴይነሮች አፕሊኬሽኖችን ለማሸግ እና ለማስኬድ እንደ አንድ ወጥ መንገድ ሲያገለግሉ፣ ​​አፕሊኬሽኑ እራሳቸው እንደ ጥቁር ሳጥን ይወሰዳሉ። ነገር ግን፣ እነዚህ የደመና ኮንቴይነሮች ከሆኑ፣ የመያዣዎቹን ጤንነት ለመከታተል እና አስፈላጊ ከሆነ ተገቢውን እርምጃ ለመውሰድ ልዩ ኤፒአይዎችን በጊዜው ጊዜ መስጠት አለባቸው። ያለዚህ, ኮንቴይነሮችን ማዘመን እና የህይወት ዑደታቸውን ማስተዳደር አውቶማቲክን አንድ ማድረግ አይቻልም, ይህ ደግሞ የሶፍትዌር ስርዓቱን መረጋጋት እና አጠቃቀምን ያባብሳል.

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች
በተግባር፣ በኮንቴይነር የተያዘ አፕሊኬሽን ቢያንስ ለተለያዩ የጤና ፍተሻ ዓይነቶች፡ የአኗኗር ፈተናዎች እና ዝግጁነት ፈተናዎች ኤፒአይ ሊኖረው ይገባል። አፕሊኬሽኑ የበለጠ ለመስራት ከጠየቀ፣ ግዛቱን የሚቆጣጠርበት ሌላ መንገድ ማቅረብ አለበት። ለምሳሌ Fluentd, Logstash እና ሌሎች ተመሳሳይ መሳሪያዎችን በመጠቀም ጠቃሚ ክንውኖችን በSTDERR እና STDOUT መግባት። እንዲሁም እንደ OpenTracing፣ Prometheus፣ ወዘተ ካሉ የክትትል እና የመለኪያዎች ስብስብ ቤተ-መጻሕፍት ጋር ውህደት።

በአጠቃላይ አፕሊኬሽኑ አሁንም እንደ ጥቁር ሳጥን ሊታከም ይችላል ነገርግን በተቻለ መጠን በተሻለ መንገድ ለመቆጣጠር እና ለማስተዳደር መድረኩ ከሚያስፈልጋቸው ሁሉም ኤፒአይዎች ጋር መቅረብ አለበት።

የሕይወት ዑደት የተጣጣመ መርህ (ኤልሲፒ)

LCP የ HOP ተቃርኖ ነው። HOP ኮንቴይነሩ የተነበቡ ኤፒአይዎችን ወደ መድረክ ማጋለጥ እንዳለበት ሲገልጽ LCP ትግበራ ከመድረክ መረጃን መቀበል እንዲችል ይፈልጋል። ከዚህም በላይ መያዣው ክስተቶችን መቀበል ብቻ ሳይሆን ማመቻቸት አለበት, በሌላ አነጋገር ለእነሱ ምላሽ ይስጡ. ስለዚህ የመርሆው ስም, መድረክን በጽሁፍ APIs ለማቅረብ እንደ መስፈርት ሊቆጠር ይችላል.

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች
የመሳሪያ ስርዓቶች የመያዣውን የህይወት ዑደት ለማስተዳደር የሚያግዙ የተለያዩ አይነት ክስተቶች አሏቸው። ነገር ግን ከመካከላቸው የትኛውን እንደሚገነዘቡ እና እንዴት ምላሽ እንደሚሰጡ ለመወሰን በራሱ ማመልከቻው ላይ ነው.

አንዳንድ ክስተቶች ከሌሎቹ የበለጠ አስፈላጊ እንደሆኑ ግልጽ ነው. ለምሳሌ፣ አፕሊኬሽኑ ብልሽቶችን በደንብ የማይታገስ ከሆነ፣ ሲግናል መቀበል አለበት፡ መልእክቶችን ማቋረጥ (SIGTERM) እና የማቋረጫ ስራውን በተቻለ ፍጥነት በተቻለ ፍጥነት ማስጀመር ከSIGTERM በኋላ የሚመጣውን ሲግናል፡መግደል (SIGKILL)።

በተጨማሪም፣ እንደ PostStart እና PreStop ያሉ ክስተቶች ለመተግበሪያው የህይወት ዑደት አስፈላጊ ሊሆኑ ይችላሉ። ለምሳሌ፣ አፕሊኬሽኑን ከከፈተ በኋላ ለጥያቄዎች ምላሽ ከመስጠቱ በፊት የተወሰነ የማሞቅ ጊዜ ሊፈልግ ይችላል። ወይም አፕሊኬሽኑ በሚዘጋበት ጊዜ ሃብቶችን በልዩ መንገድ መልቀቅ አለበት።

የምስል የማይለወጥ መርህ (IIP)

በአጠቃላይ በኮንቴይነር የተያዙ አፕሊኬሽኖች ከተገነቡ በኋላ ሳይለወጡ መቆየት አለባቸው፣ ምንም እንኳን በተለያዩ አካባቢዎች ቢካሄዱም ተቀባይነት አለው። ይህ የውሂብ ማከማቻን በሂደት ላይ (በሌላ አነጋገር ውጫዊ መሳሪያዎችን ለመጠቀም) እና ለእያንዳንዱ አከባቢ ልዩ ኮንቴይነሮችን ከመቀየር ወይም ከመፍጠር ይልቅ በውጫዊ ፣ በሂደት-ተኮር አወቃቀሮች ላይ መተማመንን ይጠይቃል። በመተግበሪያው ላይ ከተደረጉ ማንኛቸውም ለውጦች በኋላ፣ የመያዣው ምስል እንደገና መገንባት እና ወደ ሁሉም አካባቢዎች መሰማራት አለበት። በነገራችን ላይ የ IT ስርዓቶችን ሲያስተዳድሩ ተመሳሳይ መርህ ጥቅም ላይ ይውላል, የአገልጋዮች እና መሠረተ ልማት ያለመለወጥ መርህ በመባል ይታወቃል.

የ IIP አላማ ለተለያዩ የሩጫ ጊዜ አከባቢዎች የተለየ የመያዣ ምስሎች እንዳይፈጠሩ መከላከል እና በሁሉም ቦታ ተመሳሳይ ምስል ከተገቢው አካባቢ-ተኮር ውቅር ጋር መጠቀም ነው። ይህንን መርህ በመከተል ከደመና ስርዓቶች አውቶማቲክ እይታ አንጻር እንደዚህ ያሉ ጠቃሚ ልምዶችን ለመተግበር ይፈቅድልዎታል - ወደ ኋላ መመለስ እና የመተግበሪያ ዝመናዎችን ማስተላለፍ።

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች

የሂደት ማሰናከል መርህ (PDP)

የእቃ መያዢያ በጣም አስፈላጊ ከሆኑት ባህሪያት ውስጥ አንዱ የዝግመተ ለውጥ ነው-የመያዣው ምሳሌ በቀላሉ ለመፍጠር እና ለማጥፋት ቀላል ነው, ስለዚህ በማንኛውም ጊዜ በቀላሉ በሌላ ምሳሌ ሊተካ ይችላል. ለእንደዚህ አይነት ምትክ ብዙ ምክንያቶች ሊኖሩ ይችላሉ-የአገልግሎት ብቃት ፈተና አለመሳካት, የመተግበሪያውን መጠን መጨመር, ወደ ሌላ አስተናጋጅ ማስተላለፍ, የመድረክ ሀብቶች መሟጠጥ ወይም ሌሎች ሁኔታዎች.

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች
በውጤቱም፣ በኮንቴይነር የተያዙ አፕሊኬሽኖች አንዳንድ ውጫዊ መንገዶችን በመጠቀም ሁኔታቸውን ማስቀጠል አለባቸው፣ ወይም ለዚህ ከተደጋጋሚነት ጋር የውስጥ የተከፋፈሉ እቅዶችን መጠቀም አለባቸው። በተጨማሪም አፕሊኬሽኑ በፍጥነት መጀመር እና በፍጥነት መዘጋት እና ለድንገተኛ የሃርድዌር ውድቀት መዘጋጀት አለበት።

ይህንን መርህ ተግባራዊ ለማድረግ የሚረዳው አንድ ልምምድ መያዣዎችን ትንሽ ማድረግ ነው. የክላውድ አከባቢዎች የእቃ መያዢያ ምሳሌን ለማስጀመር አስተናጋጅ በራስ-ሰር ሊመርጥ ይችላል፣ ስለዚህ መያዣው ትንሽ በሆነ መጠን በፍጥነት ይጀምራል - በቀላሉ በአውታረ መረቡ ላይ በፍጥነት ወደ ኢላማው አስተናጋጅ ይገለበጣል።

ራስን የመግዛት መርህ (ኤስ-ሲፒ)

በዚህ መርህ መሰረት, በመሰብሰቢያው ደረጃ, ሁሉም አስፈላጊ ክፍሎች በእቃው ውስጥ ይካተታሉ. መያዣው ስርዓቱ ንጹህ የሊኑክስ ከርነል ብቻ እንዳለው በማሰብ መገንባት አለበት, ስለዚህ ሁሉም አስፈላጊ ተጨማሪ ቤተ-መጻሕፍት በእቃ መያዣው ውስጥ መቀመጥ አለባቸው. እንዲሁም ለተዛማጅ የፕሮግራም አወጣጥ ቋንቋ የሩጫ ጊዜ፣ የአፕሊኬሽን መድረክ (አስፈላጊ ከሆነ) እና የመያዣ አፕሊኬሽኑ በሚሰራበት ጊዜ የሚያስፈልጉትን ሌሎች ጥገኛ ነገሮችን መያዝ አለበት።

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች

ከአካባቢ ወደ አካባቢ ለሚለያዩ ውቅሮች ልዩ ተደርገዋል እና በሂደት መቅረብ አለባቸው፣ ለምሳሌ በ Kubernetes ConfigMap።

አፕሊኬሽኑ ብዙ በመያዣ የተያዙ አካላትን ሊያካትት ይችላል፣ ለምሳሌ፣ የተለየ የዲቢኤምኤስ መያዣ በኮንቴይነር በተያዘ የድር መተግበሪያ ውስጥ። በ S-CP መርህ መሰረት እነዚህ ኮንቴይነሮች ወደ አንድ ሊጣመሩ አይገባም ነገር ግን የ DBMS መያዣው ለዳታቤዝ ስራ አስፈላጊ የሆኑትን ነገሮች ሁሉ እንዲይዝ እና የድር መተግበሪያ መያዣው ለድር ስራ አስፈላጊ የሆኑትን ነገሮች ሁሉ ይዟል. መተግበሪያ, ተመሳሳይ የድር አገልጋይ . በውጤቱም፣ በሂደት ጊዜ የድር መተግበሪያ መያዣው በዲቢኤምኤስ መያዣው ላይ የሚመረኮዝ እና እንደ አስፈላጊነቱ ይደርሰዋል።

የአሂድ ጊዜ እገዳ መርህ (RCP)

የ S-CP መርህ መያዣው እንዴት መገንባት እንዳለበት እና የምስሉ ሁለትዮሽ ምን መያዝ እንዳለበት ይገልጻል. ነገር ግን መያዣ አንድ ባህሪ ብቻ ያለው "ጥቁር ሳጥን" ብቻ አይደለም - የፋይል መጠን. በአፈፃፀም ጊዜ ኮንቴይነሩ ሌሎች ልኬቶችን ይወስዳል-የተጠቀመው ማህደረ ትውስታ መጠን ፣ ሲፒዩ ጊዜ እና ሌሎች የስርዓት ሀብቶች።

የደመና-ቤተኛ መተግበሪያዎችን ለመገንባት 5 የጋራ ስሜት መርሆዎች
እና እዚህ የ RCP መርህ በጥሩ ሁኔታ ይመጣል ፣ በዚህ መሠረት መያዣው ለስርዓት ሀብቶች የሚያስፈልጉትን ፍላጎቶች ቆርጦ ወደ መድረክ ማስተላለፍ አለበት። በእያንዳንዱ ኮንቴይነር የመረጃ ምንጮች (ምን ያህል ሲፒዩ፣ ሚሞሪ፣ ኔትወርክ እና የዲስክ ግብዓቶች እንደሚያስፈልጉት) መድረኩ መርሐግብር እና አውቶማቲክን በተሻለ ሁኔታ ማከናወን፣ የአይቲ አቅምን ማስተዳደር እና የ SLA ደረጃዎችን ለመያዣዎች ማቆየት ይችላል።

የእቃ መያዣውን የግብዓት መስፈርቶች ከማሟላት በተጨማሪ, ማመልከቻው ከራሱ ወሰን በላይ እንዳይሄድ አስፈላጊ ነው. ያለበለዚያ የሀብት እጥረት ሲከሰት መድረኩ ማቋረጥ ወይም መሰደድ በሚያስፈልጋቸው የመተግበሪያዎች ዝርዝር ውስጥ የማካተት እድሉ ሰፊ ነው።

ስለ ደመና-መጀመሪያ ስለመሆን ስናወራ፣ ስለምንሰራበት መንገድ እየተነጋገርን ነው።
ከላይ, ለደመና አከባቢዎች ከፍተኛ ጥራት ያለው የመያዣ አፕሊኬሽኖችን ለመገንባት ዘዴያዊ መሰረትን የሚያዘጋጁ በርካታ አጠቃላይ መርሆዎችን አዘጋጅተናል.

ከእነዚህ አጠቃላይ መርሆዎች በተጨማሪ ከእቃ መያዣዎች ጋር ለመስራት ተጨማሪ የላቁ ዘዴዎችን እና ቴክኒኮችን እንደሚፈልጉ ልብ ይበሉ. በተጨማሪም፣ እንደየሁኔታው በጣም የተለዩ እና መተግበር ያለባቸው (ወይንም ያልተተገበሩ) ጥቂት አጫጭር ምክሮች አሉን፡-

  • የምስሎችን መጠን ለመቀነስ ይሞክሩ: ጊዜያዊ ፋይሎችን ይሰርዙ እና አላስፈላጊ ፓኬጆችን አይጫኑ - አነስተኛ መጠን ያለው መያዣ, በፍጥነት ተሰብስቦ በአውታረ መረቡ ላይ ወደ ዒላማው አስተናጋጅ ይገለበጣል.
  • በዘፈቀደ የተጠቃሚ-መታወቂያዎች ላይ ያተኩሩ፡ መያዣዎችዎን ለማስጀመር የሱዶ ትዕዛዝን ወይም ማንኛውንም ልዩ ተጠቃሚ አይጠቀሙ።
  • አስፈላጊ ወደቦችን ምልክት ያድርጉ፡ የወደብ ቁጥሮችን በ runtime ማዘጋጀት ይችላሉ ነገር ግን የ EXPOSE ትዕዛዝን ተጠቅመው መግለፅ የተሻለ ነው - ለሌሎች ሰዎች እና ፕሮግራሞች ምስሎችዎን ለመጠቀም ቀላል ያደርገዋል.
  • ቀጣይነት ያለው መረጃ በጥራዞች ላይ ያከማቹ፡ መያዣው ከተደመሰሰ በኋላ መቆየት ያለበት መረጃ ወደ ጥራዞች መፃፍ አለበት።
  • የምስል ዲበ ዳታ ይጻፉ፡ መለያዎች፣ መለያዎች እና ማብራሪያዎች ምስሎችን ለመጠቀም ቀላል ያደርጉታል - ሌሎች ገንቢዎች ያመሰግናሉ።
  • አስተናጋጅ እና ምስሎችን ያመሳስሉ፡ አንዳንድ በኮንቴይነር የተያዙ አፕሊኬሽኖች ኮንቴይነሩ ከአስተናጋጁ ጋር በተወሰኑ ባህሪያት ለምሳሌ የጊዜ ወይም የማሽን መታወቂያ እንዲሰምር ይፈልጋሉ።
  • ለማጠቃለል፣ ከላይ የተዘረዘሩትን መርሆዎች በብቃት እንድትተገብሩ የሚያግዙ አብነቶችን እና ምርጥ ተሞክሮዎችን እናካፍላለን፡-
    www.slideshare.net/luebken/container-patterns
    docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices
    docs.projectatomic.io/container-ምርጥ-ተግባር
    docs.openshift.com/enterprise/3.0/creating_images/guidelines.html
    www.usenix.org/system/files/conference/hotcloud16/hotcloud16_burns.pdf
    leanpub.com/k8spatterns
    12factor.net

ዌቢናር በአዲሱ የOpenShift Container Platform ስሪት ላይ – 4
ሰኔ 11 ቀን 11.00

ምን ይማራሉ፡-

  • የማይለወጥ ቀይ ኮፍያ ኢንተርፕራይዝ ሊኑክስ ኮርኦኤስ
  • OpenShift አገልግሎት ጥልፍልፍ
  • ኦፕሬተር ማዕቀፍ
  • Knative ማዕቀፍ

ምንጭ: hab.com

አስተያየት ያክሉ