5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps

"Cloud native" po'o na'o le "cloud" tusi talosaga e faia fa'apitoa e galue i totonu o le ao. E masani ona fausia e pei o se seti o microservices faʻapipiʻi faʻapipiʻiina i totonu o koneteina, lea e faʻatautaia e se faʻavae ao. O ia talosaga e saunia mo faaletonu e ala i le faaletonu, o lona uiga latou te galulue faʻalagolago ma fua e tusa lava pe oʻo i tulaga faʻaletonu tulaga tetele. O le isi itu o le tupe siliva o seti o tapulaʻa (konekarate) o loʻo tuʻuina atu e le ao faʻapipiʻi i luga o pusa talosaga ina ia mafai ai ona faʻatautaia aunoa.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps

A'o malamalama atoatoa i le mana'oga ma le taua o le si'itia i luga ole ao, tele fa'alapotopotoga e le o iloa po'o fea e amata ai. I lenei pou, o le a tatou vaʻavaʻai i le tele o mataupu faavae, pe a mulimulitaʻia pe a atiaʻe talosaga faʻapipiʻi, o le a faʻatagaina oe e iloa le gafatia o faʻasalalauga faʻapipiʻi ma ausia le faʻatuatuaina o le faʻaogaina ma le faʻaogaina o talosaga e oʻo lava i le tulaga o ni faaletonu matuia i le IT infrastructure. tulaga. O le sini autu o mataupu faavae o loʻo faʻamatalaina iinei o le aʻoaʻoina lea pe faʻapefea ona fausia ni tusi talosaga e mafai ona otometi ona faʻatautaia e faʻasalalauga ao pei o Kubernetes.

Polokalama Design Principles

I le lalolagi polokalame, o mataupu faavae e faasino i tulafono lautele e tatau ona mulimulitaʻia pe a atiaʻe polokalama. E mafai ona fa'aoga pe a galulue i so'o se gagana fa'apolokalame. O mataupu faavae taitasi ei ai ana lava sini, o meafaigaluega mo le ausia lea e masani lava o mamanu ma faiga masani. O lo'o iai fo'i le tele o fa'avae fa'avae mo le fa'atupuina o polokalame maualuga, lea e tafe uma ai isi. O nisi nei o faataitaiga o mataupu faavae autu:

  • sogi (Keep it simple, stupid) – ‘aua ne’i lavelave;
  • mago (Aua le toe faia oe lava) - aua le toe faia oe;
  • YAGNI (E te le mana'omia) - aua le faia se mea e le'o mana'omia vave;
  • SoC Tu'ueseeseina o atugaluga – fa'asoa tiute.

E pei ona mafai ona e vaʻaia, o nei mataupu faavae e le faʻatulagaina ni tulafono faʻapitoa, ae o loʻo i totonu o le vaega o mea e taʻua o mafaufauga masani e faʻavae i luga o le poto masani, lea e fefaʻasoaaʻi e le tele o atinaʻe ma e masani ona latou faasino i ai.
E le gata i lea, e iai SOLID - O se seti o mataupu faavae muamua e lima o polokalame faʻatulagaina ma mamanu, faʻatulagaina e Robert Martin. SOLID e aofia ai le lautele, tatala, faʻavae faʻavae mataupu faavae e-pe a faʻaogaina faʻatasi-fesoasoani e fausia ni faiga faakomepiuta sili atu ma sili atu ona tausia i latou i se taimi umi.

O mataupu faavae SOLID e patino i le fanua o le OOP ma o loʻo faʻatulagaina i le gagana o ia manatu ma manatu e pei o vasega, fesoʻotaʻiga ma tofi. I se faʻataʻitaʻiga, e mafai foʻi ona faʻatulagaina mataupu faʻavae mo faʻaoga ao, naʻo le elemene autu iinei e le o se vasega, ae o se atigipusa. E ala i le mulimulita'ia o nei ta'iala, e mafai ai ona e faia ni mea fa'apipi'i e sili atu ona fetaui ma sini ma fa'amoemoega o fa'avae ao pei o Kubernetes.

Koneteina o le ao: o le Red Hat approach

I aso nei, toetoe lava o soʻo se talosaga e mafai ona faʻapipiʻiina faigofie i totonu o pusa. Ae mo tusi talosaga ina ia faʻaogaina lelei ma faʻapipiʻiina i totonu o le ao e pei o Kubernetes, e manaʻomia se taumafaiga faaopoopo.
O le faavae mo manatu o loʻo otooto atu i lalo o le metotia Le Twelve-Factor App ma le tele o isi galuega i vaega eseese o le fausiaina o talosaga i luga o le upega tafaʻilagi, mai le faʻatonutonuina o tulafono faʻavae i le faʻataʻitaʻiina o faʻataʻitaʻiga. O mataupu faavae o loʻo faʻamatalaina e faʻaoga naʻo le atinaʻeina o talosaga faʻapipiʻiina o loʻo fausia i luga o microservices ma faʻatulagaina mo faʻasalalauga e pei o Kubernetes. O le elemene autu i la tatou talanoaga o le ata o koneteina, ma o le taimi e fa'agasolo ai koneteina o le fa'aputuga o fa'aputuga. O le fa'amoemoega o mataupu fa'avae o le faia lea o pusa e mafai ai ona fa'autometi le fa'atulagaina, fa'avasegaina, ma le mata'ituina o galuega i luga o le tele o fa'asalalauga. O mataupu faavae e le tuuina atu i se faasologa faapitoa.

Mataupu Faavae o le Atunu'u Tasi (SCP)

O lenei mataupu faavae i le tele o auala e tutusa ma le Mataupu Faavae o le Tiutetauave Tasi. SRP), o se vaega o le SOLID seti ma taʻu mai o mea uma e tatau ona tasi le matafaioi, ma o lena matafaioi e tatau ona faʻapipiʻi atoatoa i totonu o se vasega. O le uiga o le SRP, o matafaioi uma lava o se mafuaaga o suiga, ma e tatau i le vasega ona tasi le mafuaaga e sui ai.

