Mogal seirbheis NGINX ri fhaighinn

Mogal seirbheis NGINX ri fhaighinn

Tha sinn toilichte dreach ro-shealladh a thaisbeanadh Mogal seirbheis NGINX (NSM), mogal seirbheis aotrom cuachta a bhios a’ cleachdadh plèana dàta stèidhichte air NGINX Plus gus trafaic shoithichean a riaghladh ann an àrainneachdan Kubernetes.

Tha an leabhar NSM saor an asgaidh luchdaich sìos an-seo. Tha sinn an dòchas gun fheuch thu e airson àrainneachdan leasachaidh is deuchainn - agus tha sinn a’ coimhead air adhart ri do bheachdan air ais air GitHub.

Tha buileachadh modh-obrach microservices làn de dhuilgheadasan leis gu bheil sgèile lìbhrigidh a’ fàs, a bharrachd air cho iom-fhillte ‘s a tha e. Bidh conaltradh eadar seirbheisean a’ fàs nas iom-fhillte, bidh duilgheadasan deasbaid a’ fàs nas duilghe, agus tha barrachd is barrachd sheirbheisean a’ feumachdainn barrachd ghoireasan airson an riaghladh.

Bidh NSM a’ fuasgladh nan duilgheadasan sin le bhith a’ toirt dhut:

  • Tèarainteachd, a tha a-nis nas cudromaiche na bha e a-riamh. Faodaidh briseadh dàta milleanan dolar a chosg gach bliadhna ann an teachd-a-steach caillte agus cliù. Bidh NSM a’ dèanamh cinnteach gu bheil a h-uile ceangal air a chrioptachadh le bhith a’ cleachdadh mTLS, agus mar sin chan eil dàta mothachail ann a dh’ fhaodas luchd-hackers a ghoid thairis air an lìonra. Leigidh smachd ruigsinneachd leat poileasaidhean a shuidheachadh airson mar a bhios seirbheisean a’ conaltradh ri seirbheisean eile.
  • rianachd trafaig. Nuair a bhios tu a’ lìbhrigeadh dreach ùr de thagradh, is dòcha gum bi thu airson tòiseachadh le bhith a’ cuingealachadh trafaic a tha a’ tighinn a-steach dha gun fhios nach bi mearachd ann. Le riaghladh trafaic soithichean tuigseach NSM, faodaidh tu poileasaidh bacadh trafaic a shuidheachadh airson seirbheisean ùra a mheudaicheas trafaic thar ùine. Bheir feartan eile, leithid cuingealachadh astair agus luchd-brisidh chuairtean, làn smachd dhut air sruthadh trafaic do sheirbheisean gu lèir.
  • Ìomhaigh. Faodaidh a bhith a’ riaghladh mhìltean de sheirbheisean a bhith na trom-laighe deasbaid is fradharc. Bidh NSM a’ cuideachadh le bhith a’ dèiligeadh ris an t-suidheachadh seo le deas-bhòrd Grafana togte a sheallas na feartan uile a tha rim faighinn ann an NGINX Plus. Agus cuideachd leigidh an Open Tracing gnìomhaichte leat sùil a chumail air gnothaichean gu mionaideach.
  • Lìbhrigeadh tar-chinealach, mura h-eil do chompanaidh, mar a’ mhòr-chuid eile, a’ cleachdadh bun-structair a’ ruith gu tur air Kubernetes. Bidh NSM a’ dèanamh cinnteach nach tèid tagraidhean dìleab fhàgail gun sùil. Le cuideachadh bhon Rianadair Ingress NGINX Kubernetes a chaidh a chuir an gnìomh, bidh e comasach do sheirbheisean dìleab conaltradh le seirbheisean mogal, agus a chaochladh.

Bidh NSM cuideachd a’ dèanamh cinnteach à tèarainteachd tagraidh ann an àrainneachdan earbsa neoni le bhith a’ cur crioptachadh agus dearbhadh gu follaiseach air trafaic shoithichean. Bidh e cuideachd a’ toirt seachad faicsinneachd malairt agus mion-sgrùdadh, gad chuideachadh gus cleachdadh a chuir air bhog gu sgiobalta agus gu ceart agus gus duilgheadasan fhuasgladh. Bidh e cuideachd a’ toirt seachad smachd trafaic granular, a’ leigeil le sgiobaidhean DevOps pàirtean de thagraidhean a chleachdadh agus a bharrachadh fhad ‘s a bheir iad cothrom do luchd-leasachaidh na tagraidhean sgaoilte aca a thogail agus a cheangal gu furasta.

Ciamar a tha an NGINX Service Mesh ag obair?

Tha NSM air a dhèanamh suas de phlèana dàta aonaichte airson trafaic chòmhnard (seirbheis-gu-seirbheis) agus Rianadair Ingress NGINX Plus freumhaichte airson trafaic dìreach, air a riaghladh le aon phlèana smachd.

Tha am plèana smachd air a dhealbhadh gu sònraichte agus air a bharrrachadh airson plèana dàta NGINX Plus agus a’ mìneachadh riaghailtean smachd trafaic air an sgaoileadh thairis air càraichean taobh NGINX Plus.

