በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

ሰላም ሁላችሁም! ስሜ ኪሪል እባላለሁ፣ እኔ በ Adapty CTO ነኝ። አብዛኛው የኛ አርክቴክቸር በAWS ላይ ነው፣ እና ዛሬ በአምራች አካባቢ ያሉ ቦታዎችን በመጠቀም የአገልጋይ ወጪዎችን በ3 ጊዜ እንዴት እንደቀነስን እና እንዲሁም አውቶማቲካሊንግ እንዴት እንደሚያዘጋጁ እናገራለሁ ። በመጀመሪያ እንዴት እንደሚሰራ አጠቃላይ እይታ እና ከዚያም ለመጀመር ዝርዝር መመሪያዎች ይኖራሉ.

ስፖት አጋጣሚዎች ምንድን ናቸው?

ስፖት አጋጣሚዎች በአሁኑ ጊዜ ስራ ፈት የሆኑ የሌሎች AWS ተጠቃሚዎች አገልጋዮች ናቸው እና በከፍተኛ ቅናሽ ይሸጧቸዋል (አማዞን እስከ 90% ይጽፋል፣ በእኛ ልምድ ~3x፣ እንደ ክልሉ፣ AZ እና ለምሳሌ አይነት ይለያያል)። ከመደበኛው ዋና ልዩነታቸው በማንኛውም ጊዜ ማጥፋት ይችላሉ. ስለዚህ, ለረጅም ጊዜ እኛ ለድንግል አከባቢዎች, ወይም የሆነ ነገርን ለማስላት ተግባራት, መካከለኛ ውጤቶች በ S3 ላይ ወይም በመረጃ ቋቱ ውስጥ ተቀምጠዋል, ነገር ግን ለሽያጭ መጠቀማቸው የተለመደ እንደሆነ እናምናለን. በምርት ላይ ቦታዎችን እንድትጠቀም የሚፈቅዱ የሶስተኛ ወገን መፍትሄዎች አሉ, ነገር ግን ለጉዳያችን ብዙ ክራንች አሉ, ስለዚህ እኛ ተግባራዊ አላደረግንም. በአንቀጹ ውስጥ የተገለፀው አቀራረብ ሙሉ በሙሉ በመደበኛ የ AWS ተግባር ውስጥ ይሰራል, ያለ ተጨማሪ ስክሪፕቶች, ዘውዶች, ወዘተ.

ለቦታ ሁኔታዎች የዋጋ ታሪክን የሚያሳዩ ጥቂት ቅጽበታዊ ገጽ እይታዎች ከዚህ በታች አሉ።

በ eu-west-5 (አየርላንድ) ክልል ውስጥ m1.ትልቅ. ዋጋው በአብዛኛው ለ3 ወራት የተረጋጋ ሲሆን በአሁኑ ጊዜ 2.9x ይቆጥባል።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

m5.ትልቅ በዩኤስ-ምስራቅ-1 ክልል (ኤን. ቨርጂኒያ). ዋጋው ከ3 ወራት በላይ በየጊዜው እየተቀየረ ነው፣ በአሁኑ ጊዜ ከ2.3x ወደ 2.8x በተገኝነት ቀጠና ላይ ይቆጥባል።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

t3.small በዩኤስ-ምስራቅ-1 ክልል (ኤን. ቨርጂኒያ)። ዋጋው ለ3 ወራት የተረጋጋ ሲሆን በአሁኑ ጊዜ 3.4x ይቆጥባል።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የአገልግሎት አርክቴክቸር

በዚህ ጽሑፍ ውስጥ የምንነጋገረው የአገልግሎቱ መሰረታዊ አርክቴክቸር ከዚህ በታች ባለው ስእል ውስጥ ይታያል.

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የመተግበሪያ ጭነት ሚዛን → EC2 ዒላማ ቡድን → ላስቲክ ኮንቴይነር አገልግሎት

የመተግበሪያ ሎድ ባላንስ (ALB) እንደ ማዛመኛ ጥቅም ላይ ይውላል፣ እሱም ጥያቄዎችን ወደ EC2 Target Group (TG) ይልካል። TG ለኤ.ኤል.ቢ.ዎች ወደቦችን የመክፈት እና ከላስቲክ ኮንቴይነር አገልግሎት (ኢሲኤስ) ኮንቴይነሮች ወደቦች የማገናኘት ሃላፊነት አለበት። ECS Docker ኮንቴይነሮችን የሚያስተዳድረው በAWS ውስጥ የኩበርኔትስ አናሎግ ነው።

አንድ ምሳሌ በርካታ የሩጫ ኮንቴይነሮች ከተመሳሳይ ወደቦች ጋር ሊኖሩት ይችላል፣ስለዚህ ልናስቀምጣቸው አንችልም። ኢ.ሲ.ኤስ ለቲጂ አዲስ ተግባር እየጀመረ መሆኑን ይነግረዋል (በኩበርኔትስ የቃላት አገባብ ይህ ፖድ ይባላል) በምሳሌው ላይ ነፃ ወደቦችን ይፈትሻል እና ከመካከላቸው አንዱን ለተጀመረው ተግባር ይመድባል። ቲጂ በተጨማሪም የጤና ምርመራን ተጠቅመው ለምሳሌ ኤፒአሱ እና ኤፒአይ እየሰሩ መሆናቸውን በየጊዜው ይፈትሻል፣ እና ምንም አይነት ችግር ካየ፣ ወደዚያ መላክ ያቆማል።

EC2 ራስ-ሰር መለኪያ ቡድኖች + ECS አቅም አቅራቢዎች

ከላይ ያለው ሥዕላዊ መግለጫ የEC2 Auto Scaling Groups (ASG) አገልግሎትን አያሳይም። ከስሙ መረዳት የሚቻለው ለአጋጣሚዎች መመዘን ተጠያቂ ነው። ነገር ግን፣ እስከ ቅርብ ጊዜ ድረስ፣ AWS ከኢሲኤስ የሩጫ ማሽኖችን ብዛት ለማስተዳደር አብሮ የተሰራ ችሎታ አልነበረውም። ECS የተግባሮችን ብዛት ለመለካት አስችሏል፣ ለምሳሌ፣ በሲፒዩ አጠቃቀም፣ RAM ወይም በጥያቄዎች ብዛት። ነገር ግን ተግባራት ሁሉንም ነፃ አጋጣሚዎች ከያዙ ፣ ከዚያ አዳዲስ ማሽኖች በራስ-ሰር አልተፈጠሩም።

