ከቴራፎርም ወደ CloudFormation ተቀይሯል - እና ተጸጸተ

መሠረተ ልማትን እንደ ኮድ ሊደገም በሚችል የጽሑፍ ቅርፀት መወከል ከአይጦች ጋር መጨቃጨቅ ለማይፈልጉ ስርዓቶች ቀላል ምርጥ ልምምድ ነው። ይህ ልምምድ ስም አለው - መሠረተ ልማት እንደ ኮድ, እና እስካሁን ድረስ እሱን ለመተግበር ሁለት ታዋቂ መሳሪያዎች አሉ, በተለይም በ AWS ውስጥ: Terraform и CloudFormation.

ከቴራፎርም ወደ CloudFormation ተቀይሯል - እና ተጸጸተ
ልምድን ከ Terraform እና CloudFormation ጋር ማወዳደር

ወደ ከመምጣቱ በፊት Twitch (እሱ ነው Amazon Jr.) ሰራሁ በአንድ ጅምር ውስጥ እና Terraformን ለሶስት አመታት ተጠቅሟል. በአዲሱ ቦታ ቴራፎርምን በሙሉ ሀይሌ ተጠቀምኩኝ፣ እና ኩባንያው ክላውድፎርሜሽንን ጨምሮ ወደ ሁሉም ነገር ወደ አማዞን ሽግግር ገፋው። ለሁለቱም ምርጥ ተሞክሮዎችን በትጋት አዳብሬያለሁ፣ እና ሁለቱንም መሳሪያዎች በጣም ውስብስብ በሆነ ድርጅት አቀፍ የስራ ፍሰቶች ውስጥ ተጠቅሜበታለሁ። በኋላ፣ ከቴራፎርም ወደ ክላውድፎርሜሽን መሰደድ ያለውን አንድምታ በጥንቃቄ ካጤንኩ በኋላ፣ ቴራፎርም ምናልባት የድርጅቱ ምርጥ ምርጫ እንደሆነ እርግጠኛ ሆንኩ።

ቴራፎርም አሰቃቂ

የቅድመ-ይሁንታ ሶፍትዌር

ቴራፎርም ሥሪት 1.0ን እስካሁን አላወጣም፣ ይህም ላለመጠቀም ጥሩ ምክንያት ነው። እኔ ራሴ ለመጀመሪያ ጊዜ ከሞከርኩበት ጊዜ ጀምሮ በጣም ተለውጧል, ግን ወደ ኋላ terraform apply ብዙ ጊዜ ከበርካታ ዝመናዎች በኋላ ወይም በቀላሉ ከጥቂት አመታት አጠቃቀም በኋላ ተበላሽቷል። "አሁን ሁሉም ነገር የተለየ ነው" እላለሁ, ግን ... ሁሉም ሰው የሚመስለው ይህን ይመስላል, አይደለም? ከቀደምት ስሪቶች ጋር የማይጣጣሙ ለውጦች አሉ, ምንም እንኳን ተገቢ ናቸው, እና እንዲያውም የሃብት መደብሮች አገባብ እና ረቂቅ አሁን እኛ የምንፈልገው ሆኖ ይሰማናል. መሣሪያው በእርግጥ የተሻለ ይመስላል፣ ግን... :-0

በሌላ በኩል፣ AWS ኋላቀር ተኳኋኝነትን በማስጠበቅ ጥሩ ስራ ሰርቷል። ይህ ሊሆን የቻለው አገልግሎታቸው በድርጅቱ ውስጥ ብዙ ጊዜ በደንብ የተሞከረ እና ከዚያ በኋላ ብቻ ነው, እንደገና ተሰይሟል, ታትሟል. ስለዚህ "ጠንክረው ሞክረዋል" ማለት ነው. እንደ AWS ለተለያየ እና ውስብስብ ስርዓት ከኤፒአይዎች ጋር የኋሊት ተኳኋኝነትን መጠበቅ በሚያስደንቅ ሁኔታ ከባድ ነው። እንደነሱ በስፋት ጥቅም ላይ የሚውሉ የህዝብ ኤፒአይዎችን ማቆየት የነበረበት ማንኛውም ሰው ለብዙ አመታት ይህን ማድረግ ምን ያህል ከባድ እንደሆነ መረዳት አለበት። ነገር ግን የ CloudFormation ባህሪ፣ በእኔ ትውስታ፣ ባለፉት አመታት ፈጽሞ አልተለወጠም።