I le SCP, matou te faʻaogaina le upu "popole" nai lo le upu "tiute" e faʻaalia ai le maualuga maualuga o le faʻaaogaina ma le lautele lautele o se atigipusa pe a faʻatusatusa i se vasega OOP. Ma afai o le sini a le SRP e na o le tasi le mafuaaga mo suiga, o tua atu o le SCP o loʻo i ai le manaʻoga e faʻalautele le mafai e toe faʻaaoga ma sui pusa. E ala i le mulimuli i le SRP ma le fatuina o se atigipusa e foia ai se faʻafitauli e tasi ma faia i se auala atoatoa, e te faʻateleina ai le avanoa e toe faʻaaogaina ai lena ata atigipusa i tulaga faʻaoga eseese.

O le mataupu faavae a le SCP o loʻo taʻu mai ai e tatau i pusa taʻitasi ona foia se tasi faʻafitauli ma fai lelei. E le gata i lea, o le SCP i totonu o le koneteina lalolagi e sili atu ona faigofie ona ausia nai lo le SRP i le lalolagi OOP, talu ai o pusa e masani ona faʻatautaia se tasi faiga, ma o le tele o taimi e foia ai e lenei faagasologa se tasi galuega.

Afai o se container microservice e tatau ona foia ni faʻafitauli i le taimi e tasi, ona mafai lea ona vaevae i totonu o pusa e tasi-galuega ma tuʻufaʻatasia i totonu o le tasi pod (o se iunite o faʻapipiʻi tulaga faʻapipiʻi) e faʻaaoga ai le sidecar ma init container templates. E le gata i lea, ua faafaigofie e le SCP ona sui se atigipusa tuai (e pei o se upegatafa'ilagi po'o se faife'au fe'au) ma se mea fou e foia ai le faafitauli lava e tasi ae ua faʻalauteleina galuega poʻo fua sili atu.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps

Fa'avae Mata'ituina Maualuga (HOP)

Pe a faʻaaogaina pusa e avea o se auala tuʻufaʻatasi e afifi ma faʻatautaia ai talosaga, o talosaga lava latou e faʻaogaina e pei o se pusa uliuli. Ae peitaʻi, afai o mea nei o koneteina ao, ona tatau lea ona latou tuʻuina atu API faʻapitoa i le taimi e mataʻituina ai le soifua maloloina o pusa ma, pe a manaʻomia, fai se gaioiga talafeagai. A aunoa ma lenei mea, o le a le mafai ona tuʻufaʻatasia le faʻaogaina o le faʻafouina o pusa ma le puleaina o latou taamilosaga o le olaga, lea, i le isi itu, o le a faʻaleagaina ai le mautu ma le faʻaogaina o le polokalama polokalama.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps
I le fa'atinoga, e tatau ona iai se API mo ituaiga su'ega fa'alesoifua maloloina: su'ega ola ma su'ega sauni. Afai e fai mai se talosaga e faia nisi mea, e tatau ona tuʻuina atu isi auala e mataʻituina ai lona tulaga. Mo se faʻataʻitaʻiga, faʻapipiʻi mea taua e ala i le STDERR ma le STDOUT mo le faʻapipiʻi ogalaau e faʻaaoga ai le Fluentd, Logstash ma isi mea faigaluega tutusa. Faʻapea foʻi ma le tuʻufaʻatasia ma suʻesuʻega ma metrics collection library, pei o OpenTracing, Prometheus, ma isi.