ይህ የኢሲኤስ አቅም አቅራቢዎች (ECS CP) መምጣት ተለውጧል። አሁን በ ECS ውስጥ ያለው እያንዳንዱ አገልግሎት ከ ASG ጋር ሊገናኝ ይችላል, እና ተግባሮቹ በሩጫ ሁኔታዎች ላይ የማይጣጣሙ ከሆነ, አዲሶቹ ይነሳሉ (ነገር ግን በተቋቋመው ASG ገደቦች ውስጥ). ይህ ደግሞ በተቃራኒው አቅጣጫ ይሰራል፣ ECS CP ስራ ፈት የሆኑ ሁኔታዎችን ያለ ተግባር ካየ፣ ከዚያም እንዲዘጋቸው የ ASG ትዕዛዝ ይሰጣል። ECS CP የታለመውን የአብነት ጭነት መቶኛ የመግለጽ ችሎታ አለው፣ ስለዚህም የተወሰነ ቁጥር ያላቸው ማሽኖች ሁል ጊዜ በፍጥነት ለሚሰሩ ስራዎች ነፃ ይሆናሉ፤ ስለዚህ ጉዳይ ትንሽ ቆይቶ እናገራለሁ።

EC2 አብነቶችን አስጀምር

ይህንን መሠረተ ልማት ስለመፍጠር በዝርዝር ከመግባቴ በፊት የማወራው የመጨረሻው አገልግሎት EC2 Launch Templates ነው። ይህንን ሁልጊዜ ከባዶ ላለመድገም, ሁሉም ማሽኖች የሚጀምሩበት አብነት እንዲፈጥሩ ይፈቅድልዎታል. እዚህ ለመጀመር የማሽን አይነት, የደህንነት ቡድን, የዲስክ ምስል እና ሌሎች ብዙ መለኪያዎች መምረጥ ይችላሉ. እንዲሁም ወደ ሁሉም የተጀመሩ አጋጣሚዎች የሚሰቀል የተጠቃሚ ውሂብ መግለጽ ይችላሉ። በተጠቃሚ ውሂብ ውስጥ ስክሪፕቶችን ማሄድ ይችላሉ፣ ለምሳሌ የፋይሉን ይዘት ማርትዕ ይችላሉ። የ ECS ወኪል ውቅሮች.

ለዚህ ጽሑፍ በጣም አስፈላጊ ከሆኑ የውቅረት መለኪያዎች አንዱ ነው ECS_ENABLE_SPOT_INSTANCE_DRAINING= እውነት ነው። ይህ ግቤት ከነቃ፣ ልክ ECS የቦታ ምሳሌ እየተወሰደ መሆኑን የሚገልጽ ምልክት እንደተቀበለ፣ በእሱ ላይ የሚሰሩትን ሁሉንም ተግባራት ወደ የውሃ ማፍሰስ ሁኔታ ያስተላልፋል። ለዚህ ምሳሌ ምንም አዲስ ተግባራት አይመደቡም ፣ አሁን ወደ እሱ ለመዘርጋት የሚፈልጉ ተግባራት ካሉ ይሰረዛሉ። ከተመዛኙ የሚቀርቡ ጥያቄዎችም መምጣት ያቆማሉ። የአብነት ስረዛ ማሳወቂያ የሚመጣው ከትክክለኛው ክስተት 2 ደቂቃዎች በፊት ነው። ስለዚህ, የእርስዎ አገልግሎት ከ 2 ደቂቃዎች በላይ ስራዎችን ካላከናወነ እና ምንም ነገር በዲስክ ላይ ካላስቀመጠ, ውሂብን ሳያጡ የቦታ አጋጣሚዎችን መጠቀም ይችላሉ.

ዲስክን በተመለከተ - AWS በቅርቡ አደረገ የ Elastic File System (EFS)ን ከኢሲኤስ ጋር በጋራ መጠቀም ይቻላል፡ በዚህ እቅድ ዲስኩ እንኳን እንቅፋት አይደለም ነገርግን ይህንን አልሞከርንም፤ በመርህ ደረጃ ስቴቱን ለማከማቸት ዲስኩ ስለማንፈልግ። በነባሪ ፣ SIGINT ን ከተቀበለ በኋላ (አንድ ተግባር ወደ የውሃ ማፍሰሻ ሁኔታ ሲተላለፍ የተላከ) ፣ ሁሉም የማስኬድ ስራዎች ከ 30 ሰከንዶች በኋላ ይቆማሉ ፣ ምንም እንኳን ገና ያልተጠናቀቁ ቢሆኑም ፣ ይህንን ጊዜ በመጠቀም መለኪያውን መለወጥ ይችላሉ ። ECS_CONTAINER_STOP_TIME ውጭ. ዋናው ነገር ለቦታ ማሽኖች ከ 2 ደቂቃዎች በላይ ማዘጋጀት አይደለም.

አገልግሎት መፍጠር

የተገለጸውን አገልግሎት ወደ መፍጠር እንሂድ። በሂደቱ ውስጥ፣ ከዚህ በላይ ያልተጠቀሱ በርካታ ጠቃሚ ነጥቦችን በተጨማሪ እገልጻለሁ። በአጠቃላይ, ይህ የደረጃ በደረጃ መመሪያ ነው, ነገር ግን አንዳንድ በጣም መሠረታዊ የሆኑትን ወይም, በተቃራኒው, በጣም የተለዩ ጉዳዮችን አላስብም. ሁሉም ድርጊቶች በAWS ቪዥዋል ኮንሶል ውስጥ ይከናወናሉ፣ ነገር ግን CloudFormation ወይም Terraformን በመጠቀም ፕሮግራማዊ በሆነ መንገድ ሊባዙ ይችላሉ። በ Adapty ቴራፎርምን እንጠቀማለን።

EC2 አስጀምር አብነት

ይህ አገልግሎት ጥቅም ላይ የሚውሉ ማሽኖችን ውቅር ይፈጥራል. አብነቶች የሚተዳደሩት በEC2 -> ሁኔታዎች -> የአብነት ማስጀመሪያ ክፍል ነው።

የአማዞን ማሽን ምስል (ኤኤምአይ) - ሁሉም ሁኔታዎች የሚጀመሩበትን የዲስክ ምስል ይግለጹ። ለኢሲኤስ፣ በአብዛኛዎቹ አጋጣሚዎች ከአማዞን የተገኘውን የተመቻቸ ምስል መጠቀም ተገቢ ነው። በመደበኛነት ተዘምኗል እና ECS እንዲሰራ አስፈላጊ የሆኑትን ሁሉ ይዟል። የአሁኑን ምስል መታወቂያ ለማወቅ ወደ ገጹ ይሂዱ Amazon ECS-የተመቻቸ ኤኤምአይየሚጠቀሙበትን ክልል ይምረጡ እና የ AMI መታወቂያውን ለእሱ ይቅዱ። ለምሳሌ, ለዩኤስ-ምስራቅ-1 ክልል, በሚጽፉበት ጊዜ የአሁኑ መታወቂያ ነው ami-00c7c1cf5bdc913ed. ይህ መታወቂያ ብጁ ዋጋ ያለው ንጥል ነገር ውስጥ መግባት አለበት።