እግሩን ተገናኙ... ጥይት ነው።

እኔ እስከማውቀው ድረስ ሀብቱን ሰርዝ የውጭ ሰው CloudFormation ቁልል ከእርስዎ CF ቁልል አይቻልም። በቴራፎርምም ተመሳሳይ ነው። ያሉትን ሀብቶች ወደ ቁልልዎ እንዲያስገቡ ይፈቅድልዎታል። ተግባሩ አስደናቂ ነው ሊባል ይችላል, ነገር ግን በታላቅ ኃይል ትልቅ ኃላፊነት ይመጣል. ወደ ቁልል አንድ ግብዓት ማከል ብቻ ያስፈልግዎታል፣ እና ከእርስዎ ቁልል ጋር እየሰሩ ሳሉ፣ ይህን ሃብት መሰረዝ ወይም መቀየር አይችሉም። ከእለታት አንድ ቀን ነገሩ ተመለሰ። አንድ ቀን በTwitch ላይ አንድ ሰው በአጋጣሚ የሌላ ሰውን AWS የደህንነት ቡድን ወደ ራሳቸው የቴራፎርም ቁልል አስመጣ ምንም አይነት ጥፋት ሳይደርስበት። ብዙ ትዕዛዞችን አስገባሁ እና...የደህንነት ቡድኑ (ከገቢ ትራፊክ ጋር) ጠፋ።

ቴራፎርም በጣም ጥሩ

ካልተሟሉ ግዛቶች ማገገም

አንዳንድ ጊዜ CloudFormation ከአንዱ ግዛት ወደ ሌላ ሙሉ ለሙሉ መሸጋገር አልቻለም። በተመሳሳይ ጊዜ ወደ ቀድሞው ለመመለስ ይሞክራል. ይህ ሁልጊዜ የሚቻል አለመሆኑ በጣም ያሳዝናል. በኋላ የሆነውን ማረም በጣም አስፈሪ ሊሆን ይችላል - CloudFormation በመጥለፉ ደስተኛ እንደሚሆን አታውቁም - ለማስተካከል እንኳን። ወደ ቀድሞው ሁኔታ መመለስ ይቻል ወይም አይሆን ፣ እሱ በትክክል እንዴት መወሰን እንዳለበት አያውቅም እና በነባሪ ፣ ተአምር በመጠባበቅ ላይ ለብዙ ሰዓታት ይቆማል።

በሌላ በኩል ቴራፎርም ከሽግግሮች በተሻለ ሁኔታ የማገገም አዝማሚያ አለው እና የላቀ የማረም መሳሪያዎችን ያቀርባል።

በሰነድ ሁኔታ ላይ የበለጠ ግልጽ ለውጦች

“እሺ፣ ሎድ ሚዛን ሰጪ፣ እየተቀየርክ ነው። ግን እንዴት?"

- የተጨነቀ መሐንዲስ፣ “ተቀበል” የሚለውን ቁልፍ ለመጫን ዝግጁ ነው።

አንዳንድ ጊዜ በ CloudFormation ቁልል ውስጥ ባለው የሎድ ሚዛኑ አንዳንድ ዘዴዎችን ማድረግ አለብኝ፣ ለምሳሌ የወደብ ቁጥር ማከል ወይም የደህንነት ቡድን መቀየር። ክሎውፎርሜሽን ማሳያዎች ደካማ ለውጦች. እኔ፣ በፒን እና መርፌ ላይ፣ ምንም አስፈላጊ ነገር እንዳልሰረዝኩ እና ምንም አላስፈላጊ ነገር እንዳልጨመርኩ ለማረጋገጥ የያምል ፋይልን አስር ጊዜ ደግሜ አረጋግጥ።

በዚህ ረገድ ቴራፎርም የበለጠ ግልፅ ነው። አንዳንድ ጊዜ እሱ በጣም ግልጽ ነው (አንብብ: የሚያበሳጭ). እንደ እድል ሆኖ፣ አሁን ምን እየተለወጠ እንዳለ በትክክል ማየት እንዲችሉ የቅርብ ጊዜው ስሪት የተሻሻለ ለውጦችን ያሳያል።

ተለዋዋጭ

ሶፍትዌሮችን ወደ ኋላ ይፃፉ.