I se tulaga lautele, o le talosaga e mafai lava ona togafitia e pei o se pusa uliuli, ae e tatau ona tuʻuina atu i API uma e manaʻomia e le faʻavae ina ia mafai ai ona mataʻituina ma pulea i le auala sili.

Ta'iala Fa'atatau i le Ta'amilosaga o le Ola (LCP)

LCP o le fa'afeagai o HOP. A'o ta'ua e HOP e tatau i le atigipusa ona fa'aalia le faitau API i le tulaga, e mana'omia e le LCP le talosaga ina ia mafai ona talia fa'amatalaga mai le tulaga. E le gata i lea, o le atigipusa e le gata e tatau ona maua mea na tutupu, ae ia fetuunai foi, i se isi faaupuga, tali atu ia i latou. O le mea lea o le igoa o le mataupu faavae, lea e mafai ona manatu o se manaʻoga e tuʻuina atu le faʻavae ma le tusitusi APIs.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps
E eseese ituaiga o mea e tutupu i luga ole laiga e fesoasoani i le puleaina o le olaga o se atigipusa. Ae o le talosaga lava ia e filifili po o ai o latou e iloa ma pe faapefea ona tali atu.

E manino lava o nisi mea e tutupu e sili atu ona taua nai lo isi. Mo se faʻataʻitaʻiga, afai e le talia lelei e se talosaga le faʻalavelave, e tatau ona talia faailo: faʻamutaina (SIGTERM) feʻau ma amata lana faʻamutaina masani i se taimi vave e mafai ai ona puʻeina le faailo: fasioti (SIGKILL) e sau pe a uma le SIGTERM.

E le gata i lea, o mea e tutupu e pei o le PostStart ma le PreStop e mafai ona taua i le olaga o se talosaga. Mo se faʻataʻitaʻiga, a maeʻa ona faʻalauiloa se talosaga, atonu e manaʻomia se taimi mafanafana aʻo leʻi mafai ona tali atu i talosaga. Po'o le talosaga e tatau ona tu'uina atu punaoa i se auala fa'apitoa pe a tapuni.

O le Fa'atonuina o Ata (IIP)

E masani ona talia e faapea e tatau ona tumau le le suia o tusi talosaga pe a uma ona fausia, tusa lava pe faʻatautaia i siosiomaga eseese. O lenei mea e manaʻomia ai le manaʻoga e faʻapipiʻi i fafo le teuina o faʻamaumauga i le taimi o le taʻavale (i se isi faaupuga, e faʻaoga meafaigaluega i fafo mo lenei mea) ma faʻalagolago i fafo, faʻasologa faʻapitoa taimi, nai lo le suia poʻo le fatuina o pusa faʻapitoa mo siosiomaga taʻitasi. A maeʻa soʻo se suiga i le talosaga, e tatau ona toe fausia le ata pusa ma faʻapipiʻi i siosiomaga uma e faʻaaogaina. I le auala, pe a faʻatautaia faiga IT, o loʻo faʻaaogaina se mataupu faavae tutusa, e taʻua o le mataupu faavae o le le mafai ona suia o 'auʻaunaga ma atinaʻe.

O le sini a le IIP o le puipuia lea o le fatuina o ata eseese o pusa mo siosiomaga taʻavale eseese ma faʻaoga le ata tutusa i soʻo se mea faʻatasi ai ma le faʻatulagaga talafeagai o le siosiomaga. O le mulimuli i lenei mataupu faavae e mafai ai e oe ona faʻatinoina ia faiga taua mai le vaʻaiga o le faʻaogaina o faiga o ao e pei o le taʻavale i tua ma le taʻavale i luma o faʻafouga o talosaga.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps

Fa'atonuga ole Fa'atonuina ole Fa'agasologa (PDP)

O se tasi o uiga sili ona taua o se atigipusa o lona ephemerality: o se faʻataʻitaʻiga o se atigipusa e faigofie ona fai ma faigofie ona faʻaumatia, o lea e faigofie ai ona suia i se isi faʻataʻitaʻiga i soo se taimi. E mafai ona tele mafuaʻaga mo sea suitulaga: toilalo o se suʻega faʻapitoa, faʻalauteleina o le talosaga, faʻafeiloaʻi i se isi talimalo, vaivai o punaoa faʻavae, poʻo isi tulaga.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps
O le i'uga, e tatau ona fa'atumauina e talosaga fa'apipi'i lo latou tulaga i le fa'aaogaina o ni auala i fafo, po'o le fa'aogaina o polokalame fa'asoa fa'alotoifale ma le toe fa'aaogaina. E le gata i lea, o le talosaga e tatau ona vave amata ma tapuni vave, ma saunia mo faʻalavelave faʻafuaseʻi o mea faigaluega.

