Сенарияҳои истифодаи хидмати mesh

Сенарияҳои истифодаи хидмати mesh

Шарҳ. тарҷума.: Муаллифи ин мақола (Люк Перкинс) як ҷонибдори таҳиягар дар ташкилоти CNCF мебошад, ки дар он лоиҳаҳои кушодаасос ба монанди Linkerd, SMI (Service Mesh Interface) ва Кума ҷойгир аст (дар омади гап, оё шумо низ ҳайрон шудаед, ки чаро Истио аст дар ин рӯйхат нест? .). Бори дигар кӯшиш мекунад, ки ба ҷомеаи DevOps фаҳмиши беҳтари шӯъбаи мудаввар бо номи "mesh хидматрасонӣ" расонад, вай 16 қобилиятҳои хосеро номбар мекунад, ки чунин қарорҳо пешниҳод мекунанд.

имрӯз шабакаи хидматрасонӣ ― яке аз доғтарин мавзӯъҳо дар соҳаи муҳандисии нармафзор (ва дуруст аст!). Ман фикр мекунам, ки ин технология бениҳоят умедбахш аст ва мехостам онро ба таври васеъ қабул кунад (албатта, вақте ки ин маъно дорад). Бо вуҷуди ин, он то ҳол бо як аура сирре барои аксари одамон иҳота шудааст. Дар баробари ин хатто онхое, ки машҳур бо он, аксар вақт баён кардани бартариҳои он ва маҳз чӣ будани он (аз ҷумла аз они шумо) душвор аст. Дар ин мақола ман кӯшиш мекунам, ки вазъиятро бо номгӯи гуногун ислоҳ кунам ҳолатҳои истифода «сетхои хизматрасонй*.

* Шарҳ тарҷума: дар ин ҷо ва минбаъд дар мақола маҳз ҳамин тарҷума («хизмат mesh») барои истилоҳи нави хидматрасонӣ истифода мешавад.

Аммо аввал ман мехоҳам чанд шарҳ диҳам:

  • Ман ҳеҷ гоҳ бо торҳои хидматӣ кор накардаам ё онҳоро берун аз лоиҳаҳое, ки барои таҳсили худам оғоз шудаанд, истифода накардаам. Аз тарафи дигар, ман шахсе будам, ки дар соли 2015 як қатор ҳуҷҷатҳоро барои шабакаи хидматрасонии дохилии Твиттер навишт (он вақт онро ҳатто "шабакаи хидматрасонӣ" меноманд) ва дар таҳияи вебсайт ва ҳуҷҷатҳо барои Линкерд, пас ин маънои чизеро дорад.
  • Рӯйхати ман тахминӣ ва нопурра аст. Шояд ҳолатҳои истифода ба ман номаълум бошанд ва бо мурури замон имконоти нав пайдо мешаванд, зеро технология рушд мекунад ва маъруфияти он меафзояд.
  • Дар айни замон, на ҳама татбиқи шабакаи хидматрасонии мавҷуда ҳамаи ҳолатҳои истифодаи номбаршударо дастгирӣ мекунад. Аз ин рӯ, изҳороти ман ба монанди "mesh хидматрасонӣ метавонад ..." бояд ҳамчун "инфиродӣ ва шояд ҳама татбиқи маъмулии хидматрасонӣ метавонад ..." хонда шавад.
  • Тартиби мисолҳо ҳеҷ фарқияте надорад.

Рӯйхати кӯтоҳ:

  • кашфи хидмат;
  • рамзгузорӣ;
  • аутентификатсия ва иҷозат;
  • мувозинати сарборӣ;
  • шикастани схема;
  • миқёси автоматӣ;
  • ҷойгиркунии канар;
  • ҷойгиркунии кабуд-сабз;
  • санҷиши саломатӣ;
  • рехтани сарборӣ;
  • инъикоси ҳаракати нақлиёт;
  • изолятсия;
  • маҳдудияти суръати дархост, кӯшишҳои такрорӣ ва мӯҳлатҳо;
  • телеметрия;
  • аудит;
  • визуализатсия.

1. Кашфи хидмат

TL; DR: Бо истифода аз номҳои оддӣ ба хидматҳои дигари шабака пайваст шавед.