የአብነት አይነት - የምሳሌውን አይነት ያመልክቱ። ለእርስዎ ተግባር በተሻለ የሚስማማውን ይምረጡ።

የቁልፍ ጥንድ (መግቢያ) - አስፈላጊ ከሆነ በኤስኤስኤች በኩል ከምሳሌው ጋር መገናኘት የሚችሉበትን የምስክር ወረቀት ይጥቀሱ።

የአውታረ መረብ ቅንብሮች - የአውታረ መረብ መለኪያዎችን ይግለጹ. የአውታረ መረብ መድረክ በአብዛኛዎቹ ሁኔታዎች ቨርቹዋል የግል ክላውድ (VPC) መኖር አለበት። የደህንነት ቡድኖች - የደህንነት ቡድኖች ለእርስዎ ጉዳዮች። ከሁኔታዎች ፊት ለፊት ሚዛንን ስለምንጠቀም, ገቢ ግንኙነቶችን ከሚዛን ብቻ የሚፈቅድ ቡድን እዚህ እንዲገልጹ እመክራለሁ. ማለትም፣ 2 የደህንነት ቡድኖች ይኖሩዎታል፣ አንዱ ለባለ ሚዛን፣ ከየትኛውም ወደቦች 80 (http) እና 443 (https) የውስጠ-ግንኙነት ግንኙነቶችን የሚፈቅደው እና ሁለተኛው ለማሽኖች ሲሆን ይህም ከተዛማጅ ቡድን ወደቦች ውስጥ ገቢ ግንኙነቶችን ይፈቅዳል። . በሁለቱም ቡድኖች ውስጥ ያሉ የውጪ ግንኙነቶች የ TCP ፕሮቶኮልን በመጠቀም ወደ ሁሉም ወደቦች ወደ ሁሉም አድራሻዎች መከፈት አለባቸው። ለወጪ ግንኙነቶች ወደቦችን እና አድራሻዎችን መገደብ ይችላሉ ፣ ግን ከዚያ በተዘጋ ወደብ ላይ የሆነ ነገር ለመድረስ እየሞከሩ እንዳልሆነ ያለማቋረጥ መከታተል ያስፈልግዎታል።

ማከማቻ (ጥራዞች) - ለማሽኖቹ የዲስክ መለኪያዎችን ይግለጹ. የዲስክ መጠኑ በኤኤምአይ ውስጥ ከተገለጸው ያነሰ ሊሆን አይችልም፤ ለ ECS Optimized 30 GiB ነው።

የላቁ ዝርዝሮች - ተጨማሪ መለኪያዎችን ይግለጹ.

የግዢ አማራጭ - የቦታ ሁኔታዎችን መግዛት ብንፈልግ። እንፈልጋለን፣ ነገር ግን እዚህ ሳጥን ላይ ምልክት አንሆንበትም፤ በአውቶማስካሊንግ ቡድን ውስጥ እናዋቅረዋለን፣ እዚያ ተጨማሪ አማራጮች አሉ።

የ IAM ምሳሌ መገለጫ - ጉዳዮች የሚጀምሩበትን ሚና ያመልክቱ። ሁኔታዎች በECS ውስጥ እንዲሰሩ፣ ፍቃዶች ያስፈልጋቸዋል፣ እሱም አብዛኛውን ጊዜ በሚና ውስጥ ይገኛል። ecsInstanceRole. በአንዳንድ ሁኔታዎች ሊፈጠር ይችላል, ካልሆነ, ከዚያ እዚህ መመሪያ ይህን እንዴት ማድረግ እንደሚቻል. ከተፈጠረ በኋላ, በአብነት ውስጥ እንጠቁማለን.
ቀጥሎ ብዙ መለኪያዎች አሉ ፣ በመሠረቱ ነባሪ እሴቶችን በሁሉም ቦታ መተው ይችላሉ ፣ ግን እያንዳንዳቸው ግልጽ መግለጫ አላቸው። እኔ ሁልጊዜ EBS-የተመቻቸ ምሳሌ እና T2/T3 Unlimited አማራጮችን ከተጠቀሙ አነቃለሁ። ሊፈነዳ የሚችል ሁኔታዎች.

የተጠቃሚ ውሂብ - የተጠቃሚ ውሂብን ያመልክቱ። ፋይሉን እናስተካክላለን /etc/ecs/ecs.configየ ECS ወኪል ውቅርን የያዘ።
የተጠቃሚ ውሂብ ምን ሊመስል እንደሚችል የሚያሳይ ምሳሌ፡-

#!/bin/bash
echo ECS_CLUSTER=DemoApiClusterProd >> /etc/ecs/ecs.config
echo ECS_ENABLE_SPOT_INSTANCE_DRAINING=true >> /etc/ecs/ecs.config
echo ECS_CONTAINER_STOP_TIMEOUT=1m >> /etc/ecs/ecs.config
echo ECS_ENGINE_AUTH_TYPE=docker >> /etc/ecs/ecs.config
echo "ECS_ENGINE_AUTH_DATA={"registry.gitlab.com":{"username":"username","password":"password"}}" >> /etc/ecs/ecs.config

ECS_CLUSTER=DemoApiClusterProd — መለኪያው የሚያመለክተው ምሳሌው የተሰየመው ስም ያለው የክላስተር አካል መሆኑን ነው፣ ያም ይህ ክላስተር ተግባራቶቹን በዚህ አገልጋይ ላይ ማስቀመጥ ይችላል። ክላስተር እስካሁን አልፈጠርንም፣ ነገር ግን ይህን ስም ስንፈጥረው እንጠቀማለን።

ECS_ENABLE_SPOT_INSTANCE_DRAINING=true - መለኪያው ቦታውን ለማጥፋት ምልክት ሲደርሰው በእሱ ላይ ያሉት ሁሉም ተግባራት ወደ ፍሳሽ ሁኔታ መተላለፍ አለባቸው.

ECS_CONTAINER_STOP_TIMEOUT=1m - መለኪያው የSIGINT ምልክት ከተቀበለ በኋላ ሁሉም ተግባራት ከመገደላቸው በፊት 1 ደቂቃ እንዳላቸው ይገልጻል።

ECS_ENGINE_AUTH_TYPE=docker - መለኪያው የሚያመለክተው የዶከር እቅድ እንደ የፍቃድ ዘዴ ጥቅም ላይ ይውላል

ECS_ENGINE_AUTH_DATA=... - የዶክተር ምስሎችዎ ወደ ሚቀመጡበት የግል መያዣ መዝገብ ቤት የግንኙነት መለኪያዎች። ይፋዊ ከሆነ ምንም ነገር መግለጽ አያስፈልግዎትም።

