He raupapa o nga panui mo Istio Service Mesh

Kei te timata matou i te raupapa o nga pou e whakaatu ana i etahi o nga kaha maha o te Istio Service Mesh ka honoa me Red Hat OpenShift me Kubernetes.

He raupapa o nga panui mo Istio Service Mesh

Te wahanga tuatahi, i tenei ra:

  • Me whakamaaramahia te ariā o nga ipu waka taha Kubernetes me te hanga i te kaupapa o tenei raupapa o nga panui: "Kaore koe e hiahia ki te whakarereke i tetahi mea i roto i to waehere".
  • Me whakaatu mai te mea taketake o Istio - nga ture ararere. Ko etahi atu ahuatanga o Istio kei runga i a raatau, na te mea ko nga ture ka taea e koe te arahi i nga waka ki nga ratonga miihini, ma te whakamahi i nga konae YAML ki waho o te waehere ratonga. Kei te whai whakaaro ano matou ki te kaupapa whakangaonga Canary Deployment. He bonus o te Tau Hou – 10 nga akoranga tauwhitiwhiti i runga i Istio


Ko te wahanga tuarua, ka haere mai, ka korero ki a koe:

  • Me pehea a Istio e whakamahi ana i te Whakawhanawhana Roopu i roto i te whakakotahitanga me te Kaiwhati Arahiko ka whakaatu me pehea e taea ai e Istio te tango i tetahi pona kua mate, he ngoikore ranei te mahi mai i te ara iahiko taurite.
  • Ka titiro ano tatou ki te kaupapa Circuit Breaker mai i te panui tuatahi kia kite me pehea te whakamahi a Istio ki konei. Ma matou e whakaatu ki a koe me pehea te arahi i nga waka me te hapai i nga hapa whatunga ma te whakamahi i nga konae whirihoranga YAML me nga whakahau mutunga kaore he huringa iti o te waehere ratonga.

Wāhanga tuatoru:

  • He korero e pa ana ki te whai me te aro turuki, kua oti te whakauru ki roto, ngawari ranei te taapiri atu ki a Istio. Ma matou e whakaatu ki a koe me pehea te whakamahi taputapu penei i a Prometheus, Jaeger, me Grafana me te taapiri OpenShift scaling ki te whakahaere ngawari i nga hoahoanga microservice.
  • Ka neke mai i te aro turuki me te whakahaere i nga hapa ki te whakauru ki roto i te punaha. I etahi atu kupu, ka ako tatou me pehea te mahi i te werohanga he me te kore e whakarereke i te waehere puna, he mea tino nui mai i te tirohanga whakamatautau - na te mea ka huri koe i te waehere ake mo tenei, ka tupono pea te whakauru i etahi atu hapa.

Ka mutu, i te panui whakamutunga mo Istio Service Mesh:

  • Me haere ki te taha pouri. Ko te mea tika, ka ako tatou ki te whakamahi i te kaupapa Whakarewa pouri, ka tukuna te waehere me te whakamatau tika ki nga raraunga whakaputa, engari kaore e pa ki te mahi o te punaha i tetahi huarahi. Koinei te waahi o te kaha o Istio ki te wehe i nga waka. A ko te kaha ki te whakamatautau i nga raraunga whakaputa ora me te kore e pa ki te whakahaere o te punaha whawhai i tetahi huarahi ko te tikanga tino pono o te manatoko.
  • Ko te hanga i runga i te Whakarewa pouri, ka whakaatu matou ki a koe me pehea te whakamahi i te tauira Canary Deployment ki te whakaiti i te tupono me te ngawari ki te whakauru waehere hou ki roto i nga mahi. Ko Canary Deployment ake he tawhiti mai i te mea hou, engari ka taea e Istio te whakatinana i tenei kaupapa me nga konae YAML ngawari noa.
  • Ka mutu, ka whakaatu matou ki a koe me pehea te whakamahi i a Istio Egress ki te whai waahi ki nga ratonga ki te hunga kei waho o o roopu kia taea ai te whakamahi i nga kaha o Istio i te wa e mahi ana me te Ipurangi.

Na, ka haere tatou...

