I le mulimuli Na matou vaʻavaʻai i vaega autu o le Service Mesh Istio, masani i le faiga ma tali fesili autu e masani ona tulaʻi mai pe a amata galue ma Istio. I lenei vaega o le a tatou vaʻavaʻai i le faʻatulagaina o le aoina o faʻamatalaga suʻesuʻe i luga o se fesoʻotaʻiga.

O le mea muamua e oʻo mai i le mafaufau mo le tele o tagata atiaʻe ma faʻalapotopotoga faʻapitoa pe a latou faʻalogo i upu o loʻo suʻeina le Mesh Mesh. Ioe, matou te fa'aopoopoina se server sui fa'apitoa i node feso'ota'iga ta'itasi e uia uma ai fefa'ataua'iga TCP. E foliga mai ua mafai nei ona faigofie ona auina atu faʻamatalaga e uiga i fesoʻotaʻiga fesoʻotaʻiga uma i luga ole fesoʻotaʻiga. Ae paga lea, o le mea moni e tele nuances e tatau ona amanaia. Sei o tatou vaai ia i latou.
Le manatu sese numera tasi: e mafai ona tatou maua fa'amaumauga sopo i luga ole laiga e aunoa ma se totogi.
O le mea moni, mo le leai o se totogi, e mafai ona tatou maua na o nodes o la tatou polokalama e fesoʻotaʻi i aū ma le fuainumera o faʻamaumauga e pasi i le va o auaunaga (o le mea moni, naʻo le numera o bytes i le iunite o le taimi). Ae ui i lea, i le tele o tulaga, e fesoʻotaʻi a matou 'auʻaunaga i luga o se ituaiga o faʻasalalauga faʻapipiʻi, e pei o le HTTP, gRPC, Redis, ma isi. Ma, ioe, matou te fia vaʻai i le suʻeina o faʻamatalaga faʻapitoa mo nei tulafono; matou te fia vaʻai i le fua faatatau o talosaga, ae le o le fua faatatau o faʻamaumauga. Matou te fia malamalama i le taofiofia o talosaga e faʻaaoga ai la matou protocol. Ma le mea mulimuli, matou te fia vaʻai i le auala atoa o loʻo faia e se talosaga mai le faʻapipiʻiina i totonu o la matou polokalama e maua ai se tali mai le tagata faʻaoga. O lenei faafitauli ua le toe faigofie ona foia.
Muamua, seʻi o tatou vaʻavaʻai pe faʻapefea le tuʻuina atu o vaʻavaʻavaʻa foliga mai se vaaiga faʻapitoa i Istio. E pei ona tatou manatua mai le vaega muamua, o loʻo i ai i Istio se isi vaega e taʻua o Mixer mo le aoina o telemetry. Ae ui i lea, i le lomiga o loʻo iai nei 1.0.*, o le auina atu e faia saʻo mai sui sui, o lona uiga, mai le sui sui. E lagolagoina e sui sui o le avefe'au le tu'uina atu o va'aiga e fa'aaoga ai le zipkin protocol mai le pusa. E mafai ona faʻafesoʻotaʻi isi protocols, ae naʻo se plugin. Faatasi ai ma Istio matou te vave maua se sui sui faʻatonu ma faʻatulagaina, lea e naʻo le lagolagoina o le zipkin protocol. Afai tatou te mananaʻo e faʻaoga, mo se faʻataʻitaʻiga, le Jaeger protocol ma auina atu le suʻeina o vaʻa e ala i le UDP, ona manaʻomia lea ona fausia a tatou lava ata istio-proxy. O loʻo i ai le lagolago mo faʻapipiʻi masani mo istio-proxy, ae o loʻo i ai pea i le alpha version. O le mea lea, afai tatou te mananaʻo e fai e aunoa ma se numera tele o tuʻufaʻatasiga masani, o le tele o tekinolosi faʻaaogaina mo le teuina ma le mauaina o le suʻeina o vaʻa ua faʻaititia. O faiga autu, o le mea moni, o lea e mafai ona e faʻaogaina Zipkin lava ia, poʻo Jaeger, ae lafo mea uma iina e faʻaaoga ai le zipkin compatible protocol (lea e sili atu le lelei). O le zipkin protocol lava ia e aofia ai le auina atu o faʻamatalaga suʻesuʻe uma i tagata aoina e ala i le HTTP protocol, lea e taugata tele.
E pei ona uma ona ou fai atu, matou te mananaʻo e suʻe faiga faʻaoga-tulaga. O lona uiga e tatau ona malamalama le 'au'aunaga sui o lo'o tu i tafatafa o auaunaga ta'itasi po'o le a le ituaiga fegalegaleaiga o lo'o tupu nei. Ona o le faaletonu, Istio configures ports uma ina ia manino TCP, o lona uiga e leai ni faailoga o le a lafoina. Ina ia mafai ona tuʻuina atu faʻailoga, e tatau, muamua, faʻatagaina lenei filifiliga i le autu autu o le mesh config ma, o le mea sili ona taua, taʻu uma ports o le kubernetes auʻaunaga e tusa ai ma le protocol o loʻo faʻaaogaina i le auaunaga. O lona uiga, mo se faʻataʻitaʻiga, pei o lenei:
apiVersion: v1
kind: Service
metadata:
name: nginx
spec:
ports:
- port: 80
targetPort: 80
name: http
selector:
app: nginxE mafai foʻi ona e faʻaogaina igoa faʻapipiʻi e pei o le http-magic (Istio o le a vaʻaia le http ma iloa lena taulaga o se http endpoint). Ole faatulagaga ole: proto-extra.
Ina ia aua neʻi faʻapipiʻi se numera tele o faʻasalalauga e fuafua ai le faʻasalalauga, e mafai ona e faʻaogaina se faʻaoga eleelea: faʻapipiʻi le vaega Pilot i le taimi e naʻo. . I le faaiuga, o le mea moni, o le a manaʻomia le suia o lenei manatu i tulaga masani ma fesuiaʻi i se faʻailoga igoa mo ports uma.
Ina ia e malamalama pe faʻamaonia saʻo le protocol, e tatau ona e alu i totonu o soʻo se pusa taʻavale faʻatasi ma sui sui ma fai se talosaga i le admin port of the envoy interface with location /config_dump. I le taunuuga o le faʻatulagaina, e tatau ona e vaʻavaʻai i le faʻaogaina o le fanua o le auaunaga manaʻomia. E fa'aaogaina i Istio e fa'ailoa ai le mea e fai ai le talosaga. Ina ia mafai ona faʻavasegaina le tau o lenei parakalafa i Istio (o le a tatou vaʻai i ai i la tatou suʻesuʻega), e tatau ona faʻamaonia le fuʻa serviceCluster i le tulaga o le faʻalauiloaina o le pusa taʻavale. Mo se faʻataʻitaʻiga, e mafai ona faʻatatauina e pei o lenei mai fesuiaiga e maua mai i lalo kubernetes API:
--serviceCluster ${POD_NAMESPACE}.$(echo ${POD_NAME} | sed -e 's/-[a-z0-9]*-[a-z0-9]*$//g')
O se fa'ata'ita'iga lelei e malamalama ai pe fa'apefea ona galue le su'ega i le avefe'au .
O le fa'ai'uga lava ia mo le tu'uina atu o va'aiga e tatau ona fa'amaoti mai i fu'a fa'alauiloa sui sui, mo se fa'ata'ita'iga: --zipkinAddress tracing-collector.tracing:9411
Le manatu sese numera lua: e mafai ona matou maua faʻatauvaʻa faʻailoga atoatoa o talosaga e ala i le faiga mai le pusa.
Ae paga lea, e leai. O le lavelave o le faʻatinoga e faʻalagolago i le auala na e faʻatinoina ai le fegalegaleaiga o auaunaga. Aisea ua faapena ai?
O le mea moni e faapea ina ia mafai e istio-proxy ona malamalama i le fesoʻotaʻiga o talosaga o loʻo oʻo mai i se tautua ma i latou o loʻo tuʻua le auaunaga lava e tasi, e le lava le naʻo le faʻalavelaveina o feoaiga uma. E tatau ona i ai se ituaiga o fa'amatalaga feso'ota'iga. HTTP avefe'au sui fa'aaoga ulutala fa'apitoa, lea e malamalama ai le avefe'au po'o fea talosaga fa'apitoa i le 'au'aunaga e fa'atupuina ai talosaga fa'apitoa i isi auaunaga. Lisi o ia ulutala:
- x-request-id
- x-b3-fa'ailoga,
- x-b3-Sepania,
- x-b3-matua,
- x-b3-fa'ata'ita'i,
- x-b3-fu'a,
- x-ot-span-context.
Afai ei ai sau manatu se tasi, mo se faʻataʻitaʻiga, o se tagata faʻatau, lea e mafai ona e faʻaopoopoina ai sea manatu, ona lelei lea o mea uma, e tatau ona e faʻatali mo lenei faletusi e faʻafouina mo tagata uma. Ae afai e iai sau faiga faʻapitoa tele ma e leai se faʻatasi i le siitia mai lea auaunaga i le tautua i luga ole fesoʻotaʻiga, e foliga mai o se faʻafitauli tele lea. A aunoa ma le faʻaopoopoina o ia manatu, o faʻamatalaga suʻesuʻega uma o le a naʻo le "tulaga tasi". O lona uiga, o le a matou mauaina uma fesoʻotaʻiga vaʻavaʻai, ae o le a le faʻapipiʻiina i latou i ni filifili se tasi o ala i luga o le upega tafailagi.
iʻuga
O loʻo tuʻuina atu e Istio se meafaigaluega talafeagai mo le aoina mai o faʻamatalaga i luga o se fesoʻotaʻiga, ae e tatau ona e malamalama o le faʻatinoina o le a manaʻomia ona e faʻafetaui lau faiga ma amanaʻia foliga o le faʻatinoga Istio. O le iʻuga, e lua manatu autu e manaʻomia ona foia: faʻamalamalamaina le tulaga o le talosaga (lea e tatau ona lagolagoina e le sui sui) ma le faʻatulagaina o le tuʻuina atu o faʻamatalaga e uiga i le fesoʻotaʻiga o talosaga i le tautua mai talosaga mai le tautua (faʻaaogaina ulutala. , i le tulaga o le HTTP protocol). Pe a foia nei mataupu, o loʻo i ai a matou meafaigaluega mamana e mafai ai ona matou aoina faʻamatalaga mai le fesoʻotaʻiga, e oʻo lava i faiga eseese e tusia i le tele o gagana eseese ma faʻavae.
I le isi tala e uiga i Auaunaga Mesh, o le a tatou vaʻavaʻai i se tasi o faʻafitauli sili ona tele ma Istio - o le tele o le faʻaaogaina o le RAM e taʻitasi taʻavale sui sui ma talanoaina pe faʻafefea ona e taulimaina.
puna: www.habr.com