ለዚህ ጽሁፍ ዓላማ ከDocker Hub የወል ምስል እጠቀማለሁ፣ ስለዚህ መለኪያዎቹን ይግለጹ ECS_ENGINE_AUTH_TYPE и ECS_ENGINE_AUTH_DATA አያስፈልግም.

ማወቅ ጥሩ ነው።: ኤኤምአይን በመደበኛነት ማዘመን ይመከራል ፣ ምክንያቱም አዲስ ስሪቶች የዶከር ፣ ሊኑክስ ፣ ኢሲኤስ ወኪል ፣ ወዘተ ስሪቶችን ያሻሽላሉ ። ይህንን ላለመርሳት ፣ ይችላሉ ። ማሳወቂያዎችን አዘጋጅ ስለ አዳዲስ ስሪቶች መለቀቅ. ማሳወቂያዎችን በኢሜል መቀበል እና በእጅ ማዘመን ይችላሉ ወይም የ Lambda ተግባርን መፃፍ ይችላሉ ፣ ይህም ከተዘመነ ኤኤምአይ ጋር አዲስ የ Launch Templateን በራስ-ሰር ይፈጥራል።

EC2 ራስ-መለኪያ ቡድን

አውቶማቲክ ሚዛን ቡድን አጋጣሚዎችን ለመጀመር እና ለመለካት ሃላፊነት አለበት። ቡድኖች የሚተዳደሩት በ EC2 -> አውቶማቲክ ሚዛን -> ራስ-መለኪያ ቡድኖች ክፍል ውስጥ ነው።

አብነት አስጀምር - ባለፈው ደረጃ የተፈጠረውን አብነት ይምረጡ። ነባሪውን ስሪት እንተዋለን.

የግዢ አማራጮች እና የአብነት ዓይነቶች - ለክላስተር የአብነት ዓይነቶችን ይግለጹ። የማስጀመሪያውን አብነት ይከተሉ ከቅንብር አብነት የአብነት አይነትን ይጠቀማል። የግዢ አማራጮችን እና የአብነት ዓይነቶችን ያጣምሩ የአብነት ዓይነቶችን በተለዋዋጭ እንዲያዋቅሩ ያስችልዎታል። እንጠቀማለን.

አማራጭ በፍላጎት መሰረት - ሁልጊዜ የሚሰሩ መደበኛ ፣ ቦታ ያልሆኑ አጋጣሚዎች ብዛት።

በፍላጎት መቶኛ ከመሠረት በላይ - የመደበኛ እና የቦታ አጋጣሚዎች መቶኛ ሬሾ፣ 50-50 እኩል ይሰራጫሉ፣ 20-80 ለእያንዳንዱ መደበኛ ምሳሌ 4 ስፖዎች ይነሳሉ። ለዚህ ምሳሌ ዓላማ 50-50 እጠቁማለሁ ፣ ግን በእውነቱ እኛ ብዙውን ጊዜ 20-80 እናደርጋለን ፣ በአንዳንድ ሁኔታዎች 0-100።

የአብነት ዓይነቶች - እዚህ በክላስተር ውስጥ ጥቅም ላይ የሚውሉ ተጨማሪ የአብነት ዓይነቶችን መግለጽ ይችላሉ። የታሪኩን ትርጉም በትክክል ስላልገባኝ በፍጹም አልተጠቀምንበትም። ምናልባት ይህ በተወሰኑ የአብነት ዓይነቶች ላይ ባለው ገደብ ምክንያት ነው, ነገር ግን በድጋፍ በቀላሉ ሊጨመሩ ይችላሉ. ማመልከቻውን ካወቁ በአስተያየቶቹ ውስጥ ሳነብ ደስ ይለኛል)

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

አውታረ መረብ — የአውታረ መረብ መቼቶች፣ ለማሽኖች VPC እና ንዑስ አውታረ መረቦችን ይምረጡ፣ በአብዛኛዎቹ ሁኔታዎች ሁሉንም የሚገኙትን ንዑስ አውታረ መረቦች መምረጥ አለብዎት።

ጭነት ጭነት - ሚዛናዊ ቅንጅቶች ፣ ግን ይህንን በተናጥል እናደርጋለን ፣ እዚህ ምንም ነገር አንነካም። የጤና ምርመራዎች በኋላም ይዋቀራል።

የቡድን መጠን - በክላስተር ውስጥ ባሉት የማሽኖች ብዛት ላይ ያለውን ገደብ እና በጅምር ላይ የሚፈለጉትን ማሽኖች ብዛት እንጠቁማለን። በክላስተር ውስጥ ያሉት የማሽኖች ብዛት ከተጠቀሰው ዝቅተኛ እና ከፍተኛው በጭራሽ ያነሰ አይሆንም፣ ምንም እንኳን በመለኪያዎቹ መሰረት መመዘን ቢፈጠርም።

የመለኪያ ፖሊሲዎች - የመለኪያ መለኪያዎች ፣ ግን በሚሰሩት የ ECS ተግባራት ላይ በመመስረት እንለካለን ፣ ስለዚህ ልኬቱን በኋላ እናዋቅራለን።

የምሳሌ ልኬት-ውስጥ ጥበቃ - በሚቀንሱበት ጊዜ ሁኔታዎችን ከመሰረዝ መከላከል። ASG የሚሰሩ ስራዎች ያለውን ማሽን እንዳይሰርዝ እናሰራዋለን። የECS አቅም አቅራቢ ተግባር ለሌላቸው ጉዳዮች ጥበቃን ያሰናክላል።

መለያዎችን ያክሉ - ለአብነት መለያዎችን መግለጽ ይችላሉ (ለዚህ ፣ አዲስ መለያዎች አመልካች ሳጥን መፈተሽ አለበት)። የስም መለያውን እንዲገልጹ እመክራለሁ, ከዚያ በቡድኑ ውስጥ የተጀመሩ ሁሉም አጋጣሚዎች ተመሳሳይ ስም ይኖራቸዋል, እና በኮንሶል ውስጥ ለማየት ምቹ ነው.

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

ቡድኑን ከፈጠሩ በኋላ ይክፈቱት እና ወደ የላቀ ውቅሮች ክፍል ይሂዱ።ለምን ሁሉም አማራጮች በኮንሶል ውስጥ በፍጥረት ደረጃ አይታዩም።

