የአገልግሎት መረብ ዳታ አውሮፕላን ከመቆጣጠሪያ አውሮፕላን ጋር

ሃይ ሀብር! የጽሁፉን ትርጉም ለእርስዎ ትኩረት አቀርባለሁ። "የአገልግሎት መረብ ውሂብ አውሮፕላን vs መቆጣጠሪያ አውሮፕላን" ደራሲ ማት ክላይን.

የአገልግሎት መረብ ዳታ አውሮፕላን ከመቆጣጠሪያ አውሮፕላን ጋር

በዚህ ጊዜ የሁለቱም የአገልግሎት መረብ ክፍሎች፣ የውሂብ አውሮፕላን እና የቁጥጥር አውሮፕላን መግለጫን “ፈለኩ እና ተርጉሜያለሁ”። ይህ መግለጫ ለእኔ በጣም ለመረዳት የሚያስቸግር እና አስደሳች መስሎ ታየኝ፣ እና ከሁሉም በላይ ደግሞ ወደ "በፍፁም አስፈላጊ ነው?"

የ "አገልግሎት መረብ" ሀሳብ ባለፉት ሁለት ዓመታት (ኦሪጅናል ጽሑፍ ኦክቶበር 10, 2017) በጣም ተወዳጅ እየሆነ በመምጣቱ እና የቦታው ተሳታፊዎች ቁጥር እየጨመረ በመምጣቱ በጠቅላላው መካከል ተመጣጣኝ የሆነ ግራ መጋባት ሲጨምር አይቻለሁ. የተለያዩ መፍትሄዎችን እንዴት ማወዳደር እና ማነፃፀር እንደሚቻል የቴክኖሎጂ ማህበረሰብ።

ሁኔታው በጁላይ በጻፍኳቸው በሚከተለው ተከታታይ ትዊቶች በተሻለ ሁኔታ ተጠቃሏል፡-

የአገልግሎት ጥልፍልፍ ግራ መጋባት #1፡ Linkerd ~ = Nginx ~ = Haproxy ~ = መልእክተኛ። አንዳቸውም ቢሆኑ ከኢስቲዮ ጋር እኩል አይደሉም። ኢስቲዮ ፍጹም የተለየ ነገር ነው። 1/

የመጀመሪያዎቹ በቀላሉ የመረጃ አውሮፕላኖች ናቸው. በራሳቸው ምንም አያደርጉም። ለተጨማሪ ነገር ስሜት ውስጥ መሆን አለባቸው። 2/

ኢስቲዮ ክፍሎቹን አንድ ላይ የሚያገናኝ የመቆጣጠሪያ አውሮፕላን ምሳሌ ነው። ይህ ሌላ ንብርብር ነው. / መጨረሻ

የቀደሙት ትዊቶች ብዙ የተለያዩ ፕሮጀክቶችን ይጠቅሳሉ (Linkerd፣ NGINX፣ HAProxy፣ Envoy እና Istio)፣ ነገር ግን በይበልጥ ስለ ዳታ አውሮፕላን፣ የአገልግሎት መረብ እና የመቆጣጠሪያ አውሮፕላን አጠቃላይ ጽንሰ-ሀሳቦችን ያስተዋውቁታል። በዚህ ልኡክ ጽሁፍ አንድ እርምጃ ወደ ኋላ እመለስና "ዳታ አውሮፕላን" እና "መቆጣጠሪያ አውሮፕላን" በሚሉት ቃላት ምን ማለቴ እንደሆነ እናገራለሁ እና በጣም ከፍ ባለ ደረጃ እና ከዛም በትዊቶች ውስጥ በተጠቀሱት ፕሮጀክቶች ላይ ውሎች እንዴት እንደሚተገበሩ እናገራለሁ.

በእርግጥ የአገልግሎት መረብ ምንድን ነው?

የአገልግሎት መረብ ዳታ አውሮፕላን ከመቆጣጠሪያ አውሮፕላን ጋር
ምስል 1፡ የአገልግሎት መረብ አጠቃላይ እይታ