በግልጽ ለመናገር የረዥም ጊዜ የሶፍትዌር በጣም አስፈላጊ ባህሪ ከለውጥ ጋር መላመድ መቻል ነው። ማንኛውንም ሶፍትዌር ወደ ኋላ ይፃፉ. ብዙ ጊዜ "ቀላል" አገልግሎትን በመውሰድ እና ሁሉንም ነገር ወደ አንድ የCloudFormation ወይም Terraform ቁልል በመጠቅለል ስህተት እሰራለሁ። እና በእርግጥ ፣ ከወራት በኋላ ሁሉንም ነገር ስህተት እንደ ተረዳሁ ተገለጠ ፣ እና አገልግሎቱ በእውነቱ ቀላል አልነበረም! እና አሁን አንድ ትልቅ ቁልል ወደ ትናንሽ አካላት በሆነ መንገድ መሰባበር አለብኝ። ከ CloudFormation ጋር ሲሰሩ፣ ይህ ሊደረግ የሚችለው መጀመሪያ ያለውን ቁልል እንደገና በመፍጠር ብቻ ነው፣ እና ይህን በመረጃ ቋቶቼ አላደርገውም። ቴራፎርም በበኩሉ ቁልልውን ነቅሎ ወደ ሚረዱ ትንንሽ ክፍሎች ለመከፋፈል አስችሏል።

በ git ውስጥ ያሉ ሞጁሎች

የTerraform ኮድ በበርካታ ቁልል ማጋራት የክላውድፎርሜሽን ኮድ ከማጋራት የበለጠ ቀላል ነው። በቴራፎርም ኮድዎን በgit ማከማቻ ውስጥ ማስቀመጥ እና የትርጉም ስሪት መቆጣጠሪያን በመጠቀም ማግኘት ይችላሉ። የዚህ ማከማቻ መዳረሻ ያለው ማንኛውም ሰው የተጋራውን ኮድ እንደገና መጠቀም ይችላል። የክላውድፎርሜሽን አቻ S3 ነው፣ ግን ተመሳሳይ ጥቅማጥቅሞች የሉትም፣ እና Gitን የምንተወውበት ምንም ምክንያት የለም S3ን በመደገፍ።

ድርጅቱ አድጓል እና የጋራ መደራረብን የመጋራት አቅም ወሳኝ ደረጃ ላይ ደርሷል። ቴራፎርም ይህን ሁሉ ቀላል እና ተፈጥሯዊ ያደርገዋል፣ ነገር ግን CloudFormation እንደዚህ አይነት ነገር መስራት ከመቻልዎ በፊት በሆፕ ውስጥ እንዲዘሉ ያደርግዎታል።

ክዋኔዎች እንደ ኮድ

"እስኪ ጻፍነው እና እሺ"

- መሐንዲስ ቴራፎርም ብስክሌት ከመፍጠሩ 3 ዓመታት በፊት።

የሶፍትዌር ልማትን በተመለከተ Go ወይም Java ፕሮግራም ኮድ ብቻ አይደለም።

ከቴራፎርም ወደ CloudFormation ተቀይሯል - እና ተጸጸተ
ኮድ እንደ ኮድ

የሚሰራበት መሠረተ ልማትም አለ።

ከቴራፎርም ወደ CloudFormation ተቀይሯል - እና ተጸጸተ
መሠረተ ልማት እንደ ኮድ

ግን ከየት ናት? እሱን እንዴት መከታተል ይቻላል? ኮድዎ የት ነው የሚኖረው? ገንቢዎች የመዳረሻ ፍቃድ ያስፈልጋቸዋል?

ከቴራፎርም ወደ CloudFormation ተቀይሯል - እና ተጸጸተ
ክወናዎች እንደ ኮድ

የሶፍትዌር ገንቢ መሆን ማለት ኮድ መጻፍ ብቻ አይደለም።

AWS ብቻ አይደለም፡ ምናልባት ሌሎች አቅራቢዎችን ትጠቀማለህ። SignalFx፣ PagerDuty ወይም Github። ምናልባት የውስጥ የጄንኪንስ አገልጋይ ለCI/ሲዲ ወይም ለክትትል የውስጥ የግራፋና ዳሽቦርድ ሊኖርህ ይችላል። ኢንፍራ እንደ ኮድ በተለያዩ ምክንያቶች የተመረጠ ነው, እና እያንዳንዳቸው ከሶፍትዌር ጋር ለተያያዙ ሁሉም ነገሮች እኩል አስፈላጊ ነው.