የማቋረጥ ፖሊሲዎች - ሁኔታዎችን በሚሰርዙበት ጊዜ ግምት ውስጥ የሚገቡ ህጎች። እነሱ በቅደም ተከተል ይተገበራሉ. ብዙውን ጊዜ ከታች በምስሉ ላይ ያሉትን እንጠቀማለን. በመጀመሪያ፣ በጣም ጥንታዊው የማስጀመሪያ አብነት ያላቸው ምሳሌዎች ይሰረዛሉ (ለምሳሌ፣ ኤኤምአይን ካዘመንን አዲስ ስሪት ፈጠርን ፣ ግን ሁሉም ሁኔታዎች ወደ እሱ ሊቀየሩ ችለዋል)። ከዚያ ለሚቀጥለው የክፍያ ሰዓት በጣም ቅርብ የሆኑት ሁኔታዎች ተመርጠዋል። እና ከዚያ በጣም ጥንታዊዎቹ የሚመረጡት በተነሳበት ቀን ላይ በመመስረት ነው።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

ማወቅ ጥሩ ነው።ሁሉንም ማሽኖች በክላስተር ለማዘመን ፣ ለመጠቀም ምቹ ምሳሌ አድስ. ይህንን ካለፈው እርምጃ ከላምዳ ተግባር ጋር ካዋህዱት፣ ሙሉ በሙሉ በራስ-ሰር የሚሰራ የአብነት ማሻሻያ ስርዓት ይኖርዎታል። ሁሉንም ማሽኖች ከማዘመንዎ በፊት፣ በቡድኑ ውስጥ ላሉት ሁሉም አጋጣሚዎች የአብነት-ውስጥ ጥበቃን ማሰናከል አለብዎት። በቡድኑ ውስጥ ማዋቀር አይደለም, ነገር ግን ከማሽኖቹ እራሳቸው ጥበቃ, ይህ በምሳሌ አስተዳደር ትር ላይ ይከናወናል.

የመተግበሪያ ጭነት ሚዛን እና EC2 ዒላማ ቡድን

ሚዛኑ የተፈጠረው በክፍል EC2 → Load Balance → Load Balancers ውስጥ ነው። የአፕሊኬሽን ሎድ ባላንስ እንጠቀማለን፤የተለያዩ የሒሳብ ሰጪዎች ንጽጽር በ ላይ ማንበብ ይቻላል። የአገልግሎት ገጽ.

አድማጮች - ወደቦች 80 እና 443 መስራት እና ከ 80 ወደ 443 አቅጣጫ ማዞር ምክንያታዊ ነው በኋላ ሚዛን ህጎችን በመጠቀም።

ተገኝነት ዞኖች - በአብዛኛዎቹ አጋጣሚዎች ለሁሉም ሰው የተደራሽነት ዞኖችን እንመርጣለን.

የደህንነት ቅንብሮችን ያዋቅሩ - ለተመጣጣኝ የኤስ ኤስ ኤል የምስክር ወረቀት እዚህ ተጠቁሟል ፣ በጣም ምቹው አማራጭ ነው። የምስክር ወረቀት ያዘጋጁ በኤሲኤም. ስለ ልዩነቶች የደህንነት መመሪያ ውስጥ ሊነበብ ይችላል ሰነድ, በነባሪነት ተመርጦ መተው ይችላሉ ELBSecurityPolicy-2016-08. ሚዛኑን ከፈጠሩ በኋላ ያዩታል የዲ ኤን ኤስ ስምCNAMEን ለጎራህ ለማዋቀር የሚያስፈልግህ። ለምሳሌ፣ በ Cloudflare ውስጥ እንደዚህ ይመስላል።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የደህንነት ቡድን — ለባለ ሚዛኑ የደህንነት ቡድን ፍጠር ወይም ምረጥ፣ ስለዚህ ጉዳይ ከላይ በ EC2 Launch Template → Network settings ክፍል ውስጥ የበለጠ ጽፌያለሁ።

ዒላማ ቡድን - ጥያቄዎችን ከተመጣጣኝ ማሽኑ ወደ ማሽኖች የማዞር እና በችግሮች ጊዜ እነሱን ለመተካት ያላቸውን ተገኝነት የማጣራት ኃላፊነት ያለው ቡድን እንፈጥራለን። Getላማ ዓይነት ምሳሌ መሆን አለበት ፣ ፕሮቶኮል и ወደብ ማንኛውም፣ በተመጣጣኝ እና በሁኔታዎች መካከል ለመገናኛ HTTPS የሚጠቀሙ ከሆነ፣ የምስክር ወረቀት ለእነሱ መስቀል ያስፈልግዎታል። ለዚህ ምሳሌ ዓላማ ይህንን አናደርግም, በቀላሉ ወደብ 80 እንተወዋለን.

የጤና ምርመራዎች - የአገልግሎቱን ተግባራዊነት ለመፈተሽ መለኪያዎች. በእውነተኛ አገልግሎት ፣ ይህ የንግድ ሥራ አመክንዮ አስፈላጊ ክፍሎችን የሚተገበር የተለየ ጥያቄ መሆን አለበት ፣ ለዚህ ​​ምሳሌ ዓላማ ፣ ነባሪ ቅንብሮችን እተወዋለሁ። በመቀጠል የጥያቄውን ክፍተት ፣የጊዜ ማብቂያ ፣የስኬት ኮዶችን ወዘተ መምረጥ ይችላሉ።በእኛ ምሳሌ ውስጥ የስኬት ኮዶች 200-399 እንጠቁማለን ምክንያቱም ጥቅም ላይ የሚውለው Docker ምስል 304 ኮድ ይመልሳል።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

ዒላማዎችን ይመዝገቡ - እዚህ የቡድኑ መኪኖች ተመርጠዋል, ነገር ግን በእኛ ሁኔታ ይህ በ ECS ይከናወናል, ስለዚህ ይህን ደረጃ ብቻ እንዘልላለን.

ማወቅ ጥሩ ነው።: በተመጣጣኝ ደረጃ በተወሰነው ውስጥ በ S3 ውስጥ የሚቀመጡ ምዝግብ ማስታወሻዎችን ማንቃት ይችላሉ ቅርጸት. ከዚያ ሆነው ለትንታኔ ወደ የሶስተኛ ወገን አገልግሎቶች ሊላኩ ይችላሉ፣ ወይም የ SQL መጠይቆችን በ S3 ውስጥ ባለው መረጃ ላይ በቀጥታ ማድረግ ይችላሉ። አቴናን በመጠቀም. ምቹ ነው እና ያለ ተጨማሪ ኮድ ይሰራል። እንዲሁም ከተወሰነ ጊዜ በኋላ ከ S3 ባልዲ ውስጥ የምዝግብ ማስታወሻዎችን ማስወገድን ለማቀናበር እመክራለሁ.

ECS ተግባር ትርጉም

በቀደሙት ደረጃዎች ከአገልግሎት መሠረተ ልማት ጋር የተያያዙ ሁሉንም ነገሮች ፈጠርን, አሁን የምንነሳባቸውን ኮንቴይነሮች ወደ መግለጽ እንቀጥላለን. ይህ በ ECS → የተግባር መግለጫዎች ክፍል ውስጥ ይከናወናል.