የ 1 ስዕል የአገልግሎት መረብ ጽንሰ-ሀሳብን በጣም በመሠረታዊ ደረጃ ያሳያል። አራት የአገልግሎት ስብስቦች (AD) አሉ። እያንዳንዱ የአገልግሎት ምሳሌ ከአካባቢያዊ ተኪ አገልጋይ ጋር የተቆራኘ ነው። ሁሉም የአውታረ መረብ ትራፊክ (ኤችቲቲፒ፣ REST፣ gRPC፣ Redis፣ ወዘተ) ከአንድ መተግበሪያ ምሳሌ በአካባቢያዊ ፕሮክሲ ወደ ተገቢው የውጭ አገልግሎት ስብስቦች ይተላለፋል። በዚህ መንገድ የመተግበሪያው ምሳሌ ስለ አውታረ መረቡ በአጠቃላይ አያውቅም እና የአካባቢያዊ ተኪውን ብቻ ያውቃል። በተግባር, የተከፋፈለው የስርዓት አውታር ከአገልግሎቱ ተወግዷል.

የውሂብ አውሮፕላን

በአገልግሎት መረብ ውስጥ፣ ለመተግበሪያው በአካባቢው የሚገኝ ተኪ አገልጋይ የሚከተሉትን ተግባራት ያከናውናል፡-

  • የአገልግሎት ግኝት. ለመተግበሪያዎ ምን አይነት አገልግሎቶች/መተግበሪያዎች ይገኛሉ?
  • የጤና ምርመራ. በአገልግሎት ግኝት የተመለሱት የአገልግሎት አጋጣሚዎች ጤናማ እና የአውታረ መረብ ትራፊክ ለመቀበል ዝግጁ ናቸው? ይህ ሁለቱንም ንቁ (ለምሳሌ ምላሽ/የጤና ምርመራ) እና ተገብሮ (ለምሳሌ 3 ተከታታይ 5xx ስህተቶችን ጤናማ ያልሆነ የአገልግሎት ሁኔታን ለማመልከት) የጤና ምርመራዎችን ሊያካትት ይችላል።
  • ማዘዋወር. ከREST አገልግሎት የ"/foo" ጥያቄ ሲደርስ ጥያቄው ለየትኛው የአገልግሎት ክላስተር መላክ አለበት?
  • ጭነት ማመጣጠን. አንድ ጊዜ በማዘዋወር ወቅት የአገልግሎት ክላስተር ከተመረጠ፣ ጥያቄው ወደ የትኛው የአገልግሎት ምሳሌ መላክ አለበት? ከየትኛው የእረፍት ጊዜ ጋር? በየትኛው የወረዳ መሰባበር መቼቶች? ጥያቄው ካልተሳካ፣ እንደገና መሞከር አለበት?
  • ማረጋገጫ እና ፍቃድ. ለገቢ ጥያቄዎች፣ የጥሪ አገልግሎቱን በኤምቲኤልኤስ ወይም በሌላ ዘዴ በመጠቀም ምስጢራዊ በሆነ መንገድ ሊታወቅ/ሊፈቀድ ይችላል? ከታወቀ/ከተፈቀደለት የተጠየቀውን ኦፕሬሽን (የመጨረሻ ነጥብ) በአገልግሎቱ ላይ መጥራት ይፈቀድለታል ወይንስ ያልተረጋገጠ ምላሽ መመለሾ አለበት?
  • ታዛቢነት. ዝርዝር ስታቲስቲክስ፣ ምዝግብ ማስታወሻዎች እና የተከፋፈሉ የመከታተያ መረጃዎች ለእያንዳንዱ ጥያቄ መፈጠር አለባቸው ስለዚህ ኦፕሬተሮች በተነሱበት ጊዜ የተከፋፈለ የትራፊክ ፍሰት እና የማረም ጉዳዮችን እንዲረዱ።

የመረጃ አውሮፕላኑ በአገልግሎት መረብ ውስጥ ላሉት ቀዳሚ ነጥቦች ተጠያቂ ነው። በእርግጥ፣ ለአገልግሎቱ (sidecar) ፕሮክሲው አካባቢያዊ የመረጃ አውሮፕላን ነው። በሌላ አገላለጽ፣ የመረጃ አውሮፕላኑ በሁኔታዊ ሁኔታ ለማሰራጨት፣ ለማስተላለፍ እና ወደ አገልግሎት የሚላከውን እያንዳንዱን የኔትወርክ ፓኬት የመከታተል ኃላፊነት አለበት።