በTwitch ውስጥ ስሰራ በአማዞን የተቀላቀሉ እና AWS ስርዓቶች ውስጥ አገልግሎቶችን አፋጥንን። ብዙ ጥቃቅን አገልግሎቶችን አውጥተን ደግፈናል፣የስራ ወጪን ጨምረናል። ውይይቶቹ የሚከተለውን ይመስላል።

  • ĐŻ: እርጉም ፣ ያ አንድ ማይክሮ አገልግሎትን ለማለፍ ብዙ ምልክቶች ናቸው። የAWS መለያ ለመፍጠር ይህንን ቆሻሻ መጠቀም አለብኝ (ወደ 2 መለያዎች ሄድን። ማይክሮ አገልግሎት), ከዚያ ይሄ ማንቂያዎችን ለማዘጋጀት፣ ይሄኛው ለኮድ ማከማቻ፣ እና ይሄኛው ለኢሜል ዝርዝር፣ እና ይሄኛው...
  • መል: ስክሪፕት እናድርግ እና እሺ።
  • Яእሺ፣ ግን ስክሪፕቱ ልሹ ይቀየራል። እነዚህ ሁሉ አብሮ የተሰሩ የአማዞን gizmos ወቅታዊ መሆናቸውን የምናረጋግጥበት መንገድ እንፈልጋለን።
  • መል: ያምራል. እና ለዚህ ስክሪፕት እንጽፋለን.
  • ĐŻ: በጣም ጥሩ! እና ስክሪፕቱ ምናልባት አሁንም መለኪያዎችን ማዘጋጀት ያስፈልገዋል. እሱ ይቀበላቸዋል?
  • መል: የሚሄድበትን ይውሰድ!
  • ĐŻ: ሂደቱ ሊለወጥ ይችላል እና ወደ ኋላ ተኳሃኝነት ይጠፋል. አንዳንድ ዓይነት የትርጉም ሥሪት ቁጥጥር ያስፈልጋል።
  • መል: ታላቅ ሃሳብ!
  • ĐŻ: መሳሪያዎች በእጅ ሊለወጡ ይችላሉ, በተጠቃሚ በይነገጽ ውስጥ. ይህንን ለመፈተሽ እና ለማስተካከል መንገድ እንፈልጋለን።

ከ3 ዓመታት በኋላ፡-

  • መል: እና ቴራፎርም አግኝተናል.

የታሪኩ ሞራል፡ አንተም ብትሆን ነው። በሁሉም ነገር አማዞን ላይ ጭንቅላትአሁንም ከAWS ያልሆነ ነገር እየተጠቀሙ ነው፣ እና እነዚህ አገልግሎቶች ያንን ሁኔታ እንዲመሳሰል ለማድረግ የማዋቀር ቋንቋን የሚጠቀም ሁኔታ አላቸው።

CloudFormation lambda vs git modules terraform

lambda ለብጁ አመክንዮ ጉዳይ የCloudFormation መፍትሄ ነው። ከላምዳ ጋር ይችላሉ ማክሮዎችን ይፍጠሩ ወይም የተጠቃሚ ምንጭ. ይህ አካሄድ በቴራፎርም የጊት ሞጁሎች የትርጉም እትም ውስጥ የማይገኙ ተጨማሪ ውስብስብ ነገሮችን ያስተዋውቃል። ለእኔ፣ በጣም አሳሳቢው ችግር ለእነዚህ ሁሉ የተጠቃሚ ላምዳዎች ፈቃዶችን ማስተዳደር ነበር (እና እነዚህ በደርዘን የሚቆጠሩ የAWS መለያዎች ናቸው።) ሌላው አስፈላጊ ችግር “መጀመሪያ የመጣው ዶሮ ወይስ እንቁላል?” ችግር ነበር፡ ከላምዳ ኮድ ጋር የተያያዘ ነው። ይህ ተግባር ራሱ መሠረተ ልማት እና ኮድ ነው, እና እሱ ራሱ ክትትል እና ማሻሻያ ያስፈልገዋል. በሬሳ ሣጥን ውስጥ ያለው የመጨረሻው ሚስማር በትርጉም የላምዳ ኮድ ለውጦችን ለማዘመን አስቸጋሪ ነበር; እንዲሁም ያለ ቀጥተኛ ትእዛዝ የቁልል ድርጊቶች በሩጫ መካከል እንደማይለወጡ ማረጋገጥ ነበረብን።