O se tasi faiga e fesoasoani i le faatinoina o lenei mataupu faavae o le tausia o pusa laiti. E mafai ona otometi ona filifilia e le cloud environment se talimalo e fa'alauiloa ai se fa'ata'ita'iga i luga, o le la'ititi la o le atigipusa, o le vave fo'i lea e amata ai - o le a na'o le kopi i le 'au fa'amoemoe i luga o le feso'otaiga vave.

Fa'avae Fa'atosina (S-CP)

E tusa ai ma lenei mataupu faavae, i le tulaga o le faʻapotopotoga, o vaega uma e manaʻomia e aofia ai i totonu o le pusa. O le atigipusa e tatau ona fausia i luga o le manatu o le polokalama e naʻo le fatu Linux mama, o lea e tatau ai ona tuʻu uma faletusi faaopoopo manaʻomia i totonu o le pusa lava ia. E tatau fo'i ona iai mea e pei o le taimi fa'atino mo le gagana fa'akomepiuta e fetaui, le fa'avae talosaga (pe a mana'omia), ma isi fa'alagolago e mana'omia a'o fa'agasolo le talosaga.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps

O tuusaunoaga e faia mo fetuutuunaiga e eseese mai le si'osi'omaga i le si'osi'omaga ma e tatau ona tu'uina atu i le taimi e fa'atino ai, mo se fa'ata'ita'iga e ala ile Kubernetes ConfigMap.

O se talosaga e mafai ona aofia ai le tele o vaega o lo'o teuina, mo se fa'ata'ita'iga, o se isi atigipusa DBMS i totonu o se upega tafa'ilagi. E tusa ai ma le S-CP mataupu faavae, o nei koneteina e le tatau ona tuʻufaʻatasia i le tasi, ae tatau ona faia ina ia i ai i totonu o le pusa DBMS mea uma e manaʻomia mo le faʻaogaina o le database, ma o loʻo i ai i totonu o le upega tafaʻilagi mea uma e manaʻomia mo le faʻaogaina o le upega tafaʻilagi. talosaga, le web server tutusa . O le i'uga, i le taimi e fa'agasolo ai, o le a fa'alagolago le atigipusa talosaga i luga o le koneteina DBMS ma maua pe a mana'omia.

Taimi Fa'atonu Fa'atonu (RCP)

O le S-CP mataupu faavae o loʻo faʻamatalaina pe faʻafefea ona fausia le atigipusa ma mea e tatau ona iai i le binary ata. Ae o se atigipusa e le naʻo se "pusa uliuli" e naʻo le tasi le uiga - faila faila. I le taimi o le faʻatinoga, o le atigipusa e faʻaaogaina isi itu: o le aofaʻi o le manatua na faʻaaogaina, taimi CPU, ma isi punaoa faʻaoga.

5 Fa'avae Fa'atonu mo le Fausiaina o le Cloud-Native Apps
Ma o iinei e sau ai le mataupu faavae RCP, e tusa ai ma le pusa e tatau ona faʻaumatia ona manaʻoga mo punaoa faʻaoga ma tuʻuina atu i luga o le tulaga. Faatasi ai ma faʻamatalaga punaʻoa taʻitasi (pe fia le PPU, manatua, fesoʻotaʻiga, ma punaoa tisiki e manaʻomia), e mafai e le faʻavae ona faʻatinoina lelei le faʻatulagaina ma le autoscaling, pulea le gafatia IT, ma tausia tulaga SLA mo koneteina.

I le faʻaopoopoga i le faʻamalieina o mea e manaʻomia o le pusa, e taua foi mo le talosaga e le alu i tua atu o ona lava tuaoi. A leai, pe a oʻo mai se faʻaletonu o punaoa, o le faʻavae e sili atu ona aofia ai i le lisi o talosaga e manaʻomia ona faʻamutaina pe faimalaga.

A tatou talanoa e uiga i le ao-muamua, tatou te talanoa e uiga i le auala tatou te galulue ai.
I luga, na matou faʻatulagaina le tele o mataupu faʻavae lautele e faʻatulagaina ai le faʻavae faʻavae mo le fausiaina o mea e sili ona lelei i pusa mo siosiomaga ao.

Manatua e faaopoopo atu i nei mataupu faavae lautele, o le a e manaʻomia foʻi auala faʻapitoa ma metotia mo le galue i pusa. E le gata i lea, o loʻo i ai ni nai fautuaga pupuu e sili atu ona faʻapitoa ma e tatau ona faʻaoga (pe le faʻaaogaina) faʻatatau i le tulaga:

Webinar i luga o le lomiga fou o OpenShift Container Platform - 4
Iuni 11 ile 11.00

O mea o le a e aʻoaʻoina:

  • Le Masuia Red Hat Enterprise Linux CoreOS
  • OpenShift tautua mata
  • Auivi galue
  • Knative framework

puna: www.habr.com

Faaopoopo i ai se faamatalaga