የማስጀመሪያ አይነት ተኳኋኝነት - EC2 ን ይምረጡ።

የተግባር አፈፃፀም IAM ሚና - ይምረጡ ecsTaskExecutionRole. እሱን በመጠቀም, ምዝግብ ማስታወሻዎች ተጽፈዋል, ሚስጥራዊ ተለዋዋጮች መዳረሻ ተሰጥቷል, ወዘተ.

በኮንቴይነር ፍቺዎች ክፍል ውስጥ ኮንቴይነር አክል የሚለውን ጠቅ ያድርጉ።

ምስል — ምስሉን ከፕሮጀክት ኮድ ጋር ማገናኘት፤ ለዚህ ምሳሌ ከDocker Hub የወል ምስል እጠቀማለሁ። bitnami/node-ምሳሌ፡0.0.1.

የማስታወስ ገደቦች - ለመያዣው የማህደረ ትውስታ ገደቦች. ከባድ ገደብ - ጠንካራ ገደብ, መያዣው ከተጠቀሰው እሴት በላይ ከሄደ, የዶከር ግድያ ትዕዛዝ ይፈጸማል, መያዣው ወዲያውኑ ይሞታል. ለስላሳ ወሰን - ለስላሳ ገደብ, መያዣው ከተጠቀሰው እሴት በላይ ሊሄድ ይችላል, ነገር ግን ይህ ግቤት በማሽኖች ላይ ስራዎችን ሲጭን ግምት ውስጥ ይገባል. ለምሳሌ አንድ ማሽን 4 ጂቢ ራም ካለው እና የእቃ መያዣው ለስላሳ ገደብ 2048 ሚቢ ከሆነ ይህ ማሽን በዚህ ኮንቴይነር ቢበዛ 2 የሩጫ ስራዎች ሊኖሩት ይችላል። እንደ እውነቱ ከሆነ 4 ጊቢ ራም ከ4096 ሚቢ በትንሹ ያነሰ ነው፣ ይህ በክላስተር ውስጥ ባለው የ ECS አጋጣሚዎች ትር ላይ ሊታይ ይችላል። ለስላሳ ገደብ ከጠንካራ ገደብ መብለጥ አይችልም. በአንድ ተግባር ውስጥ ብዙ ኮንቴይነሮች ካሉ, ገደቦቻቸው ይጠቃለላሉ የሚለውን መረዳት አስፈላጊ ነው.

ወደብ ካርታዎች - ውስጥ አስተናጋጅ ወደብ እኛ 0 እንጠቁማለን, ይህ ማለት ወደቡ በተለዋዋጭነት ይመደባል እና በዒላማ ቡድን ቁጥጥር ይደረግበታል ማለት ነው. የመያዣ ወደብ - ማመልከቻዎ የሚሠራበት ወደብ ብዙውን ጊዜ በአፈፃፀም ትዕዛዙ ውስጥ ይገለጻል ወይም በመተግበሪያ ኮድዎ ፣ Dockerfile ፣ ወዘተ ውስጥ ይመደባል ። ለእኛ ምሳሌ 3000 እንጠቀማለን ምክንያቱም በውስጡ ተዘርዝሯል Dockerfile ጥቅም ላይ የዋለው ምስል.

የጤና ምርመራ - የመያዣ ጤና ፍተሻ መለኪያዎች፣ በዒላማ ቡድን ውስጥ ከተዋቀረው ጋር መምታታት የለበትም።

አካባቢ - የአካባቢ ቅንብሮች. የሲፒዩ ክፍሎች - ከማህደረ ትውስታ ገደቦች ጋር ተመሳሳይ ፣ ስለ ፕሮሰሰር ብቻ። እያንዳንዱ ፕሮሰሰር ኮር 1024 አሃዶች ነው ስለዚህ አገልጋዩ ባለሁለት ኮር ፕሮሰሰር ካለው እና እቃው ወደ 512 ከተዋቀረ በዚህ ኮንቴይነር 4 ስራዎች በአንድ አገልጋይ ላይ ሊጀመሩ ይችላሉ። የሲፒዩ አሃዶች ሁል ጊዜ ከኮሮች ብዛት ጋር ይዛመዳሉ ፣ እንደ ማህደረ ትውስታ ሁሉ ትንሽ ትንሽ ሊሆኑ አይችሉም።

ትእዛዝ - በመያዣው ውስጥ አገልግሎት ለመጀመር ትእዛዝ ፣ ሁሉም መለኪያዎች በነጠላ ሰረዞች ተለይተዋል። ይህ gunicorn፣ npm፣ ወዘተ ሊሆን ይችላል። ካልተገለጸ፣ ከDockerfile የCMD መመሪያ ዋጋ ጥቅም ላይ ይውላል። እንጠቁማለን። npm,start.

የአካባቢ ተለዋዋጮች - መያዣ አካባቢ ተለዋዋጮች. ይህ ቀላል የጽሑፍ ውሂብ ወይም ሚስጥራዊ ተለዋዋጮች ከ ሊሆን ይችላል። ሚስጥሮች አስተዳዳሪ ወይም መለኪያ መደብር.

ማከማቻ እና ምዝግብ ማስታወሻ - እዚህ በ CloudWatch Logs (ከAWS የምዝግብ ማስታወሻዎች አገልግሎት) ውስጥ መግባትን እናዘጋጃለን። ይህንን ለማድረግ የ CloudWatch Logs አመልካች ሳጥኑን በራስ-ማዋቀር ብቻ ያንቁ። የተግባር ፍቺውን ከፈጠሩ በኋላ የምዝግብ ማስታወሻዎች ቡድን በራስ-ሰር በCloudWatch ውስጥ ይፈጠራል። በነባሪ ፣ ምዝግብ ማስታወሻዎች በእሱ ውስጥ ላልተወሰነ ጊዜ ይከማቻሉ ፣ የማቆያ ጊዜውን ከ Never Expire ወደ አስፈላጊው ጊዜ እንዲቀይሩ እመክራለሁ ። ይህ በ CloudWatch Log ቡድኖች ውስጥ ይከናወናል, አሁን ያለውን ጊዜ ጠቅ ማድረግ እና አዲስ መምረጥ ያስፈልግዎታል.

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የECS ክላስተር እና የECS አቅም አቅራቢ

ዘለላ ለመፍጠር ወደ ECS → ዘለላዎች ክፍል ይሂዱ። እንደ አብነት EC2 Linux + Networking እንመርጣለን።