Nga taputapu aroturuki me te whakahaere - nga mea katoa e hiahia ana koe ki te whakarite i nga ratonga moroiti i roto i te miihini ratonga mata ratonga.

He aha te Istio Service Mesh

Ka whakatinanahia e te mata ratonga nga mahi penei i te aro turuki i nga waka, te mana uru, te kitenga, te haumarutanga, te aro ki te he me etahi atu mea whai hua mo te roopu ratonga. Ka taea e Istio te mahi i enei mea katoa kaore he whakarereketanga iti ki te waehere o nga ratonga. He aha te mea ngaro o te makutu? Ka piri a Istio i tana ake takawaenga ki ia ratonga i roto i te ahua o te ipu taha (sidecar he motopaika sidecar), muri iho ka haere nga waka katoa ki tenei ratonga i roto i te takawaenga, e arahina ana e nga kaupapa here kua tohua, ka whakatau me pehea, ahea me tenei hokohoko. me tae rawa ki te ratonga. Ka taea hoki e Istio te whakatinana i nga tikanga DevOps matatau penei i te tuku canary, te ara iahiko, te werohanga he me te maha atu.

Me pehea te mahi a Istio me nga ipu me nga Kubernetes

Ko te Istio service mesh he whakatinanatanga taha o nga mea katoa e hiahiatia ana hei hanga me te whakahaere i nga ratonga moroiti: te aro turuki, te tirotiro, nga wehenga ara iahiko, te ararere, te whakatau i te uta, te werohia te he, te ngana ano, te taima, te whakaata, te mana uru, te whakaiti reiti me te maha atu. A ahakoa i tenei ra he maha nga whare pukapuka ki te whakatinana tika i enei mahi i roto i te waehere, me Istio ka taea e koe nga mea katoa me te kore e whakarereke i tetahi mea i roto i to waehere.

E ai ki te tauira o te motuka taha, ka oma a Istio i roto i Linux- he ipu kei roto i te kotahi Kubernetes-pod me te ratonga whakahaere me te wero me te tango i nga mahi me nga korero e ai ki te whirihoranga kua hoatu. Ka whakanuia e matou ko to ake whirihoranga tenei, kei waho o to waehere. Na reira, ka nui ake te ngawari me te poto o te waehere.

Ko te mea nui ko te waahanga whakahaere o nga microservices karekau e hono atu ki te waehere ake, ko te tikanga ka taea te whakawhiti i a raatau mahi ki nga tohunga IT. Ae, he aha te kaiwhakawhanake e kawe mo nga wehenga ara iahiko me te werohanga he? Tauhohe, ae, engari tukatuka me te hanga? Mena ka tangohia e koe enei mea katoa mai i te waehere, ka taea e nga kaihōtaka te aro nui ki te mahi tono. A ko te waehere ake ka poto ake, ka ngawari ake.

Mata ratonga

Ko Istio, e whakatinana ana i nga mahi mo te whakahaere microservices i waho o to raatau waehere, ko te ariā o te Mesh Ratonga. I etahi atu kupu, he roopu ruruku o te kotahi, neke atu ranei o nga waahanga-rua e hanga ana i nga mahi whatunga.

Me pehea te mahi a Istio me nga ratonga miihini

Koinei te ahua o te mahi o nga ipu tahataha i te taha Kubernetes и Huringa iti tirohanga a te manu: whakarewahia he tauira o te Minishift, hanga he kaupapa mo Istio (kia kiia ko “istio-system”), tāuta me te whakahaere i nga waahanga katoa e pa ana ki a Istio. Na, i a koe e hanga ana i nga kaupapa me nga poti, ka taapirihia e koe nga korero whirihoranga ki o tukunga, ka tiimata o poti ki te whakamahi i a Istio. He penei te ahua o te hoahoa whakangawari:

He raupapa o nga panui mo Istio Service Mesh