የመቆጣጠሪያው አውሮፕላን

የአካባቢ ተኪ በመረጃ አውሮፕላኑ ውስጥ የሚያቀርበው የአውታረ መረብ ረቂቅ አስማታዊ (?) ነው። ነገር ግን፣ ፕሮክሲው ስለ "/foo" ወደ አገልግሎት ለ ስለሚወስደው መንገድ በትክክል እንዴት ያውቃል? በተኪ ጥያቄዎች የተሞላው የአገልግሎት ግኝት ውሂብ እንዴት ጥቅም ላይ ሊውል ይችላል? መለኪያዎች እንዴት ለጭነት ማመጣጠን፣ ለጊዜ ማብቂያ፣ ለወረዳ መስበር፣ ወዘተ የተዋቀሩ ናቸው? ሰማያዊ/አረንጓዴውን ዘዴ ወይም ማራኪ የትራፊክ ሽግግር ዘዴን በመጠቀም መተግበሪያን እንዴት ማሰማራት ይቻላል? የስርአት-አቀፍ የማረጋገጫ እና የፈቀዳ ቅንብሮችን ማን ያዋቀረው?

ከላይ ያሉት ሁሉም እቃዎች በአገልግሎት መስጫው መቆጣጠሪያ አውሮፕላን ቁጥጥር ስር ናቸው. የመቆጣጠሪያው አውሮፕላኑ የገለልተኛ ሀገር-አልባ ፕሮክሲዎችን ወስዶ ወደ ተከፋፈለ ስርዓት ይቀይራቸዋል።.

እንደማስበው ብዙ ቴክኖሎጅስቶች የዳታ አውሮፕላን እና የመቆጣጠሪያ አውሮፕላን የተለያዩ ጽንሰ-ሀሳቦች ግራ የሚያጋቡበት ምክንያት ለብዙ ሰዎች የመረጃ አውሮፕላኑ የታወቀ ሲሆን መቆጣጠሪያው አውሮፕላን ደግሞ የውጭ / ያልተረዳ ነው ። ከአካላዊ አውታረ መረብ ራውተሮች እና ማብሪያ / ማጥፊያዎች ጋር ለረጅም ጊዜ እየሰራን ነው። እሽጎች/ጥያቄዎች ከ A ወደ ነጥብ B መሄድ እንዳለባቸው እና ይህንን ለማድረግ ሃርድዌር እና ሶፍትዌር መጠቀም እንደምንችል እንረዳለን። አዲሱ ትውልድ የሶፍትዌር ፕሮክሲዎች ለረጅም ጊዜ ስንጠቀምባቸው የነበሩ መሳሪያዎች በቀላሉ የተዋቡ ስሪቶች ናቸው።

የአገልግሎት መረብ ዳታ አውሮፕላን ከመቆጣጠሪያ አውሮፕላን ጋር
ምስል 2: የሰው መቆጣጠሪያ አውሮፕላን

ሆኖም ግን, የመቆጣጠሪያ አውሮፕላኖችን ለረጅም ጊዜ ስንጠቀም ቆይተናል, ምንም እንኳን አብዛኛዎቹ የኔትወርክ ኦፕሬተሮች ይህንን የስርዓቱን ክፍል ከማንኛውም የቴክኖሎጂ አካል ጋር ማያያዝ አይችሉም. ምክንያቱ ቀላል ነው፡-
ዛሬ ጥቅም ላይ የዋሉት አብዛኛዎቹ መቆጣጠሪያ አውሮፕላኖች እኛ ነን.

በ ምስል 2 “የሰው መቆጣጠሪያ አውሮፕላን” የምለውን ያሳያል። በዚህ ዓይነቱ የማሰማራት አይነት፣ አሁንም በጣም የተለመደ፣ ምናልባት ጨካኝ የሰው ኦፕሬተር የማይለዋወጥ ውቅሮችን ይፈጥራል - በስክሪፕት በኩል - እና በአንዳንድ ልዩ ሂደቶች ለሁሉም ፕሮክሲዎች ያሰማራቸዋል። ከዚያም ፕሮክሲዎቹ ይህንን ውቅር መጠቀም ይጀምራሉ እና የተዘመኑትን መቼቶች በመጠቀም የውሂብ አውሮፕላንን ማካሄድ ይጀምራሉ።