የክላስተር ስም - በጣም አስፈላጊ፣ በአብነት ማስጀመሪያ ግቤት ውስጥ ከተገለጸው ጋር አንድ አይነት ስም እዚህ እናደርጋለን ECS_CLUSTERበእኛ ሁኔታ - DemoApiClusterProd. ባዶ ክላስተር ፍጠር አመልካች ሳጥኑ ላይ ምልክት ያድርጉ። በአማራጭ፣ በCloudWatch ውስጥ የአገልግሎቶች መለኪያዎችን ለማየት Container Insightsን ማንቃት ይችላሉ። ሁሉንም ነገር በትክክል ካደረጉት, በ ECS ምሳሌዎች ክፍል ውስጥ በአውቶማቲክ መለኪያ ቡድን ውስጥ የተፈጠሩ ማሽኖችን ያያሉ.

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

ወደ ትር ይሂዱ አቅም አቅራቢዎች እና አዲስ ይፍጠሩ. እንደ ECS ተግባራት ብዛት ላይ በመመስረት የማሽኖችን መፍጠር እና መዘጋት ለመቆጣጠር እንደሚያስፈልግ ላስታውስዎ። አቅራቢው ለአንድ ቡድን ብቻ ​​ሊመደብ እንደሚችል ልብ ሊባል የሚገባው ጉዳይ ነው።

ራስ-ሰር መለኪያ ቡድን - ቀደም ሲል የተፈጠረውን ቡድን ይምረጡ።

የሚተዳደር ልኬት - አቅራቢው አገልግሎቱን እንዲያሳድግ ማንቃት።

የዒላማ አቅም % - ምን ያህል በመቶኛ በተግባሮች የተጫኑ ማሽኖች እንፈልጋለን። 100% ከገለጹ ሁሉም ማሽኖች ሁል ጊዜ በተግባራዊ ስራዎች ይጠመዳሉ። እርስዎ 50% ከገለጹ, ከዚያ ግማሹ መኪኖች ሁልጊዜ ነጻ ይሆናሉ. በዚህ ሁኔታ, በጭነት ውስጥ ስለታም ዝላይ ካለ, አዲስ ታክሲዎች ወዲያውኑ ወደ መኪናዎች ነጻ ይሆናሉ, ሁኔታዎችን ለመዘርጋት መጠበቅ ሳያስፈልጋቸው.

የሚተዳደር የማቋረጫ ጥበቃ - አንቃ፣ ይህ ግቤት አቅራቢው የአጋጣሚዎችን ጥበቃ ከመሰረዝ እንዲያስወግድ ያስችለዋል። ይህ የሚሆነው በማሽኑ ላይ ምንም ንቁ ተግባራት ከሌሉ እና የዒላማ አቅምን ሲፈቅድ ነው.

ECS አገልግሎት እና ልኬት ማዋቀር

የመጨረሻው ደረጃ :) አገልግሎትን ለመፍጠር ቀደም ሲል በአገልግሎት ትር ላይ ወደ ተፈጠረ ክላስተር መሄድ ያስፈልግዎታል።

የማስጀመሪያ ዓይነት — ወደ አቅም አቅራቢ ስትራቴጂ ቀይር የሚለውን ጠቅ ማድረግ እና ቀደም ሲል የተፈጠሩትን አቅራቢዎችን መምረጥ ያስፈልግዎታል።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የተግባር ፍቺ - ከዚህ ቀደም የተፈጠረውን የተግባር ትርጉም እና ማሻሻያውን ይምረጡ።

የአገልግሎት ስም - ግራ መጋባትን ለማስወገድ ሁልጊዜ ከተግባር ፍቺ ጋር አንድ አይነት እንጠቁማለን።

የአገልግሎት ዓይነት - ሁልጊዜ ግልባጭ።

የተግባሮች ብዛት - በአገልግሎቱ ውስጥ የሚፈለገውን የንቁ ተግባራት ብዛት. ይህ ግቤት የሚቆጣጠረው በመጠን ነው፣ ግን አሁንም መገለጽ አለበት።

ቢያንስ ጤናማ መቶኛ и ከፍተኛው መቶኛ - በሚሰማሩበት ጊዜ የተግባሮችን ባህሪ መወሰን ። ነባሪ ዋጋዎች 100 እና 200 ናቸው, ይህም በተሰማሩበት ጊዜ የተግባሮች ብዛት ብዙ ጊዜ እንደሚጨምር እና ከዚያም ወደ ተፈላጊው እሴት ይመለሳሉ. 1 ተግባር እየሮጠ፣ min=0 እና max=100 ካለህ፣በማሰማራቱ ወቅት ይገደላል፣ከዚያም በኋላ አዲስ ይነሳል፣ይህም የእረፍት ጊዜ ይሆናል። 1 ተግባር እየሄደ ከሆነ min = 50, max=150, ከዚያ ማሰማራት በጭራሽ አይሆንም, ምክንያቱም 1 ተግባር በግማሽ ሊከፋፈል ወይም በአንድ ተኩል ጊዜ መጨመር አይቻልም.

የማሰማራት አይነት - የሮሊንግ ዝመናን ይተዉት።

የአቀማመጥ አብነቶች - ስራዎችን በማሽኖች ላይ ለማስቀመጥ ደንቦች. ነባሪው AZ Balanced Spread ነው - ይህ ማለት በሁሉም ተደራሽ ዞኖች ውስጥ ያሉ ማሽኖች እስኪነሱ ድረስ እያንዳንዱ አዲስ ተግባር በአዲስ ምሳሌ ላይ ይቀመጣል ማለት ነው። እኛ ብዙውን ጊዜ BinPack - CPU እና Spread - AZ እንሰራለን፤ በዚህ ፖሊሲ በተቻለ መጠን ተግባራት በእያንዳንዱ ሲፒዩ ላይ በአንድ ማሽን ላይ ይቀመጣሉ። አዲስ ማሽን ለመፍጠር አስፈላጊ ከሆነ በአዲስ ተደራሽ ዞን ውስጥ ይፈጠራል.

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የመጫኛ ሚዛን አይነት - የመተግበሪያ ጭነት ሚዛንን ይምረጡ።

የአገልግሎት IAM ሚና - ይምረጡ ecsServiceRole.

ጫን ሚዛን ጠባቂ ስም - ቀደም ሲል የተፈጠረውን ሚዛን ይምረጡ።

የጤና ምርመራ የእፎይታ ጊዜ - አዲስ ሥራ ከሠራን በኋላ የጤና ምርመራ ከማድረግዎ በፊት ቆም ይበሉ ፣ ብዙውን ጊዜ ወደ 60 ሰከንድ እናዘጋጃለን ።

ሚዛን ለመጫን መያዣ - በዒላማ ቡድን ስም ንጥል ውስጥ, ቀደም ሲል የተፈጠረውን ቡድን ይምረጡ, እና ሁሉም ነገር በራስ-ሰር ይሞላል.

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