Ann an NSM, thèid proxies sidecars a chuir a-steach airson gach seirbheis sa mhogal. Bidh iad ag eadar-aghaidh leis na fuasglaidhean stòr fosgailte a leanas:

  • Cuidichidh Grafana, fradharc paramadair Prometheus, pannal NSM togte thu leis an obair agad;
  • Rianadairean Kubernetes Ingress, airson a bhith a’ riaghladh trafaic a-steach is a-mach anns a’ mhogal;
  • SPIRE, CA airson riaghladh, sgaoileadh agus ùrachadh theisteanasan anns a’ mhogal;
  • NATS, siostam scalable airson teachdaireachdan a chuir, leithid ùrachaidhean slighe, bhon phlèana smachd gu càraichean taobh;
  • Open Tracing, sgaoileadh debugging (taic Zipkin agus Jaeger);
  • Bidh Prometheus, a’ tional agus a’ stòradh feartan bho chàraichean-taobh NGINX Plus, leithid an àireamh de dh’ iarrtasan, cheanglaichean agus crathadh làimhe SSL.

Feartan agus co-phàirtean

Tha NGINX Plus mar itealan dàta a’ còmhdach neach-ionaid taobh-càr (trafaic chòmhnard) agus rianadair Ingress (dìreach), a’ gabhail a-steach agus a’ riaghladh trafaic shoithichean eadar seirbheisean.

Am measg nam feartan tha:

  • dearbhadh co-phàirteach TLS (mTLS);
  • Cothromachadh luchdan;
  • Fulangas lochdan;
  • Crìochan astair;
  • briseadh cuairte;
  • Cleachdaidhean gorm-uaine agus canary;
  • Smachd ruigsinneachd.

A’ cur air bhog mogal seirbheis NGINX

Gus NSM a ruith feumaidh tu:

  • ruigsinneachd gu àrainneachd Kubernetes. Tha NGINX Service Mesh a ’faighinn taic air mòran àrd-ùrlaran Kubernetes, a’ toirt a-steach Seirbheis Gabhaidh Elastic Amazon airson Kubernetes (EKS), Seirbheis Azure Kubernetes (AKS), Google Kubernetes Engine (GKE), VMware vSphere, agus cruinneachaidhean cunbhalach Kubernetes air an cleachdadh air frithealaichean bathar-cruaidh;
  • Inneal kubectl, air a chuir a-steach air an inneal às an tèid NSM a chuir a-steach;
  • Cothrom air pasganan fuasglaidh NGINX Service Mesh. Anns a ’phacaid tha ìomhaighean NSM a dh’ fheumar airson an luchdachadh suas gu clàr prìobhaideach airson soithichean a tha rim faighinn ann am buidheann Kubernetes. Tha am pasgan cuideachd a’ toirt a-steach nginx-meshctl, a dhìth gus NSM a chleachdadh.

Gus NSM a chleachdadh le roghainnean bunaiteach, ruith an òrdugh a leanas. Nuair a bhios iad gan cleachdadh, tha teachdaireachdan air an taisbeanadh a’ sealltainn gun deach co-phàirtean a chuir a-steach gu soirbheachail agus, mu dheireadh, teachdaireachd a’ nochdadh gu bheil NSM a’ ruith ann an àite ainm air leth (feumaidh tu an toiseach скачать agus cuir anns a' chlàr, mu thuairmeas. eadar-theangair):

$ 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.

Airson barrachd roghainnean, a’ gabhail a-steach roghainnean adhartach, ruith an àithne seo:

$ nginx-meshctl deploy –h

Dèan cinnteach gu bheil am plèana-smachd ag obrachadh ceart san àrainn-ainm nginx-mogal, faodaidh tu seo a dhèanamh:

$ 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

A rèir nan roghainnean cleachdaidh a shuidhich poileasaidhean stealladh làimhe no fèin-ghluasadach, thèid proxies sidecars NGINX a chur ri tagraidhean gu bunaiteach. Gus cur-ris fèin-ghluasadach a dhì-cheadachadh, leugh an seo

Mar eisimpleir, ma chleachdas sinn an tagradh cadal ann an ainm-àite default, agus an uairsin thoir sùil air a’ Pod - chì sinn dà shoitheach ruith, an tagradh cadal agus an càr-taobh co-cheangailte ris:

$ kubectl apply –f sleep.yaml
$ kubectl get pods –n default
NAME                     READY   STATUS    RESTARTS   AGE
sleep-674f75ff4d-gxjf2   2/2     Running   0          5h23m

Faodaidh sinn cuideachd sùil a chumail air an iarrtas cadal anns a 'phannal NGINX Plus, a' ruith an àithne seo gus faighinn gu taobh-chàr bhon inneal ionadail agad:

$ kubectl port-forward sleep-674f75ff4d-gxjf2 8080:8886

An uairsin bidh sinn dìreach a’ dol a-steach an seo anns a' bhrabhsair. Faodaidh tu cuideachd ceangal a dhèanamh ri Prometheus gus sùil a chumail air an tagradh cadal.

Faodaidh tu goireasan Kubernetes fa leth a chleachdadh gus poileasaidhean trafaic a rèiteachadh, leithid smachd ruigsinneachd, cuingealachadh reataichean agus briseadh chuairtean, airson seo faic sgrìobhainnean

co-dhùnadh

Tha NGINX Service Mesh ri fhaighinn airson a luchdachadh sìos an-asgaidh aig portal F5. Feuch e anns na h-àrainneachdan leasachaidh is deuchainn agad agus sgrìobh thugainn mu na toraidhean.

Gus feuchainn ri Rianadair Ingress NGINX Plus, cuir an gnìomh ùine deuchainn an-asgaidh airson 30 latha, no Cuir fios thugainn gus beachdachadh air na cùisean cleachdaidh agad.

Eadar-theangachadh le Pavel Demkovich, innleadair companaidh Drochaid a Deas. Rianachd siostam airson RUB 15 gach mìos. Agus mar roinn air leth - ionad trèanaidh Slurm, cleachdaibh agus gun ni sam bith ach cleachdadh.

Source: www.habr.com

Cuir beachd ann