የአገልግሎት መረብ ዳታ አውሮፕላን ከመቆጣጠሪያ አውሮፕላን ጋር
ምስል 3፡ የላቀ የአገልግሎት መረብ መቆጣጠሪያ አውሮፕላን

በ ምስል 3 የአገልግሎቱን መረብ "የተራዘመ" መቆጣጠሪያ አውሮፕላን ያሳያል. እሱም የሚከተሉትን ክፍሎች ያካትታል:

  • የሰው ልጅአጠቃላይ ስርዓቱን በሚመለከት ከፍተኛ ውሳኔዎችን የሚያደርግ አንድ ሰው አሁንም አለ (ተስፋ እናደርጋለን)።
  • የመቆጣጠሪያ አውሮፕላን UIአንድ ሰው ስርዓቱን ለመቆጣጠር ከአንዳንድ የተጠቃሚ በይነገጽ ጋር ይገናኛል። ይህ የድር ፖርታል፣ የትእዛዝ መሾመር መተግበሪያ (CLI) ወይም ሌላ በይነገጽ ሊሆን ይችላል። የተጠቃሚ በይነገጽን በመጠቀም ኦፕሬተሩ እንደ ዓለም አቀፍ የስርዓት ውቅር ግቤቶች መዳረሻ አለው፡-
    • የማሰማራት ቁጥጥር፣ ሰማያዊ/አረንጓዴ እና/ወይም ቀስ በቀስ የትራፊክ ሽግግር
    • የማረጋገጫ እና የፍቃድ አማራጮች
    • የማዞሪያ ሠንጠረዥ ዝርዝር መግለጫዎች፣ ለምሳሌ መተግበሪያ A ሾለ "/ foo" ምን እንደሚከሰት መረጃ ሲጠይቅ
    • እንደ ጊዜ ማብቂያዎች፣ ሙከራዎች፣ የወረዳ መስበር መቼቶች፣ ወዘተ ያሉ ሚዛን ሰጪ ቅንብሮችን ጫን።
  • የሥራ ጫና መርሐግብርአገልግሎቶቹ በመሠረተ ልማት አውታሮች ላይ የሚካሄዱት እንደ ኩበርኔትስ ወይም ዘላኖች ባሉ የመርሐግብር/የኦርኬስትራ ሥርዓት ዓይነቶች ነው። መርሐግብር አውጪው አገልግሎቱን ከአካባቢው ፕሮክሲ ጋር የመጫን ኃላፊነት አለበት።
  • የአገልግሎት ግኝት. የጊዜ ሰሌዳ አስማሚው የአገልግሎት አጋጣሚዎችን ሲጀምር እና ሲያቆም የጤና ሁኔታን ለአገልግሎት ግኝት ስርዓት ያሳውቃል።
  • የጎን መኪና ተኪ ውቅር APIs የአካባቢ ፕሮክሲዎች ያለ ኦፕሬተር ጣልቃ ገብነት ውሎ አድሮ ወጥ የሆነ ሞዴል በመጠቀም ሁኔታን ከተለያዩ የስርዓት ክፍሎች ዳይናሚክ ያወጣሉ። አጠቃላይ ስርዓቱ፣ አሁን እየሰሩ ያሉ የአገልግሎት አጋጣሚዎችን እና የአካባቢ ተኪ አገልጋዮችን ያቀፈ፣ በመጨረሻም ወደ አንድ ስነ-ምህዳር ይሰበሰባል። የመልእክተኛው ሁለንተናዊ ዳታ አውሮፕላን ኤፒአይ ይህ በተግባር እንዴት እንደሚሰራ አንዱ ምሳሌ ነው።