የአገልግሎት ራስ-መጠን - የአገልግሎት ልኬት መለኪያዎች. የእርስዎን አገልግሎት የሚፈልገውን ቆጠራ ለማስተካከል አገልግሎትን አዋቅር የሚለውን ይምረጡ። በሚለካበት ጊዜ ዝቅተኛውን እና ከፍተኛውን የተግባር ብዛት እናዘጋጃለን።

የIAM ሚና ለአገልግሎት ራስ-መጠን - ይምረጡ AWSServiceRoleForApplicationAutoScaling_ECSService.

ራስ-ሰር የተግባር ልኬት መመሪያዎች - የመጠን ህጎች። 2 ዓይነቶች አሉ-

  1. የዒላማ ክትትል - የዒላማ መለኪያዎችን መከታተል (የሲፒዩ/ራም አጠቃቀም ወይም ለእያንዳንዱ ተግባር የጥያቄዎች ብዛት)። ለምሳሌ, የአማካይ ፕሮሰሰር ጭነት 85% እንዲሆን እንፈልጋለን, ከፍ ያለ ሲሆን, የታለመው እሴት ላይ እስኪደርስ ድረስ አዳዲስ ስራዎች ይጨምራሉ. ጭነቱ ዝቅተኛ ከሆነ, ከዚያም ተግባሮቹ ይወገዳሉ, በተቃራኒው, ወደ ታች መውረድ መከላከያ ካልነቃ በስተቀር (መመዘኛን አሰናክል).
  2. የደረጃ ልኬት - የዘፈቀደ ክስተት ምላሽ። እዚህ ለማንኛውም ክስተት (CloudWatch Alarm) ምላሽን ማዋቀር ይችላሉ, ሲከሰት, የተገለጹትን የተግባሮች ብዛት ማከል ወይም ማስወገድ ወይም ትክክለኛውን የተግባር ብዛት መግለጽ ይችላሉ.

አንድ አገልግሎት ብዙ የመለኪያ ህጎች ሊኖሩት ይችላል, ይህ ጠቃሚ ሊሆን ይችላል, ዋናው ነገር እርስ በእርሳቸው እንዳይጋጩ ማረጋገጥ ነው.

መደምደሚያ

መመሪያዎቹን ከተከተሉ እና ተመሳሳዩን Docker ምስል ከተጠቀሙ አገልግሎትዎ እንደዚህ ያለ ገጽ መመለስ አለበት።

በAWS ስፖት አጋጣሚዎች ላይ ሊለካ የሚችል ኤፒአይ መገንባት

  1. በአገልግሎቱ ውስጥ ያሉ ሁሉም ማሽኖች የሚጀመሩበት አብነት ፈጠርን። አብነት ሲቀየር ማሽኖችን እንዴት ማዘመን እንደምንችልም ተምረናል።
  2. የስፖት ለምሳሌ የማቆሚያ ሲግናል ሂደትን አዋቅረነዋል፣ ስለዚህ ከደረሰን በኋላ በአንድ ደቂቃ ውስጥ ሁሉም የማስኬድ ስራዎች ከማሽኑ ላይ ስለሚወገዱ ምንም አይጠፋም ወይም አይቋረጥም።
  3. ሸክሙን በማሽኖቹ ላይ እኩል ለማከፋፈል ሚዛኑን አነሳን.
  4. የማሽን ወጪን በ3 ጊዜ ያህል የሚቀንስ አገልግሎት በቦታ ሁኔታዎች ላይ ፈጥረናል።
  5. የተጨመሩ የስራ ጫናዎችን ለማስተናገድ በሁለቱም አቅጣጫ አውቶማቲክን አዋቅረን የሰአት ወጪ ሳናወጣ።
  6. አፕሊኬሽኑ የመሠረተ ልማት አውታሮችን (ማሽኖችን) እንዲያስተዳድር አቅም አቅራቢን እንጠቀማለን እንጂ በተቃራኒው አይደለም።
  7. ምርጥ ነን።

ሊገመቱ የሚችሉ ጭነቶች ካሉዎት፣ ለምሳሌ በትልቅ የኢሜል ዘመቻ ላይ እያስተዋወቁ ነው፣ ልኬቱን በ የጊዜ ሰሌዳ.

እንዲሁም ከተለያዩ የስርዓትዎ ክፍሎች በተገኘ መረጃ ላይ በመመስረት ልኬት ማድረግ ይችላሉ። ለምሳሌ, ተግባራዊነት አለን የግለሰብ ማስተዋወቂያ ቅናሾችን በመላክ ላይ የሞባይል መተግበሪያ ተጠቃሚዎች። አንዳንድ ጊዜ ዘመቻ ለ1M+ ሰዎች ይላካል። ከእንደዚህ አይነት ስርጭት በኋላ፣ ብዙ ተጠቃሚዎች በተመሳሳይ ጊዜ ወደ መተግበሪያው ስለሚገቡ ሁልጊዜ ለኤፒአይ የሚቀርቡ ጥያቄዎች ከፍተኛ ጭማሪ አላቸው። ስለዚህ የማስተዋወቂያ የግፋ ማስታወቂያዎችን ለመላክ ወረፋው ላይ ጉልህ የሆኑ መደበኛ አመልካቾች እንዳሉ ከተመለከትን ለጭነቱ ዝግጁ ለመሆን ብዙ ተጨማሪ ማሽኖችን እና ተግባሮችን ወዲያውኑ መጀመር እንችላለን።

በአስተያየቶቹ ውስጥ ብትነግሩኝ ደስ ይለኛል ስፖት አጋጣሚዎችን እና ኢሲኤስን ወይም ስለ ስኬል አንድ ነገር መጠቀም።

በሴኮንድ በሺዎች የሚቆጠሩ የትንታኔ ክስተቶችን በብዛት አገልጋይ በሌለው ቁልል (በገንዘብ) እና የአገልግሎቶች ዝርጋታ GitLab CI እና Terraform Cloud እንዴት እንደሚሰራ የሚገልጹ ጽሁፎች በቅርቡ ይኖራሉ።

እኛን ይመዝገቡ, አስደሳች ይሆናል!

በዳሰሳ ጥናቱ ውስጥ የተመዘገቡ ተጠቃሚዎች ብቻ መሳተፍ ይችላሉ። ስግን እንእባክህን።

በምርት ውስጥ የቦታ ምሳሌዎችን ትጠቀማለህ?

  • 22,2%አዎ 6

  • 66,7%No18

  • 11,1%ስለነሱ ከአንድ መጣጥፍ ተማርኩኝ እና እነሱን ለመጠቀም እቅድ አለኝ3

27 ተጠቃሚዎች ድምጽ ሰጥተዋል። 5 ተጠቃሚዎች ድምፀ ተአቅቦ አድርገዋል።

ምንጭ: hab.com

አስተያየት ያክሉ