አንዴ አስታውሳለሁ ለelastic Beanstalk አካባቢ በሚታወቀው የጭነት ሚዛን የካናሪ ማሰማራትን መፍጠር ፈልጌ ነበር። በጣም ቀላሉ ነገር ለኢቢ ከምርቱ አከባቢ ቀጥሎ ሁለተኛ ደረጃ ማሰማራት ነው ፣ አንድ እርምጃ ወደፊት ይውሰዱት-የራስ-ማስኬጃ ካናሪ ማሰማራት ቡድንን ኤልቢን ወደ ምርት አከባቢ በማጣመር። እና ቴራፎርም ስለሚጠቀም ASG beantalk እንደ መደምደሚያይህ በ Terraform ውስጥ 4 ተጨማሪ የኮድ መስመሮችን ይፈልጋል። በ CloudFormation ውስጥ ተመጣጣኝ መፍትሄ እንዳለ ስጠይቅ ወደ አጠቃላይ የጂት ማከማቻ ከተሰማራ ቧንቧ መስመር እና ሁሉም ነገር ጋር ጠቁመውኝ ሁሉም ነገር ለደካማ 4 የቴራፎርም ኮድ መስመሮች ሊያደርጉት ለሚችለው ነገር።

መንሸራተትን በተሻለ ሁኔታ ይለያል

እውነታው ከሚጠበቁት ጋር የሚዛመድ መሆኑን ያረጋግጡ።

ተንሸራታች ማወቅ እንደ ኮድ ባህሪ በጣም ኃይለኛ ኦፕሬሽኖች ነው ምክንያቱም እውነታው ከሚጠበቁት ጋር የሚዛመድ መሆኑን ለማረጋገጥ ይረዳል። ከሁለቱም CloudFormation እና Terraform ጋር ይገኛል። ነገር ግን የምርት ቁልል እያደገ ሲሄድ በ CloudFormation ውስጥ ተንሸራታች መፈለግ ከጊዜ ወደ ጊዜ የበለጠ የውሸት ማወቂያዎችን ፈጠረ።

በቴራፎርም ተንሳፋፊን ለመለየት በጣም የላቁ የህይወት ኡደት መንጠቆዎች አሎት። ለምሳሌ, ትዕዛዙን ያስገባሉ ለውጦችን ችላ በል በአንድ የተወሰነ የተግባር ትርጉም ላይ የተደረጉ ለውጦችን በጠቅላላ የECS ማሰማራት ላይ ለውጦችን ችላ ማለት ከፈለጉ በቀጥታ በ ECS ተግባር ትርጉም ውስጥ።

ሲዲኬ እና የ CloudFormation የወደፊት

CloudFormation በትልልቅ የመሠረተ ልማት ሚዛኖች ለማስተዳደር አስቸጋሪ ነው። አብዛኛዎቹ እነዚህ ችግሮች ተለይተው ይታወቃሉ እና መሳሪያው እንደ እነዚህ ነገሮች ያስፈልገዋል አውስ-ሲዲክ፣ የደመና መሠረተ ልማትን በኮድ ውስጥ ለመለየት እና በ AWS CloudFormation በኩል ለማስኬድ ማዕቀፍ። ለወደፊቱ ለ aws-cdk ምን እንደሚከሰት ማየት አስደሳች ይሆናል ፣ ግን ከቴራፎርም ሌሎች ጥንካሬዎች ጋር ለመወዳደር አስቸጋሪ ይሆናል ። CloudFormation ን ለማዘመን፣ ዓለም አቀፍ ለውጦች ያስፈልጋሉ።

ስለዚህ ቴራፎርም አያሳዝንም።

ይህ "መሠረተ ልማት እንደ ኮድ" ነው, እና "እንደ ጽሑፍ" አይደለም.

ስለ ቴራፎርም የመጀመሪያ እይታዬ መጥፎ ነበር። አቀራረቡ ገና ያልገባኝ ይመስለኛል። ሁሉም ማለት ይቻላል መሐንዲሶች ያለፍላጎታቸው ወደ ተፈላጊው መሠረተ ልማት መለወጥ እንደሚያስፈልገው የጽሑፍ ቅርጸት አድርገው ይገነዘባሉ። በዚህ መንገድ አታድርጉት።