Inaianei ka taea e koe te whakarereke i nga tautuhinga Istio i roto i te raupapa, hei tauira, ki te whakarite i te werohanga he, tautoko Te Tukunga Canary me etahi atu waahanga Istio - me enei mea katoa me te kore e pa ki te waehere o nga tono. Me kii e hiahia ana koe ki te anga i nga hokohoko tukutuku katoa mai i nga kaiwhakamahi o to kaihoko nui rawa atu (Foo Corporation) ki tetahi putanga hou o te pae. Ki te mahi i tenei, hanga noa he ture ararere Istio ka rapu mo @foocorporation.com i roto i te ID kaiwhakamahi ka anga ano. Mo nga kaiwhakamahi katoa, kaore he mea e rereke. I tenei wa, ka ata whakamatau koe i te putanga hou o te waahi. A kia mahara kaore koe e hiahia ki te whakauru i nga kaiwhakawhanake mo tenei.

A ka utu nui koe mo tena?

Kaore rawa. He tere rawa a Istio ka tuhia ki roto Go me te hanga i te iti rawa o runga. I tua atu, ko te ngaronga pea i roto i te hua ipurangi ka whakahekehia e te pikinga o te hua o te kaiwhakawhanake. I te iti rawa i roto i te ariā: kaua e wareware he mea nui te wa o nga kaihanga. Mo nga utu rorohiko, ko Istio he punaha puna tuwhera, na reira ka taea e koe te tiki me te whakamahi mo te kore utu.

Whakaakohia e koe

Kua whakawhanakehia e te Rōpū Wheako Whakawhanake Hat Whero he ringaringa hohonu rangatira nā Istio (i te reo Pākehā). Ka rere tonu Linux, MacOS me Windows, ā, kei te whakaatuhia te waehere i roto i ngā putanga Java me Node.js.

10 nga akoranga tauwhitiwhiti mo Istio

Poraka 1 - Mo Nga Kaimatau

Introduction to Istio
Ngā meneti 30
Kia mohio tatou ki te Service Mesh, ako me pehea te whakauru i a Istio ki roto i te roopu OpenShift Kubernetes.
E tito

Te tuku ratonga moroiti ki Istio
Ngā meneti 30
Ka whakamahia e matou a Istio ki te tuku i nga ratonga miihini e toru me te Spring Boot me te Vert.x.
E tito

Poraka 2 – taumata takawaenga

Te aroturuki me te whai i Istio
Ngā meneti 60
Ka tuhurahia e matou nga taputapu tirotiro a Istio, inenga ritenga, me te OpenTracing ma te Prometheus me Grafana.
E tito

Te ararere ngawari ki Istio
Ngā meneti 60
Akohia me pehea te whakahaere ararere i Istio ma te whakamahi i nga ture ngawari.
E tito

Nga ture ararere matatau
Ngā meneti 60
Kia titiro tatou ki te ararere atamai a Istio, te mana uru, te whakataurite kawenga me te whakaiti reiti.
E tito

Poraka 3 – kaiwhakamahi matatau

Werohanga Hapa i Istio
Ngā meneti 60
Ka ako matou i nga ahuatanga koretake o te whakahaere i roto i nga tono toha, te hanga hapa HTTP me te whakaroa whatunga, me te ako ki te whakamahi i nga miihini hepohepo hei whakaora i te taiao.
E tito

Kaiwhati iahiko i Istio
Ngā meneti 30
Ka whakauruhia e matou a Siege mo nga waahi whakamatautau ahotea me te ako me pehea te whakapumau i te hee o te tuara ma te whakamahi i nga whakaari, te ara iahiko me te tuku poka wai.
E tito

Egress me Istio
Ngā meneti 10
Ka whakamahia e matou nga huarahi Egress ki te hanga ture mo te taunekeneke o nga ratonga o roto me nga API me nga ratonga o waho.
E tito

Istio and Kiali
Ngā meneti 15
Ako ki te whakamahi i a Kiali ki te tiki tirohanga whanui mo te mahanga ratonga me te tirotiro i nga tono me nga rerenga raraunga.
E tito

TLS Mutual i Istio
Ngā meneti 15
Ka hangaia e matou a Istio Gateway me VirtualService, katahi ka akohia e matou nga TLS (mTLS) me ona tautuhinga.
E tito

Poraka 3.1 - Ruku Hohonu: Istio Service Mesh mo Microservices