Хидматҳо бояд қодир бошанд, ки бо истифода аз номҳои мувофиқ якдигарро ба таври худкор "пайдо кунанд" - масалан, service.api.production, pets/staging ё cassandra. Муҳитҳои абрӣ чандир мебошанд ва як ном метавонад бисёр мисолҳои хидматро пинҳон кунад. Маълум аст, ки дар чунин вазъият коди сахт кардани ҳама суроғаҳои IP аз ҷиҳати ҷисмонӣ ғайриимкон аст.

Ғайр аз он, вақте ки як хидмат хидмати дигареро пайдо мекунад, он бояд бидуни тарси он, ки онҳо дар вуруди мисоли шикастааш ба анҷом мерасанд, дархостҳоро ба он хидмат фиристад. Ба ибораи дигар, шабакаи хидматрасонӣ бояд саломатии ҳама ҳолатҳои хидматрасониро назорат кунад ва рӯйхати ҳостҳоро то ҳадди имкон нав нигоҳ дорад.

Ҳар як шабакаи хидматрасонӣ механизми кашфи хидматро ба таври гуногун амалӣ мекунад. Дар айни замон, роҳи маъмултарин интиқол додани равандҳои беруна ба монанди Kubernetes DNS мебошад. Дар гузашта дар Twitter мо бо ин мақсад системаи номгузориро истифода мебурдем Финагл. Илова бар ин, технологияи хидматрасонии mesh имкон медиҳад, ки механизмҳои номгузории фармоишӣ пайдо шаванд (гарчанде ки ман то ҳол ягон амалисозии SM-ро бо чунин функсия надидаам).

2. Рамзгузорӣ

TL; DR: Аз трафики рамзнашуда дар байни хидматҳо халос шавед ва ин равандро автоматӣ ва миқёспазир созед.

Донистани он хуш аст, ки ҳамлагарон ба шабакаи дохилии шумо ворид шуда наметавонанд. Брандмауэрҳо дар ин кор кори хуб мекунанд. Аммо агар ҳакер ворид шавад, чӣ мешавад? Оё вай метавонад бо трафики дохилихизматӣ ҳар чизеро, ки мехоҳад иҷро кунад? Умедворем, ки ин пас аз ҳама рӯй намедиҳад. Барои пешгирии ин сенария, шумо бояд шабакаи беэътимодро татбиқ кунед, ки дар он тамоми трафик байни хидматҳо рамзгузорӣ шудааст. Аксари шабакаҳои хидматрасонии муосир ба ин тавассути ҳамдигар ноил мешаванд TLS (TLS мутақобила, mTLS). Дар баъзе мавридҳо, mTLS дар тамоми абрҳо ва кластерҳо кор мекунад (ман фикр мекунам, ки алоқаи байнисайёравӣ рӯзе ба ҳамин тариқ ташкил карда мешавад).

Албатта, барои шабакаи хидматрасонии mTLS ихтиёрӣ. Ҳар як хидмат метавонад дар бораи TLS-и худ ғамхорӣ кунад, аммо ин маънои онро дорад, ки шумо бояд роҳи тавлиди сертификатҳоро пайдо кунед, онҳоро дар байни ҳостҳои хидматрасонӣ паҳн кунед ва кодро ба барномае дохил кунед, ки ин сертификатҳоро аз файлҳо бор мекунад. Бале, фаромӯш накунед, ки ин шаҳодатномаҳоро дар фосилаҳои муқаррарӣ нав кунед. Шабакаҳои хидматрасонӣ mTLS-ро бо чунин системаҳо автоматӣ мекунанд SPIFFE, ки дар навбати худ процесси додани шаходатномахо ва гардиши шаходатномахоро автоматй мекунад.

3. Аутентификатсия ва иҷозат

TL; DR: Муайян кунед, ки дархосткунанда кист ва муайян кунед, ки онҳо пеш аз расидани дархост ба хидмат чӣ кор кардан мумкин аст.