ጥሩ የሶፍትዌር ልማት እውነታዎች በቴራፎርም ላይም ይሠራሉ።

ጥሩ ኮድ ለመፍጠር ብዙ ልምዶችን በቴራፎርም ችላ ሲባሉ አይቻለሁ። ጥሩ ፕሮግራመር ለመሆን ለዓመታት ተምረሃል። ከቴራፎርም ጋር ስለምትሰራ ብቻ ይህን ልምድ አትተው። ጥሩ የሶፍትዌር ልማት እውነታዎች በቴራፎርም ላይ ተፈጻሚ ይሆናሉ።

ኮዱ እንዴት ሊመዘገብ አይችልም?

ምንም አይነት ሰነድ የሌላቸው ግዙፍ የቴራፎርም ቁልል አይቻለሁ። በገጾች ውስጥ ኮድ እንዴት መፃፍ እንደሚቻል - ያለ ምንም ሰነድ? የእርስዎን የሚያብራራ ሰነድ ያክሉ ኮድ ቴራፎርም (በ "ኮድ" ቃል ላይ አጽንዖት), ለምን ይህ ክፍል በጣም አስፈላጊ ነው, እና እርስዎ የሚያደርጉት.

በአንድ ወቅት አንድ ትልቅ ዋና() ተግባር የነበሩ አገልግሎቶችን እንዴት ማሰማራት እንችላለን?

በጣም ውስብስብ የቴራፎርም ቁልል እንደ ነጠላ ሞጁል ሲቀርቡ አይቻለሁ። ለምን ሶፍትዌሮችን በዚህ መንገድ አናሰማራም? ለምን ትላልቅ ተግባራትን ወደ ትናንሽ እንከፍላለን? ተመሳሳይ መልሶች ለቴራፎርም ይሠራሉ። ሞጁልዎ በጣም ትልቅ ከሆነ ወደ ትናንሽ ሞጁሎች መከፋፈል ያስፈልግዎታል.

ኩባንያዎ ቤተ መጻሕፍትን አይጠቀምም?

መሐንዲሶች Terraformን በመጠቀም አዲስ ፕሮጀክት ሲሽከረከሩ፣ ከሌሎች ፕሮጀክቶች ግዙፍ ቁርጥራጮችን በሞኝነት ገልብጠው ወደ ራሳቸው እንዴት እንደሚገለብጡ እና ሥራ እስኪጀምር ድረስ ከእነርሱ ጋር እንዴት እንደሚጣበቁ አይቻለሁ። በድርጅትዎ ውስጥ በ"ፍልሚያ" ኮድ እንደዚህ ይሰራሉ? ቤተ መጻሕፍት ብቻ አንጠቀምም። አዎ, ሁሉም ነገር ቤተ መጻሕፍት መሆን የለበትም, ግን በመርህ ደረጃ የጋራ ቤተ-መጻሕፍት ከሌለን የት ነን?!

PEP8 ወይም gofmt እየተጠቀሙ አይደሉም?

አብዛኞቹ ቋንቋዎች ደረጃውን የጠበቀ፣ ተቀባይነት ያለው የቅርጸት እቅድ አላቸው። በ Python ውስጥ ይህ PEP8 ነው። በ Go - gofmt. ቴራፎርም የራሱ አለው፡- terraform fmt. ለጤንነትዎ ይደሰቱ!

ጃቫ ስክሪፕት ሳታውቅ React ትጠቀማለህ?

የቴራፎርም ሞጁሎች እርስዎ የሚፈጥሯቸውን ውስብስብ መሠረተ ልማቶች የተወሰነውን ክፍል ሊያቃልሉ ይችላሉ፣ ይህ ማለት ግን ከሱ ጋር ምንም ማድረግ አይችሉም ማለት አይደለም። ሀብቶችን ሳይረዱ Terraformን በትክክል መጠቀም ይፈልጋሉ? ተፈርደሃል፡ ጊዜ ያልፋል፣ እና ቴራፎርምን በፍፁም አትቆጣጠርም።

በነጠላ ቶን ወይም በጥገኝነት መርፌ ኮድ እየሰሩ ነው?

