MÄs esam priecÄ«gi iepazÄ«stinÄt ar priekÅ”skatÄ«juma versiju
NSM ir bezmaksas
Mikropakalpojumu metodoloÄ£ijas ievieÅ”ana ir saistÄ«ta ar grÅ«tÄ«bÄm, pieaugot piegÄdes apjomam un sarežģītÄ«bai. SaziÅa starp pakalpojumiem kļūst sarežģītÄka, atkļūdoÅ”anas problÄmas kļūst grÅ«tÄkas, un arvien vairÄk pakalpojumu pÄrvaldÄ«bai ir nepiecieÅ”ams vairÄk resursu.
NSM atrisina Ŕīs problÄmas, nodroÅ”inot jums:
- DroŔība, kas tagad ir svarÄ«gÄks nekÄ jebkad agrÄk. Datu pÄrkÄpums uzÅÄmumam var izmaksÄt miljoniem dolÄru gadÄ, zaudÄjot ieÅÄmumus un reputÄciju. NSM nodroÅ”ina, ka visi savienojumi tiek Å”ifrÄti, izmantojot mTLS, tÄpÄc nav sensitÄ«vu datu, ko tÄ«klÄ var nozagt hakeri. Piekļuves kontrole ļauj iestatÄ«t politikas pakalpojumu saziÅai ar citiem pakalpojumiem.
- Satiksmes vadÄ«ba. PiegÄdÄjot jaunu lietojumprogrammas versiju, iespÄjams, vÄlÄsities sÄkt ar tÄs ienÄkoÅ”Äs trafika ierobežoÅ”anu kļūdas gadÄ«jumÄ. Izmantojot NSM viedo konteineru trafika pÄrvaldÄ«bu, varat iestatÄ«t trafika ierobežoÅ”anas politiku jauniem pakalpojumiem, kas laika gaitÄ palielinÄs trafiku. Citas funkcijas, piemÄram, Ätruma ierobežojums un automÄtiskie slÄdži, sniedz jums pilnÄ«gu kontroli pÄr visu jÅ«su pakalpojumu satiksmes plÅ«smu.
- VizualizÄcija. TÅ«kstoÅ”iem pakalpojumu pÄrvaldÄ«ba var bÅ«t atkļūdoÅ”anas un vizualizÄcijas murgs. NSM palÄ«dz tikt galÄ ar Å”o situÄciju, izmantojot iebÅ«vÄto Grafana informÄcijas paneli, kas parÄda visas NGINX Plus pieejamÄs funkcijas. Un arÄ« ieviestÄ Open Tracing ļauj detalizÄti uzraudzÄ«t darÄ«jumus.
- HibrÄ«da piegÄdes, ja jÅ«su uzÅÄmums, tÄpat kÄ vairums citu, neizmanto infrastruktÅ«ru, kas pilnÄ«bÄ darbojas Kubernetes. NSM nodroÅ”ina, ka mantotÄs lietojumprogrammas netiek atstÄtas bez uzraudzÄ«bas. Ar ieviestÄ NGINX Kubernetes Ingress Controller palÄ«dzÄ«bu mantotie pakalpojumi varÄs sazinÄties ar tÄ«kla pakalpojumiem un otrÄdi.
NSM nodroÅ”ina arÄ« lietojumprogrammu droŔību nulles uzticamÄ«bas vidÄs, pÄrredzami piemÄrojot Å”ifrÄÅ”anu un autentifikÄciju konteineru trafikai. Tas arÄ« nodroÅ”ina darÄ«jumu redzamÄ«bu un analÄ«zi, palÄ«dzot Ätri un precÄ«zi uzsÄkt izvietoÅ”anu un novÄrst problÄmas. Tas nodroÅ”ina arÄ« detalizÄtu satiksmes kontroli, ļaujot DevOps komandÄm izvietot un optimizÄt lietojumprogrammu daļas, vienlaikus ļaujot izstrÄdÄtÄjiem izveidot un viegli savienot savas izplatÄ«tÄs lietojumprogrammas.
KÄ darbojas NGINX Service Mesh?
NSM sastÄv no vienotas datu plaknes horizontÄlai satiksmei (no pakalpojuma uz pakalpojumu) un iegulta NGINX Plus ieejas kontrollera vertikÄlai satiksmei, ko pÄrvalda viena vadÄ«bas plakne.
VadÄ«bas plakne ir Ä«paÅ”i izstrÄdÄta un optimizÄta NGINX Plus datu plaknei, un tÄ nosaka satiksmes kontroles noteikumus, kas ir sadalÄ«ti pa NGINX Plus blakusvÄÄ£iem.
NSM katram tÄ«kla pakalpojumam ir uzstÄdÄ«ti blakusvÄÄ£u starpniekserveri. Tie saskaras ar Å”Ädiem atvÄrtÄ pirmkoda risinÄjumiem:
- Grafana, Prometheus parametru vizualizÄcija, iebÅ«vÄtais NSM panelis palÄ«dz jums darbÄ;
- Kubernetes Ingress Controllers, lai pÄrvaldÄ«tu ienÄkoÅ”o un izejoÅ”o trafiku tÄ«klÄ;
- SPIRE, CA sertifikÄtu pÄrvaldÄ«bai, izplatÄ«Å”anai un atjauninÄÅ”anai tÄ«klÄ;
- NATS, mÄrogojama sistÄma ziÅojumu, piemÄram, marÅ”ruta atjauninÄjumu, nosÅ«tÄ«Å”anai no vadÄ«bas plaknes uz blakusvÄÄ£iem;
- Open Tracing, izplatīta atkļūdoŔana (atbalstīts Zipkin un Jaeger);
- Prometheus apkopo un saglabÄ NGINX Plus blakusvÄÄ£u raksturlielumus, piemÄram, pieprasÄ«jumu skaitu, savienojumus un SSL rokasspiedienus.
Funkcijas un komponenti
NGINX Plus kÄ datu plakne aptver blakusvÄÄ£a starpniekserveri (horizontÄlÄ satiksme) un ieejas kontrolleri (vertikÄlÄ), pÄrtverot un pÄrvaldot konteineru satiksmi starp pakalpojumiem.
Funkcijas ietver:
- savstarpÄja TLS (mTLS) autentifikÄcija;
- Slodzes balansÄÅ”ana;
- BojÄjumu tolerance;
- Ätruma ierobežojums;
- ĶÄdes pÄrrÄvums;
- zili zaÄ¼Ä un kanÄriju izvietoÅ”ana;
- Piekļuves kontrole.
Tiek palaists NGINX Service Mesh
Lai palaistu NSM, jums ir nepiecieŔams:
- piekļuve Kubernetes videi. NGINX Service Mesh tiek atbalstÄ«ts daudzÄs Kubernetes platformÄs, tostarp Amazon Elastic Container Service for Kubernetes (EKS), Azure Kubernetes Service (AKS), Google Kubernetes Engine (GKE), VMware vSphere un parastajos Kubernetes klasteros, kas izvietoti aparatÅ«ras serveros;
- Instruments
kubectl
, kas instalÄta maŔīnÄ, no kuras tiks instalÄts NSM; - Piekļuve NGINX Service Mesh izlaiÅ”anas pakotnÄm. PakotnÄ ir NSM attÄli, kas nepiecieÅ”ami Kubernetes klasterÄ« pieejamo konteineru augÅ”upielÄdei privÄtajÄ reÄ£istrÄ. IepakojumÄ ir arÄ«
nginx-meshctl
, kas nepiecieŔams NSM izvietoŔanai.
Lai izvietotu NSM ar noklusÄjuma iestatÄ«jumiem, palaidiet Å”o komandu. IzvietoÅ”anas laikÄ tiek parÄdÄ«ti ziÅojumi, kas norÄda uz veiksmÄ«gu komponentu instalÄÅ”anu, un, visbeidzot, ziÅojums, kas norÄda, ka NSM darbojas atseviÅ”Ä·Ä nosaukumvietÄ (jums vispirms ir
$ DOCKER_REGISTRY=your-Docker-registry ; MESH_VER=0.6.0 ;
./nginx-meshctl deploy
--nginx-mesh-api-image "${DOCKER_REGISTRY}/nginx-mesh-api:${MESH_VER}"
--nginx-mesh-sidecar-image "${DOCKER_REGISTRY}/nginx-mesh-sidecar:${MESH_VER}"
--nginx-mesh-init-image "${DOCKER_REGISTRY}/nginx-mesh-init:${MESH_VER}"
--nginx-mesh-metrics-image "${DOCKER_REGISTRY}/nginx-mesh-metrics:${MESH_VER}"
Created namespace "nginx-mesh".
Created SpiffeID CRD.
Waiting for Spire pods to be running...done.
Deployed Spire.
Deployed NATS server.
Created traffic policy CRDs.
Deployed Mesh API.
Deployed Metrics API Server.
Deployed Prometheus Server nginx-mesh/prometheus-server.
Deployed Grafana nginx-mesh/grafana.
Deployed tracing server nginx-mesh/zipkin.
All resources created. Testing the connection to the Service Mesh API Server...
Connected to the NGINX Service Mesh API successfully.
NGINX Service Mesh is running.
Lai iegÅ«tu vairÄk opciju, tostarp papildu iestatÄ«jumus, palaidiet Å”o komandu:
$ nginx-meshctl deploy āh
PÄrbaudiet, vai vadÄ«bas plakne nosaukumvietÄ darbojas pareizi nginx-siets, jÅ«s varat darÄ«t Å”Ädi:
$ kubectl get pods ān nginx-mesh
NAME READY STATUS RESTARTS AGE
grafana-6cc6958cd9-dccj6 1/1 Running 0 2d19h
mesh-api-6b95576c46-8npkb 1/1 Running 0 2d19h
nats-server-6d5c57f894-225qn 1/1 Running 0 2d19h
prometheus-server-65c95b788b-zkt95 1/1 Running 0 2d19h
smi-metrics-5986dfb8d5-q6gfj 1/1 Running 0 2d19h
spire-agent-5cf87 1/1 Running 0 2d19h
spire-agent-rr2tt 1/1 Running 0 2d19h
spire-agent-vwjbv 1/1 Running 0 2d19h
spire-server-0 2/2 Running 0 2d19h
zipkin-6f7cbf5467-ns6wc 1/1 Running 0 2d19h
AtkarÄ«bÄ no izvietoÅ”anas iestatÄ«jumiem, kas nosaka manuÄlÄs vai automÄtiskÄs iesmidzinÄÅ”anas politikas, NGINX blakusvÄÄ£u starpniekserveri lietojumprogrammÄm tiks pievienoti pÄc noklusÄjuma. Lai atspÄjotu automÄtisko pievienoÅ”anu, izlasiet
PiemÄram, ja mÄs izvietojam lietojumprogrammu miegs vÄrdu telpÄ noklusÄjuma, un pÄc tam pÄrbaudiet Pod ā mÄs redzÄsim divus darbojoÅ”os konteinerus, lietojumprogrammu miegs un ar to saistÄ«tais blakusvÄÄ£is:
$ kubectl apply āf sleep.yaml
$ kubectl get pods ān default
NAME READY STATUS RESTARTS AGE
sleep-674f75ff4d-gxjf2 2/2 Running 0 5h23m
MÄs varam arÄ« uzraudzÄ«t lietojumprogrammu miegs NGINX Plus panelÄ«, izpildot Å”o komandu, lai piekļūtu blakusvÄÄ£im no vietÄjÄs maŔīnas:
$ kubectl port-forward sleep-674f75ff4d-gxjf2 8080:8886
Tad mÄs vienkÄrÅ”i ieejam
Varat izmantot atseviŔķus Kubernetes resursus, lai konfigurÄtu satiksmes politikas, piemÄram, piekļuves kontroli, Ätruma ierobežoÅ”anu un Ä·Ädes pÄrtraukumus.
SecinÄjums
NGINX Service Mesh ir pieejams bezmaksas lejupielÄdei vietnÄ
Lai izmÄÄ£inÄtu NGINX Plus ieejas kontrolieri, aktivizÄjiet
Tulkojis PÄvels DemkoviÄs, uzÅÄmuma inženieris
Avots: www.habr.com