በዋናነት የመቆጣጠሪያው አውሮፕላኑ አላማ በመጨረሻ በመረጃ አውሮፕላኑ የሚቀበለውን ፖሊሲ ማዘጋጀት ነው። የላቁ የቁጥጥር አውሮፕላኖች የአንዳንድ ስርዓቶችን ተጨማሪ ክፍሎች ከኦፕሬተሩ ያስወግዳሉ እና በትክክል የሚሰሩ ከሆነ አነስተኛ የእጅ ሥራ ያስፈልጋቸዋል!...

የውሂብ አውሮፕላን እና ቁጥጥር አውሮፕላን. የውሂብ አውሮፕላን ከመቆጣጠሪያ አውሮፕላን ማጠቃለያ

  • የአገልግሎት መረብ ውሂብ አውሮፕላንበሲስተሙ ውስጥ ያለውን እያንዳንዱን ፓኬት/ጥያቄ ይነካል። ለትግበራ/አገልግሎት ግኝት፣ ለጤና ቁጥጥር፣ ለማዘዋወር፣ ሎድ ማመጣጠን፣ ማረጋገጥ/ፈቀዳ እና ታዛቢነት ኃላፊነት ያለው።
  • የአገልግሎት መረብ መቆጣጠሪያ አውሮፕላንበአገልግሎት አውታር ውስጥ ላሉ ሁሉም የውሂብ አውሮፕላኖች ፖሊሲ እና ውቅረት ያቀርባል። በስርዓቱ ላይ ምንም አይነት ጥቅል/ጥያቄዎችን አይነካም። የመቆጣጠሪያው አውሮፕላኑ ሁሉንም የመረጃ አውሮፕላኖች ወደ የተከፋፈለ ስርዓት ይለውጣል.

የአሁኑ የፕሮጀክት ገጽታ

ከላይ ያለውን ማብራሪያ ከተረዳን አሁን ያለውን የአገልግሎት መረብ ፕሮጀክት ሁኔታ እንመልከት።

  • የውሂብ አውሮፕላኖችሊንከርድ ፣ ኤንጂኤንኤክስ ፣ HAProxy ፣ መልእክተኛ ፣ ትራፊክ
  • የመቆጣጠሪያ አውሮፕላኖች: ኢስቲዮ, ኔልሰን, SmartStack

ከላይ በተዘረዘሩት እያንዳንዱ የመፍትሄ ሃሳቦች ላይ በጥልቀት ከመመርመር ይልቅ በአሁኑ ጊዜ በስርዓተ-ምህዳሩ ውስጥ ብዙ ውዥንብር ይፈጥራሉ ብዬ የማምንባቸውን አንዳንድ ነጥቦችን ባጭሩ አነሳለሁ።

ሊንከርድ እ.ኤ.አ. በ2016 መጀመሪያ ላይ ለአገልግሎት መረብ ከመጀመሪያዎቹ የመረጃ አውሮፕላኖች ፕሮክሲ ሰርቨሮች አንዱ ሲሆን ለአገልግሎት ሜሽ ዲዛይን ሞዴል ግንዛቤን እና ትኩረትን በማሳደግ አስደናቂ ስራ ሰርቷል። ከዚያ በኋላ ከ6 ወራት ገደማ በኋላ፣ ኤንቬይ ሊንከርድን ተቀላቀለ (ምንም እንኳን ከ2015 መጨረሻ ጀምሮ ከሊፍት ጋር የነበረ ቢሆንም)። ሊንከርድ እና ኤንቮይ በአገልግሎት መረብ ላይ በሚወያዩበት ጊዜ በብዛት የሚጠቀሱት ሁለቱ ፕሮጀክቶች ናቸው።