ጥገኝነት መርፌ ለሶፍትዌር ልማት የታወቀ ምርጥ ተግባር ነው እና ከነጠላ ቶን ይመረጣል። ይህ በ Terraform ውስጥ እንዴት ጠቃሚ ነው? በርቀት ሁኔታ ላይ የሚመሰረቱ የቴራፎርም ሞጁሎችን አይቻለሁ። የርቀት ሁኔታን የሚያነሱ ሞጁሎችን ከመጻፍ ይልቅ መለኪያዎችን የሚወስድ ሞጁል ይፃፉ። እና ከዚያ እነዚህን መለኪያዎች ወደ ሞጁሉ ያስተላልፉ.

ቤተ መፃህፍቶችዎ አሥር ነገሮችን በደንብ ያደርጋሉ ወይንስ አንድ ጥሩ ነገር ያደርጋሉ?

በተሻለ ሁኔታ የሚሰሩ ቤተ-መጻሕፍት በጥሩ ሁኔታ በሚሠሩት አንድ ሥራ ላይ ያተኮሩ ናቸው። ሁሉንም ነገር በአንድ ጊዜ ለመስራት የሚሞክሩ ትላልቅ ቴራፎርም ሞጁሎችን ከመጻፍ ይልቅ አንድ ነገር በደንብ የሚሰሩትን ክፍሎች ይገንቡ። እና ከዚያ እንደ አስፈላጊነቱ ያዋህዷቸው.

ወደ ኋላ ተኳኋኝነት ሳይኖር በቤተ-መጽሐፍት ላይ እንዴት ለውጦችን ያደርጋሉ?

የጋራ ቴራፎርም ሞጁል፣ ልክ እንደ መደበኛ ቤተ-መጽሐፍት፣ ወደ ኋላ ተኳሃኝ ሳይሆኑ ለውጦችን ለተጠቃሚዎች እንደምንም ማስተላለፍ አለበት። እነዚህ ለውጦች በቤተመጻሕፍት ውስጥ ሲከሰቱ ያበሳጫል፣ እና በቴራፎርም ሞጁሎች ውስጥ ከኋላ ተኳዃኝ ያልሆኑ ለውጦች ሲደረጉ እንዲሁ ያናድዳል። ቴራፎርም ሞጁሎችን ሲጠቀሙ git tags እና semver መጠቀም ይመከራል።

የማምረቻ አገልግሎትዎ በእርስዎ ላፕቶፕ ወይም በመረጃ ማእከል ውስጥ እየሰራ ነው?

Hashicorp እንደ መሳሪያዎች አሉት ቴራፎርም ደመና የእርስዎን ቴራፎርም ለማስኬድ. እነዚህ የተማከለ አገልግሎቶች የቴራፎርም ለውጦችን ማስተዳደር፣ ኦዲት ማድረግ እና ማጽደቅ ቀላል ያደርጉታል።

ፈተናዎችን አትጽፍም?

መሐንዲሶች ኮዱ መሞከር እንዳለበት ይገነዘባሉ, ነገር ግን እነሱ ራሳቸው ብዙውን ጊዜ ከቴራፎርም ጋር ሲሰሩ ስለ ሙከራ ይረሳሉ. ለመሠረተ ልማት፣ ይህ በአታላይ ጊዜያት የተሞላ ነው። የእኔ ምክር በCI/CD ጊዜ ለሙከራ በትክክል ሊሰማሩ የሚችሉ ሞጁሎችን በመጠቀም “መሞከር” ወይም “ምሳሌ መፍጠር” ነው።

ቴራፎርም እና ማይክሮ ሰርቪስ

የማይክሮ ሰርቪስ ኩባንያዎች ህይወት እና ሞት የሚወሰነው በአዳዲስ ማይክሮ አገልግሎት ስራዎች ፍጥነት, ፈጠራ እና መስተጓጎል ላይ ነው.

ከማይክሮ ሰርቪስ አርክቴክቸር ጋር የተገናኘው በጣም የተለመደው አሉታዊ ገጽታ እና ሊወገድ የማይችል ከሥራው ጋር የተያያዘ ነው, ከኮዱ ጋር የተያያዘ አይደለም. Terraformን የማይክሮ ሰርቪስ አርክቴክቸር መሠረተ ልማትን ብቻ በራስ ሰር የሚሠራበት መንገድ አድርገው ካሰቡ የስርዓቱን ትክክለኛ ጥቅሞች እያጡ ነው። አሁን ቀድሞውኑ ነው። ሁሉም ነገር እንደ ኮድ ነው.

ምንጭ: hab.com

አስተያየት ያክሉ