Хизматҳо аксар вақт мехоҳанд бидонанд ки дархостро (атентификатсия) иҷро мекунад ва бо истифода аз ин маълумот қарор қабул мекунад он ба субъекти додашуда иҷозат дода мешавад (иҷозатнома). Дар ин ҳолат, ҷонишини "кӣ" метавонад пинҳон кунад:

  1. Дигар хидматҳо. Инро "аутентификатсия" меноманд ҳамсол" Масалан, хизматрасонӣ web мехоҳад ба хидмат дастрасӣ пайдо кунад db. Шабакаҳои хидматӣ одатан чунин мушкилотро бо истифода аз mTLS ҳал мекунанд: сертификатҳо дар ин ҳолат ҳамчун идентификатори зарурӣ амал мекунанд.
  2. Баъзе истифодабарандагони инсон. Инро "аутентификатсия" меноманд дархост" Масалан, корбар haxor69 чароги нав харидан мехохад. Шабакаҳои хидматрасонӣ механизмҳои гуногунро таъмин мекунанд, масалан. Jens Web Web Tokens.

    Бисёре аз мо инро дар коди барнома анҷом додаем. Дархост ворид мешавад, мо ҷадвалро аз назар мегузаронем users, корбарро пайдо кунед ва паролро муқоиса кунед, пас сутунро тафтиш кунед permissions ва ғайра. Дар мавриди шабакаи хидматрасонӣ, ин пеш аз расидани дархост ба хидмат рух медиҳад.

Вақте ки мо муайян кардем, ки дархост аз кӣ омадааст, мо бояд муайян кунем, ки ин ниҳод ба чӣ кор иҷозат додааст. Баъзе торҳои хидматӣ ба шумо имкон медиҳанд, ки сиёсатҳои асосиро (дар бораи кӣ чӣ кор карда метавонад) ҳамчун файлҳои YAML ё дар сатри фармон муқаррар кунед, дар ҳоле ки дигарон ҳамгироиро бо чаҳорчӯбаҳое ба монанди пешниҳод мекунанд. Агенти сиёсати кушод. Ҳадафи ниҳоӣ ин аст, ки хидматҳои шумо ҳама гуна дархостро қабул кунанд, ба шарте ки он аз манбаи боэътимод гирифта шавад и ин амал иҷозат дода мешавад.

4. Мувозинати сарборӣ

TL; DR: Тақсим кардани сарборӣ дар байни мисолҳои хидмат мувофиқи намунаи мушаххас.

"Хизматрасонӣ" дар як бахши хидмат аксар вақт аз бисёр мисолҳои якхела иборат аст. Масалан, имруз хизматрасонй cache аз 5 нусха иборат буда, фардо шумораи онхо метавонад ба 11. Дархостхо фиристода шаванд cache, бояд мувофики максади муайян таксим карда шавад. Масалан, вақти таъхирро кам кунед ё эҳтимолияти расидан ба як мисоли корӣ ҳадди аксарро афзоиш диҳед. Алгоритм маъмултарин истифодашаванда Round-robin аст, аммо бисёр дигарҳо ҳастанд - масалан, усули вазннок (вазннок) дархостҳо (шумо метавонед ҳадафҳои дилхоҳро интихоб кунед), занг занед (ҳалқа) хэшинг (бо истифода аз хэшкунии пайваста дар ҳостҳои болооб) ё усули камтарин дархост (бартарият ба мисоли камтарин дархостҳо дода мешавад).

Тавозуни классикӣ вазифаҳои дигаре доранд, ба монанди кэшкунии HTTP ва ҳифзи DDoS, аммо онҳо барои трафики шарқ-ғарбӣ (яъне барои трафик дар дохили маркази додаҳо - тақрибан тарҷума) чандон мувофиқ нестанд (миқёси маъмулии шабакаи хидматрасонӣ). Албатта, истифодаи шабакаи хидматрасонӣ барои мувозинати сарборӣ шарт нест, аммо он ба шумо имкон медиҳад, ки сиёсати мувозинатро барои ҳар як хидмат аз як қабати мутамаркази идоракунӣ муқаррар ва назорат кунед ва ба ин васила зарурати кор ва танзими мувозинатҳои алоҳидаи сарборӣ дар стеки шабакаро аз байн мебарад. .

5. Шикастани занҷир

TL; DR: Ҳаракати трафикро ба хидмати мушкилот қатъ кунед ва зарарро дар сенарияҳои бадтарин назорат кунед.