He raupapa o nga panui mo Istio Service Mesh
He aha te pukapuka mo:

  • He aha te mata ratonga?
  • Ko te punaha Istio me tana mahi i roto i te hoahoanga microservice.
  • Ma te whakamahi i te Istio hei whakaoti rapanga e whai ake nei:
    • Whakaaetanga he;
    • Ararere;
    • Te whakamatautau hepohepo;
    • Te Haumaru;
    • Te kohinga waea ma te whakamahi i nga tohu, ine me te Grafana.

Tikiake pukapuka

He raupapa o nga tuhinga mo nga maa ratonga me Istio

Whakamātauria koe

Kāore tēnei raupapa pou i te whai kia ruku hohonu ki te ao o Istio. Ko tā mātou noa he whakaatu i te ariā ki a koe, me te whakatenatena pea i a koe kia whakamātau i a Istio. He kore utu, ā, kei Red Hat ngā taputapu katoa e tika ana hei tīmata ki a OpenShift, Kubernetes, Linux- ngā ipu me ngā Istio, arā: Kaiwhakawhanake Potae Whero OpenShift Container Platform, to matou kaiarahi ki Istio me etahi atu rauemi kei runga i a maatau moroiti i runga i te Service Mesh. Kaua e whakaroa, timata i tenei ra!

Nga ture ararere Istio: te arahi i nga tono ratonga ki te waahi me haere

hūnuku и Kubernetes mahi i te mahi pai ki te whakatutuki ratonga moroiti ka tukuna atu ki nga paera e hiahiatia ana. Koinei tetahi o nga take i noho mai ai a Kubernetes - te ararere me te whakataurite kawenga. Engari me pehea e hiahia ana koe ki nga huarahi maamaa me te maamaa? Hei tauira, ki te whakamahi i nga putanga e rua o te microservice. Me pehea te awhina a Istio Route Rules i konei?

Ko nga ture ararere ko nga ture e tino whakatau ana i te huarahi whiriwhiri. Ahakoa te taumata o te uaua o te punaha, he maamaa tonu te tikanga whakahaere o enei ture: ka tukuna nga tono i runga i etahi tawhā me nga uara pane pane HTTP.
Kia titiro tatou ki nga tauira:

Kubernetes taunoa: iti "50/50"

I roto i ta maatau tauira, ka whakaatu maatau me pehea te whakamahi i nga waahanga e rua o te microservice i OpenShift, me kii tatou ko v1 me v2. Ko ia putanga ka rere ki roto i tana ake Kubernetes pod, a, na te taunoa, he riterite te rere o te ararere a tawhio noa. Ka whiwhi ia pod i tana wahanga o nga tono i runga i te maha o ana tauira moroiti, ara, he tauira. Ka taea e Istio te huri i tenei toenga ma te ringa.

Me kii i tukuna e matou nga waahanga e rua o ta matou ratonga taunakitanga i runga i OpenShift, tūtohutanga-v1 me te taunakitanga-v2.
Kei te Fig. Ko te Whakaaturanga 1 e whakaatu ana i te wa e whakaatuhia ana ia ratonga i roto i te waa kotahi, ka rereke nga tono i waenga i a raatau: 1-2-1-2-... Koinei te mahi a te ararere Kubernetes ma te taunoa:

He raupapa o nga panui mo Istio Service Mesh

Te tohatoha i waenga i nga putanga

Kei te Fig. E whakaatu ana te Whakaahua 2 he aha te mea ka whakanuia e koe te maha o nga tauira ratonga v2 mai i te kotahi ki te rua (ka mahia tenei ma te tauine oc —replicas=2 deployment/recommendation-v2 command). Kei te kite koe, ko nga tono i waenga i te v1 me te v2 kua wehea inaianei ki te tauwehenga kotahi ki te toru: 1-2-2-1-2-2-…:

He raupapa o nga panui mo Istio Service Mesh

Waiho te putanga ma te whakamahi Istio

Ka ngawari te whakarereke a Istio i te tohatoha o nga tono kia rite ki ta maatau e hiahia ana. Hei tauira, tukuna nga waka katoa ki te taunakitanga-v1 ma te whakamahi i te konae Istio yaml e whai ake nei:

He raupapa o nga panui mo Istio Service Mesh