ኢስቲዮ በግንቦት 2017 ታወጀ። የኢስቲዮ ፕሮጀክት ግቦች ከሚታየው የተራዘመ መቆጣጠሪያ አውሮፕላን ጋር በጣም ተመሳሳይ ናቸው። ምስል 3. የኢስቲዮ መልእክተኛ ነባሪ ፕሮክሲ ነው። ስለዚህም ኢስቲዮ የመቆጣጠሪያው አውሮፕላን ሲሆን መልእክተኛ ደግሞ የመረጃ አውሮፕላን ነው። በአጭር ጊዜ ውስጥ ኢስቲዮ ብዙ ደስታን ፈጠረ፣ እና ሌሎች የመረጃ አውሮፕላኖች እንደ መልዕክተኛ ምትክ ሆነው መዋሃድ ጀመሩ (ሁለቱም ሊንከርድ እና ኤንጂኤንኤክስ ከኢስቲዮ ጋር ውህደት አሳይተዋል። የተለያዩ የመረጃ አውሮፕላኖች በአንድ መቆጣጠሪያ አውሮፕላን ውስጥ ጥቅም ላይ መዋል መቻላቸው የመቆጣጠሪያው አውሮፕላኑ እና የመረጃ አውሮፕላኑ በጥብቅ የተገጣጠሙ አይደሉም ማለት ነው. እንደ የEnvoy's General Data Plan API ያለ ኤፒአይ በሁለት የስርዓቱ ክፍሎች መካከል ድልድይ መፍጠር ይችላል።

ኔልሰን እና ስማርትስታክ የመቆጣጠሪያውን አውሮፕላኑን እና የመረጃ አውሮፕላኑን መለያየት የበለጠ ለማሳየት ይረዳሉ። ኔልሰን መልእክተኛን እንደ ፕሮክሲው ይጠቀማል እና በሃሺኮርፕ ቁልል ላይ የተመሰረተ አስተማማኝ የቁጥጥር አውሮፕላን ለአገልግሎት መረብ ይሠራል። ዘላኖች፣ ወዘተ. SmartStack ምናልባት ከአዲሱ የአገልግሎት መረብ ሞገድ የመጀመሪያው ነው። SmartStack የመቆጣጠሪያ አውሮፕላን በ HAProxy ወይም NGINX ዙሪያ ይገነባል, ይህም የመቆጣጠሪያውን አውሮፕላኑን ከአገልግሎት አውሮፕላኑ ውስጥ ከመረጃ አውሮፕላኑ ውስጥ የመፍታታት ችሎታን ያሳያል.

ከአገልግሎት መረብ ጋር የማይክሮ ሰርቪስ አርክቴክቸር የበለጠ እና የበለጠ ትኩረት እያገኙ ነው (በትክክል!) እና ብዙ እና ተጨማሪ ፕሮጄክቶች እና አቅራቢዎች በዚህ አቅጣጫ መስራት ይጀምራሉ። በሚቀጥሉት ጥቂት አመታት በመረጃ አውሮፕላኑ እና በመቆጣጠሪያው አውሮፕላን ውስጥ ብዙ ፈጠራዎችን እና እንዲሁም የተለያዩ አካላትን የበለጠ መቀላቀልን እናያለን። በመጨረሻ፣ የማይክሮ ሰርቪስ አርክቴክቸር ለኦፕሬተሩ የበለጠ ግልፅ እና አስማታዊ (?) መሆን አለበት።
ተስፋ እናደርጋለን ያነሰ እና ያነሰ ቁጡ.

ቁልፍ መቀበያዎች

  • የአገልግሎት መረብ ሁለት የተለያዩ ክፍሎችን ያቀፈ ነው-የመረጃ አውሮፕላን እና የመቆጣጠሪያ አውሮፕላን. ሁለቱም አካላት ያስፈልጋሉ, እና ያለ እነርሱ ስርዓቱ አይሰራም.
  • ሁሉም ሰው የመቆጣጠሪያውን አውሮፕላኑን ጠንቅቆ ያውቃል, እና በዚህ ጊዜ, የመቆጣጠሪያው አውሮፕላኑ እርስዎ ሊሆኑ ይችላሉ!
  • ሁሉም የውሂብ አውሮፕላኖች በባህሪያት፣ በአፈጻጸም፣ በማዋቀር እና በማራኪነት እርስ በርስ ይወዳደራሉ።
  • ሁሉም የቁጥጥር አውሮፕላኖች በባህሪያት፣በማዋቀር፣በማሳያነት እና በአጠቃቀም ቀላልነት እርስ በርስ ይወዳደራሉ።
  • ብዙ የመረጃ አውሮፕላኖች ጥቅም ላይ እንዲውሉ አንድ የመቆጣጠሪያ አውሮፕላን ትክክለኛ ማብራሪያዎችን እና ኤፒአይዎችን ሊይዝ ይችላል።

ምንጭ: hab.com

አስተያየት ያክሉ