Агар бо ягон сабаб хадамот бо трафик мубориза бурда натавонад, шабакаи хидматрасонӣ якчанд вариантҳоро барои ҳалли ин мушкилот пешниҳод мекунад (дигар дар бахшҳои дахлдор муҳокима карда мешаванд). Қатъи ноқил роҳи сахттарин барои қатъ кардани хидмат аз трафик мебошад. Аммо, худ аз худ ин маънои онро надорад - нақшаи эҳтиётӣ лозим аст. Фишори бозгашт метавонад таъмин карда шавад (фишори бозгашт) ба хидматҳое, ки дархост мекунанд (танҳо танзим кардани шабакаи хидматрасонии худро барои ин фаромӯш накунед!) ё, масалан, ранг кардани саҳифаи вазъ ва масири корбарон ба версияи дигари саҳифа бо "наҳанг афтода" ("Twitter аст" поён").

Шабакаҳои хидматрасонӣ на танҳо ба шумо имкон медиҳанд, ки муайян кунед вақте ки қатъкунӣ пайравӣ мекунад ва он ин пайравй мекунад. Дар ин ҳолат, "кай" метавонад ҳама гуна маҷмӯи параметрҳои муайяншударо дар бар гирад: шумораи умумии дархостҳо барои як давраи муайян, шумораи пайвастҳои мувозӣ, дархостҳои интизорӣ, кӯшишҳои фаъол ва ғайра.

Эҳтимол шумо намехоҳед аз шикастани ноқилҳо сӯиистифода кунед, аммо хуб аст бидонед, ки шумо дар ҳолати фавқулодда нақшаи эҳтиётӣ доред.

6. Миқёси худкор

TL; DR: Шумораи мисолҳои хидматро вобаста ба меъёрҳои муайян зиёд ё кам кунед.

Шабакаҳои хидматрасонӣ банақшагир нестанд, бинобар ин онҳо нестанд иҷро кардан миқёси худ. Бо вуҷуди ин, онҳо метавонанд маълумоте пешниҳод кунанд, ки кадом нақшасозон қарорҳои худро асоснок мекунанд. Азбаски шабакаҳои хидматрасонӣ ба тамоми трафики байни хидматҳо дастрасӣ доранд, онҳо дар бораи он ки чӣ рӯй дода истодааст, маълумоти васеъ доранд: кадом хидматҳо мушкилот доранд, кадом хидматҳо хеле сабук бор карда мешаванд (иқтидори ба онҳо ҷудошуда сарф мешавад) ва ғайра.

Масалан, Kubernetes хидматҳоро дар асоси CPU ва истифодаи хотираи pods миқёс мекунад (ба гузориши мо нигаред"Миқёси автоматӣ ва идоракунии захираҳо дар Кубернетес" - тақрибан. тарҷума.), аммо агар шумо қарор диҳед, ки миқёсро дар асоси ягон ченаки дигар (дар ҳолати мо, трафик вобаста аст), ба шумо метрикаи махсус лозим мешавад. Идоракунӣ монанди ин нишон медиҳад, ки чӣ тавр ин корро бо Энди, Истио и Prometheus, вале худи процесс хеле мураккаб аст. Мо мехоҳем, ки шабакаи хидматрасонӣ инро содда карда, ба мо имкон медиҳад, ки шартҳоро муқаррар кунем, ба монанди "афзоиши шумораи мисолҳои хидматрасонӣ" auth, агар шумораи дархостҳои интизоршуда дар давоми як дақиқа аз ҳадди ниҳоӣ зиёд бошад."

7. Ҷойгиркунии канарӣ

TL; DR: Хусусиятҳои нав ё версияҳои хидматро дар зергурӯҳи корбарон санҷед.

Фарз мекунем, ки шумо маҳсулоти SaaS-ро таҳия карда истодаед ва ният доред, ки версияи нави олиҷаноби онро паҳн кунед. Шумо онро дар саҳна санҷидаед ва он хеле хуб кор кард. Аммо дар бораи рафтори ӯ дар шароити воқеӣ ҳанӯз ҳам нигарониҳои муайян вуҷуд доранд. Ба ибораи дигар, шумо бояд версияи навро оид ба мушкилоти воқеӣ бидуни хатари эътимоди корбар санҷед. Ҷойгиркунии Canary барои ин бузург аст. Онҳо ба шумо имкон медиҳанд, ки хусусияти навро ба як гурӯҳи корбарон нишон диҳед. Ин зергурӯҳ метавонад аз корбарони содиқтарин ё онҳое иборат бошад, ки бо версияи ройгони маҳсулот кор мекунанд ё корбароне, ки хоҳиши "хукони гвинея" буданро изҳор кардаанд.

Шабакаҳои хидматрасонӣ инро тавассути он ба шумо имкон медиҳанд, ки меъёрҳоеро муайян кунед, ки кӣ кадом версияи барномаро бубинад ва мутаносибан масири трафикро муайян кунад. Бо вуҷуди ин, барои худи хидматҳо ҳеҷ чиз тағир намеёбад. Версияи 1.0-и хадамот боварӣ дорад, ки ҳама дархостҳо аз корбароне меоянд, ки бояд онро бубинанд ва версияи 1.1 барои корбарони худ чунин мешуморад. Дар ҳамин ҳол, шумо метавонед фоизи трафикро байни версияҳои кӯҳна ва нав тағир диҳед ва шумораи афзояндаи корбаронро ба версияи нав равона кунед, агар он мӯътадил кор кунад ва "хуконҳои гвинея" -и шумо ба пеш ҳаракат кунанд.

8. Ҷойгиркунии кабуд-сабз

TL; DR: Хусусияти нави ҷолибро ба кор баред, аммо омода бошед, ки ҳама чизро фавран баргардонед.

Маъно ҷойгиркунии кабуд-сабз ин аст, ки хидматрасонии нави "кабуд" -ро ҷорӣ кунад ва онро дар баробари хидмати кӯҳна, "сабз" ба роҳ монад. Агар ҳама чиз бомуваффақият сурат гирад ва хидмати нав хуб кор кунад, пас хидмати кӯҳна метавонад тадриҷан хомӯш карда шавад. (Афсӯс, рӯзе ин хидмати нави "кабуд" тақдири хидмати "сабз"-ро такрор мекунад ва аз байн меравад...) Ҷойгиркунии кабуд-сабз аз хидматҳои канарӣ бо он фарқ мекунад, ки функсияи нав фаро мегирад. ҳама якбора истифодабарандагон (на қисми); Гап дар ин чо он аст, ки дар сурати руй додани ягон кор «бандари бехатар» тайёр кардан аст.

Шабакаҳои хидматрасонӣ роҳи хеле қулайи санҷиши хидмати "кабуд"-ро пешниҳод мекунанд ва дар сурати мушкилот фавран ба хидмати "сабз"-и корӣ гузаред. Ногуфта намонад, ки дар роҳ онҳо дар бораи кори «кабуд» маълумоти зиёде медиҳанд (ниг. ба «Телеметрия» дар поён) ки барои фаҳмидани он, ки оё он ба кор омода аст ё не.

Шарҳ. тарҷума.: Шумо метавонед дар бораи стратегияҳои гуногуни ҷойгиркунӣ дар Кубернетес (аз ҷумла канарияи зикршуда, кабуд/сабз ва дигарон) бештар хонед. ин мақола.

9. Санҷиши саломатӣ

TL; DR: Ҳисоб кунед, ки кадом намунаҳои хидматрасонӣ функсионалӣ мебошанд ва ба онҳое, ки дигар кор намекунанд, посух диҳед.

Санҷиши саломатӣ (тафтишоти саломатӣ) кӯмак мекунад, ки оё намунаҳои хидматрасонӣ барои қабул ва коркарди трафик омодаанд. Масалан, дар мавриди хидматҳои HTTP, санҷиши саломатӣ метавонад ба дархости GET ба нуқтаи ниҳоӣ монанд бошад /health. Ҷавоб 200 OK маънои онро дорад, ки инстансия солим аст, ягон чизи дигар - он барои қабули трафик омода нест. Шабакаҳои хидматрасонӣ ба шумо имкон медиҳанд, ки ҳам тарзи тафтиши функсия ва ҳам басомади анҷом додани ин санҷишро муайян кунед. Баъдан ин маълумот метавонад барои мақсадҳои дигар истифода шавад - масалан, барои мувозинати сарборӣ ва шикастани схема.

Ҳамин тариқ, санҷиши саломатӣ як ҳолати истифодаи мустақил нест, балки одатан барои ноил шудан ба ҳадафҳои дигар истифода мешавад. Инчунин, вобаста ба натиҷаҳои санҷишҳои саломатӣ, амалҳои берун аз дигар ҳадафҳои шабакаи хидматрасонӣ метавонанд талаб карда шаванд: масалан, навсозии саҳифаи вазъ, эҷоди масъала дар GitHub ё пур кардани чиптаи JIRA. Ва mesh хидматрасонӣ механизми қулайро барои автоматикунонии ҳамаи ин пешниҳод мекунад.

10. Партофтани бор

TL; DR: Масири ҳаракати трафик дар посух ба афзоиши муваққатии истифода.

Агар хидмати муайян аз трафик пур шуда бошад, шумо метавонед як қисми ин трафикро муваққатан ба ҷои дигар равона кунед (яъне “партов”, “интиқол” (сарой) ӯ дар он ҷо). Масалан, ба хидмати эҳтиётӣ ё маркази додаҳо ё ба доимӣ Pulsar мавзуъ. Дар натиҷа, хидмат ба ҷои шикастан ва қатъи коркарди ҳама чиз коркарди баъзе дархостҳоро идома медиҳад. Партофтани сарборӣ аз шикастани схема беҳтар аст, аммо ба ҳар ҳол аз он сӯиистифода кардан тавсия дода намешавад. Он ба пешгирии нокомиҳои каскадӣ, ки боиси вайрон шудани хидматҳои поёноб мешаванд, кӯмак мекунад.

11. Параллелизатсия/оинасозии трафик

TL; DR: Як дархостро якбора ба якчанд ҷой фиристед.

Баъзан зарурати фиристодани дархост (ё интихоби муайяни дархостҳо) ба якчанд хадамот якбора ба миён меояд. Намунаи маъмулӣ фиристодани як қисми трафики истеҳсолӣ ба хидмати саҳнавӣ мебошад. Веб-сервери асосии истеҳсолӣ ба хидмати поёноб дархост мефиристад products.production ва танҳо ба ӯ. Ва шабакаи хидматрасонӣ ин дархостро оқилона нусхабардорӣ мекунад ва ба он мефиристад products.staging, ки сервери веб ҳатто аз он огоҳ нест.

Миқдори дигари истифодаи шабакаи хидматрасонӣ, ки метавонад дар болои параллелизатсияи трафик амалӣ карда шавад санҷиши регрессия. Он фиристодани дархостҳои якхела ба версияҳои гуногуни хадамот ва тафтиши якхела будани ҳама версияҳоро дар бар мегирад. Ман то ҳол бо татбиқи шабакаи хидматрасонӣ бо системаи ҳамгирошудаи санҷиши регрессия дучор наомадаам Диффи, вале худи идея умедбахш менамояд.

12. Изолятсия

TL; DR: Шабакаи хидматрасонии худро ба шабакаҳои хурд тақсим кунед.

Инчунин маълум аст сегментатсияҶудокунӣ санъати тақсим кардани шабакаи хидматрасонӣ ба сегментҳои аз ҷиҳати мантиқӣ фарқкунанда мебошад, ки дар бораи ҳамдигар чизе намедонанд. Ҷудокунӣ каме ба эҷоди шабакаҳои хусусии виртуалӣ монанд аст. Тафовути асосӣ дар он аст, ки шумо то ҳол метавонед аз ҳама бартариҳои шабакаи хидматрасонӣ (ба монанди кашфи хидмат) баҳра баред, аммо бо амнияти иловагӣ. Масалан, агар ҳамлакунанда метавонад ба хидмат дар як зершабака ворид шавад, вай наметавонад бубинад, ки кадом хидматҳо дар зершабакаҳои дигар кор мекунанд ё трафики онҳоро боздошта метавонанд.

Илова бар ин, фоидаҳо метавонанд ташкилӣ бошанд. Шумо метавонед хидматҳои худро дар асоси сохтори ширкати худ зершабака созед ва таҳиягаронро аз сарбории маърифатӣ дар хотир нигоҳ доштани тамоми шабакаи хидматрасонӣ озод кунед.

13. Маҳдуд кардани суръати дархост, кӯшишҳои такрорӣ ва мӯҳлатҳо

TL; DR: Ба шумо дигар лозим нест, ки вазифаҳои идоракунии дархостҳои ночизро дар пойгоҳи коди худ дохил кунед.

Ҳамаи ин чизҳоро метавон ҳолатҳои истифодаи алоҳида баррасӣ кард, аммо ман қарор додам, ки онҳоро бо сабаби як хусусияти умумӣ муттаҳид кунам: онҳо вазифаҳои идоракунии давраи дархостро, ки одатан аз ҷониби китобхонаҳои барномаҳо ҳал карда мешаванд, ба ӯҳда мегиранд. Агар шумо веб-сервереро дар Ruby on Rails таҳия карда бошед (бо шабакаи хидматрасонӣ муттаҳид карда нашудааст), ки ба хидматрасониҳои пуштибонӣ тавассути gRPC, барнома бояд қарор кунад, ки агар N дархост ноком шавад, чӣ кор кунад. Шумо инчунин бояд бифаҳмед, ки ин хидматҳо бо истифода аз китобхонаи махсус чӣ қадар трафикро коркард ва рамзгузорӣ карда метавонанд. Илова бар ин, барнома бояд тасмим бигирад, ки кай вақти таслим шуданаш расидааст ва бигзоред, ки дархост қатъ шавад (дар асоси мӯҳлат). Ва барои тағир додани яке аз параметрҳои дар боло зикршуда, сервери веб бояд қатъ карда шавад, аз нав танзим карда шавад ва аз нав оғоз карда шавад.

Бор кардани ин вазифаҳо ба шабакаи хидматрасонӣ на танҳо маънои онро дорад, ки таҳиягарони хидмат набояд дар бораи онҳо фикр кунанд, балки инчунин онҳоро метавон ба таври ҷаҳонӣ дидан мумкин аст. Агар занҷири мураккаби хидматҳо истифода шавад, бигӯед A -> B -> C -> D -> E, тамоми давраи ҳаёти дархост бояд ба назар гирифта шавад. Агар вазифа тамдид кардани мӯҳлатҳои вақт дар хидмати C бошад, мантиқист, ки ин ҳама якбора иҷро карда шавад, на қисмҳо: бо навсозии рамзи хидмат ва интизор шудан то қабули дархости кашидан ва системаи CI хидмати навшударо ҷорӣ мекунад.

14. Телеметрия

TL; DR: Ҳама маълумоти заруриро (ва на он қадар) аз хидматҳо ҷамъ кунед.

Телеметрия истилоҳи умумиест, ки метрика, пайгирии тақсимшуда ва гузоришҳоро дар бар мегирад. Шабакаҳои хидматрасонӣ механизмҳои ҷамъоварӣ ва коркарди ҳар се намуди маълумотро пешниҳод мекунанд. Дар ин ҷо чизҳо каме норавшан мешаванд, зеро шумораи имконоти имконпазир хеле зиёд аст. Барои ҷамъоварии ченакҳо вуҷуд дорад Prometheus ва дигар воситахоеро, ки барои чамъоварии журналхо истифода бурдан мумкин аст равон, Локӣ, Вектор ва дигарон. (масалан, ClickHouse бо мо логистика барои K8s - тақрибан. тарҷума.), барои пайгирии тақсимшуда вуҷуд дорад Ҷайгер ва ғайра. Ҳар як шабакаи хидматрасон метавонад баъзе асбобҳоро дастгирӣ кунад, на дигарон. Бубинед, ки оё лоиҳа метавонад ҷолиб бошад Телеметрияро кушоед конвергенцияро таъмин кунанд.

Дар ин ҳолат, бартарии технологияи хидматрасонии тор дар он аст, ки контейнерҳои паҳлӯӣ метавонанд, усулан, ҳама маълумоти дар боло зикршударо аз хидматҳои худ ҷамъоварӣ кунанд. Ба ибораи дигар, шумо як системаи ягонаи ҷамъоварии телеметрӣ доред ва шабакаи хидматрасонӣ метавонад ҳамаи ин маълумотро бо роҳҳои гуногун коркард кунад. Барои намуна:

  • гузоришҳои думҳо аз хидмати муайян дар CLI;
  • мониторинги ҳаҷми дархостҳо аз панели mesh хизматрасонӣ;
  • пайҳои тақсимшударо ҷамъоварӣ кунед ва онҳоро ба системае ба монанди Jaeger интиқол диҳед.

Диққат, ҳукми субъективӣ: Умуман, телеметрия соҳаест, ки дар он дахолати сахт аз шабакаи хидматрасонӣ номатлуб аст. Ҷамъоварии маълумоти асосӣ ва пайгирӣ дар вақти парвоз баъзе нишондиҳандаҳои тиллоӣ, ба монанди суръати муваффақияти дархост ва таъхири таъхир хуб аст, аммо биёед умедворем, ки мо намебинем, ки стекҳои Франкенштейн пайдо мешаванд, ки кӯшиши иваз кардани системаҳои махсусро доранд, ки баъзеи онҳо аллакай худро исбот кардаанд ва хуб омӯхта шудаанд. .

15. Аудит

TL;DR: Онҳое, ки дарси таърихро фаромӯш мекунанд, маҳкум ба такрори онҳо ҳастанд.

Аудит санъати мушоҳидаи рӯйдодҳои муҳим дар система мебошад. Дар мавриди шабакаи хидматрасонӣ, ин метавонад маънои пайгирӣ кардани кӣ ба нуқтаҳои мушаххаси хидматҳои мушаххас дархост кардааст ё чанд маротиба дар як моҳи охир ҳодисаи марбут ба амният рух дод.

Маълум аст, ки аудит бо телеметрия хеле зич алокаманд аст. Фарқият дар он аст, ки телеметрия одатан бо чизҳое ба монанди маҳсулнокӣ ва якпорчагии техникӣ алоқаманд аст, дар ҳоле ки аудит метавонад ба масъалаҳои ҳуқуқӣ ва дигар масъалаҳое дахл дошта бошад, ки аз доираи қатъии техникӣ берунтаранд (масалан, мувофиқат ба GDPR - Низомномаи умумии Иттиҳоди Аврупо оид ба ҳифзи додаҳо).

16. Визуалӣ

TL; DR: Зинда бод React.js - манбаи адонашавандаи интерфейсҳои зебо.

Шояд истилоҳи беҳтаре бошад, аммо ман онро намедонам. Ман танҳо тасвири графикии шабакаи хидматрасонӣ ё баъзе ҷузъҳои онро дар назар дорам. Ин визуализатсияҳо метавонанд нишондиҳандаҳоро ба монанди таъхирҳои миёна, маълумоти конфигуратсияи паҳлӯ, натиҷаҳои санҷиши саломатӣ ва огоҳиҳо дар бар гиранд.

Кор дар муҳити ба хидмат нигаронидашуда дар муқоиса бо Аълоҳазрат Монолит сарбории бештари маърифатиро дар бар мегирад. Аз ин рӯ, фишори маърифатӣ бояд ба ҳар сурат коҳиш дода шавад. Интерфейси оддии графикӣ барои шабакаи хидматрасонӣ бо қобилияти пахш кардани тугма ва гирифтани натиҷаи дилхоҳ метавонад барои афзоиши маъруфияти ин технология ҳалкунанда бошад.

Ба рӯйхат дохил карда нашуданд

Ман дар аввал ният доштам, ки боз чанд мавридҳои истифодашударо ба рӯйхат дохил кунам, аммо баъд тасмим гирифтам, ки накунам. Инҳоянд, дар якҷоягӣ бо сабабҳои тасмими ман:

  • Маркази бисёрсоҳавӣ. Ба андешаи ман, ин на он қадар мавриди истифода аст, ҳамчун як соҳаи танг ва мушаххаси татбиқи торҳои хидматрасонӣ ё баъзе маҷмӯи функсияҳо ба монанди кашфи хидмат.
  • Вуруд ва баромадан. Ин як минтақаи алоқаманд аст, аммо ман худро (шояд ба таври сунъӣ) бо истифодаи "трафики шарқ-ғарбӣ" маҳдуд кардам. Воридшавӣ ва баромад сазовори мақолаи алоҳида.

хулоса

Ҳамааш ҳамин аст! Боз, ин рӯйхат хеле худсарона ва эҳтимолан нопурра аст. Агар шумо фикр кунед, ки ман чизеро пазмон шудаам ё ягон хатоги кардам, лутфан бо ман дар Twitter тамос гиред (@luckerkins). Лутфан қоидаҳои одобро эҳтиром кунед.

PS аз тарҷумон

Тасвири унвони мақола ба тасвири мақола асос ёфтааст "Хизматрасонии Mesh чист (ва кай бояд истифода шавад)?"(аз ҷониби Грегори МакКиннон). Он нишон медиҳад, ки чӣ гуна баъзе функсияҳо аз замимаҳо (бо ранги сабз) ба шабакаи хидматрасонӣ гузаштанд, ки пайвасти байни онҳоро таъмин мекунад (бо ранги кабуд).

Инчунин дар блоги мо хонед:

Манбаъ: will.com

Хостинги боэътимодро барои сайтҳо бо муҳофизати DDoS, серверҳои VPS VDS харед 🔥 Харидани хостинги боэътимоди вебсайт бо муҳофизати DDoS, серверҳои VPS VDS | ProHoster