I konei me whai whakaaro koe ki tenei: ka tohua nga peera kia rite ki nga tapanga. Ka whakamahia e ta maatau tauira te tapanga v1. Ko te tawhā "taimaha: 100" ko te tikanga ko te 100% o nga waka ka tukuna ki nga putunga ratonga katoa kei a raatau te tapanga v1.

Te tohatoha tohutohu i waenga i nga putanga (Te Whakataunga Canary)

I muri mai, ma te whakamahi i te tawhā taumaha, ka taea e koe te arahi i nga waka ki nga peera e rua, me te kore e aro ki te maha o nga waahanga microservice e rere ana i ia waahanga. Hei tauira, i konei ka tukuna e matou te 90% o nga waka ki v1 me te 10% ki v2:

He raupapa o nga panui mo Istio Service Mesh

Ararere wehe mo nga kaiwhakamahi pūkoro

Hei whakamutunga, ka whakaatu matou me pehea te akiaki i nga waka kaiwhakamahi pūkoro kia tukuna ki te ratonga v2, me era atu ki te v1. Hei mahi i tenei, ka whakamahia e matou nga korero rite tonu hei tātari i te uara kaihoko-kaiwhakamahi i te pane tono:

He raupapa o nga panui mo Istio Service Mesh

Inaianei ko to wa

Ko te tauira me nga kii auau mo te panui pane ka akiaki koe ki te rapu i au ake whakamahinga o nga ture ararere Istio. I tua atu, he tino whanui nga mea ka taea, na te mea ka taea te hanga i nga uara pane ki te waehere puna tono.

Kia mahara ko Ops, kaua ko Dev

Ko nga mea katoa i whakaatuhia e matou i roto i nga tauira i runga ake nei ka mahia kaore he whakarereketanga iti o te waehere puna, pai, engari mo nga keehi e tika ana ki te whakaputa pane tono motuhake. Ka whai hua a Istio ki nga kaiwhakawhanake, hei tauira, ka kaha ki te whakamahi i te waa whakamatautau, me nga tohunga ki te whakahaere i nga punaha IT, ma ratou e awhina nui ki te whakaputa.

Na, me whakahoki ano te kaupapa o tenei raupapa o nga panui: e kore koe e hiahia ki te huri i tetahi mea i roto i to koutou waehere. Kaore he take ki te hanga whakaahua hou, ki te whakarewa ranei i nga ipu hou. Ka whakatinanahia tenei katoa i waho o te waehere.

Whakamahia to whakaaro

A feruri noa i te taea o te tātari pane mā te whakamahi kīanga auau. Kei te hiahia koe ki te huri i to kaihoko nui ki tetahi putanga motuhake o to ratonga moroiti? Ngawari! Kei te hiahia tetahi putanga motuhake mo te tirotiro Chrome? Kaore he raruraru! Ka taea e koe te ara waka i runga i nga ahuatanga katoa.

Whakamātauria koe

Ko te panui mo Istio, Kubernetes me OpenShift tetahi mea, engari he aha koe kaore koe e pa ki nga mea katoa? Kapa Kaupapa Whakawhanake Hat Whero Kua whakaritea e au tētahi aratohu taipitopito (i te reo Ingarihi) hei āwhina i a koe ki te mōhio wawe ki ēnei hangarau. He pūtake tuwhera 100% hoki te aratohu, nō reira e wātea ana mō te marea. Ka oma te kōnae i runga i macOS, Linux и Windows, ā, kei te wātea te waehere pūtake i roto i te Java me te Node.js (kei te haere mai ngā putanga i roto i ētahi atu reo). Whakatuwheratia noa te putunga Git e rite ana i roto i tō pūtirotiro. Whakaaturanga Kaiwhakawhanake Hat Whero.

I roto i te panui e whai ake nei: ka whakatauhia e maatau nga raru

I tenei ra i kite koe i nga mahi ka taea e nga ture ararere Istio. Inaianei whakaarohia te mea ano, engari mo te mahi hapa anake. Koinei tonu te korero ka korerohia i roto i te panui e whai ake nei.

Source: will.com

Hokona te manaaki pono mo nga waahi me te tiaki DDoS, nga kaiwhakarato VPS VDS 🔥 Hokona he manaaki paetukutuku pono me te tiakitanga DDoS, ngā tūmau VPS VDS | ProHoster