NGINX Service Mesh saatavilla

NGINX Service Mesh saatavilla

Meillä on ilo esitellä esikatseluversio NGINX Service Mesh (NSM), niputettu kevyt palveluverkko, joka käyttää NGINX Plus -pohjaista datatasoa konttiliikenteen hallintaan Kubernetes-ympäristöissä.

NSM on ilmainen lataa tästä. Toivomme, että pääset kokeilemaan sitä kehitys- ja testiympäristöissä – ja odotamme palautettasi GitHubissa.

Mikropalvelumetodologian käyttöönotto on täynnä vaikeuksia toimitusten laajuuden ja monimutkaisuuden kasvaessa. Palveluiden välinen viestintä monimutkaistuu, virheenkorjausongelmat vaikeutuvat ja yhä useammat palvelut vaativat enemmän resursseja hallintaan.

NSM ratkaisee nämä ongelmat tarjoamalla sinulle:

  • Безопасность, mikä on nyt tärkeämpää kuin koskaan. Tietomurto voi maksaa yritykselle miljoonia dollareita vuodessa tulojen ja maineen menettämisenä. NSM varmistaa, että kaikki yhteydet salataan mTLS:n avulla, joten hakkerit voivat varastaa arkaluontoisia tietoja verkon kautta. Pääsynhallinnan avulla voit määrittää käytäntöjä sille, miten palvelut kommunikoivat muiden palvelujen kanssa.
  • liikenteen hallinta. Kun toimitat sovelluksen uuden version, sinun kannattaa ehkä aloittaa rajoittamalla siihen tulevaa liikennettä virheen sattuessa. NSM:n älykkään konttiliikenteen hallinnan avulla voit asettaa uusille palveluille liikennerajoituskäytännön, joka lisää liikennettä ajan myötä. Muut ominaisuudet, kuten nopeusrajoitus ja katkaisijat, antavat sinulle täyden hallinnan kaikkien palveluidesi liikennevirrassa.
  • Visualisointi. Tuhansien palvelujen hallinta voi olla virheenkorjauksen ja visualisoinnin painajainen. NSM auttaa selviytymään tästä tilanteesta sisäänrakennetulla Grafana-kojelaudalla, joka näyttää kaikki NGINX Plus -sovelluksessa saatavilla olevat ominaisuudet. Ja myös toteutetun Open Tracingin avulla voit seurata tapahtumia yksityiskohtaisesti.
  • Hybriditoimitukset, jos yrityksesi, kuten useimmat muut, ei käytä infrastruktuuria, joka toimii kokonaan Kubernetesissa. NSM varmistaa, että vanhat sovellukset eivät jää ilman valvontaa. Toteutetun NGINX Kubernetes Ingress Controllerin avulla vanhat palvelut pystyvät kommunikoimaan mesh-palvelujen kanssa ja päinvastoin.

NSM varmistaa myös sovellusten turvallisuuden nollaluottamusympäristöissä soveltamalla läpinäkyvästi salausta ja todennusta konttiliikenteeseen. Se tarjoaa myös tapahtumien näkyvyyden ja analyysin, mikä auttaa sinua käynnistämään käyttöönotot nopeasti ja tarkasti ja ratkaisemaan ongelmia. Se tarjoaa myös yksityiskohtaisen liikenteenohjauksen, jonka avulla DevOps-tiimit voivat ottaa käyttöön ja optimoida osia sovelluksista samalla, kun kehittäjät voivat rakentaa ja yhdistää helposti hajautettuja sovelluksiaan.

Miten NGINX Service Mesh toimii?

NSM koostuu yhtenäisestä tietotasosta vaakasuuntaista (palvelusta palveluun) liikenteeseen ja upotetusta NGINX Plus Ingress Controller -sisääntuloohjaimesta pystysuuntaista liikennettä varten, jota hallitsee yksi ohjaustaso.

Ohjaustaso on erityisesti suunniteltu ja optimoitu NGINX Plus -tietotasolle ja määrittää liikenteenohjaussäännöt, jotka on jaettu NGINX Plus -sivuvaunuille.

NSM:ssä sivuvaunujen välityspalvelimet asennetaan jokaiselle mesh-palvelulle. Ne liittyvät seuraaviin avoimen lähdekoodin ratkaisuihin:

  • Grafana, Prometheus-parametrien visualisointi, sisäänrakennettu NSM-paneeli auttaa sinua työssäsi;
  • Kubernetes Ingress Controllers, tulevan ja lähtevän liikenteen hallintaan meshissä;
  • SPIRE, CA sertifikaattien hallintaan, jakeluun ja päivittämiseen meshissä;
  • NATS, skaalautuva järjestelmä viestien, kuten reittipäivitysten, lähettämiseksi ohjaustasolta sivuvaunuihin;
  • Open Tracing, hajautettu virheenkorjaus (tuettu Zipkin ja Jaeger);
  • Prometheus kerää ja tallentaa NGINX Plus -sivuvaunujen ominaisuuksia, kuten pyyntöjen lukumäärän, yhteydet ja SSL-kättelyt.

Toiminnot ja komponentit

NGINX Plus datatasona kattaa sivuvaunun välityspalvelimen (horisontaalinen liikenne) ja Ingress-ohjaimen (pystysuora), sieppaamalla ja hallitsemalla konttiliikennettä palvelujen välillä.

Ominaisuuksiin kuuluu:

  • Keskinäinen TLS (mTLS) -todennus;
  • Kuormituksen tasapainoittaminen;
  • Vikasietoisuus;
  • nopeusrajoitus;
  • Piirin katkaisu;
  • Sinivihreä ja kanarialintu;
  • Kulunvalvonta.

Käynnistetään NGINX Service Mesh

NSM:n suorittamiseen tarvitset:

  • pääsy Kubernetes-ympäristöön. NGINX Service Meshiä tuetaan monilla Kubernetes-alustoilla, mukaan lukien Amazon Elastic Container Service for Kubernetes (EKS), Azure Kubernetes Service (AKS), Google Kubernetes Engine (GKE), VMware vSphere ja tavalliset Kubernetes-klusterit, jotka on otettu käyttöön laitteistopalvelimissa;
  • Työkalu kubectl, asennettuna koneeseen, josta NSM asennetaan;
  • Pääsy NGINX Service Mesh -julkaisupaketteihin. Paketti sisältää NSM-kuvia, joita tarvitaan Kubernetes-klusterissa olevien säiliöiden yksityiseen rekisteriin lataamiseen. Paketti sisältää myös nginx-meshctl, tarvitaan NSM:n käyttöönottamiseksi.

Ota NSM käyttöön oletusasetuksilla suorittamalla seuraava komento. Käyttöönoton aikana näytetään viestejä, jotka osoittavat komponenttien onnistuneen asennuksen, ja lopuksi viesti, joka osoittaa, että NSM on käynnissä erillisessä nimiavaruudessa (sinun on ensin скачать ja laita se rekisteriin, noin kääntäjä):

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

Jos haluat lisää vaihtoehtoja, mukaan lukien lisäasetukset, suorita tämä komento:

$ nginx-meshctl deploy –h

Tarkista, että ohjaustaso toimii oikein nimiavaruudessa nginx-verkko, sinä pystyt tähän:

$ 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

Riippuen käyttöönottoasetuksista, jotka määrittävät manuaaliset tai automaattiset ruiskutuskäytännöt, NGINX-sivuvaunujen välityspalvelimet lisätään sovelluksiin oletusarvoisesti. Jos haluat poistaa automaattisen lisäyksen käytöstä, lue täällä

Esimerkiksi jos otamme sovelluksen käyttöön nukkua nimiavaruudessa oletusarvo, ja tarkista sitten Pod - näemme kaksi käynnissä olevaa konttia, sovellus nukkua ja siihen liittyvä sivuvaunu:

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

Voimme myös seurata sovellusta nukkua NGINX Plus -paneelissa tämän komennon avulla päästäksesi sivuvaunuun paikalliselta koneeltasi:

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

Sitten vain mennään sisään täällä selaimessa. Voit myös muodostaa yhteyden Prometheukseen seurataksesi sovellusta nukkua.

Voit käyttää yksittäisiä Kubernetes-resursseja liikennekäytäntöjen, kuten kulunvalvonnan, nopeudenrajoitusten ja katkaisujen, määrittämiseen. dokumentointi

Johtopäätös

NGINX Service Mesh on ladattavissa ilmaiseksi osoitteesta portaali F5. Kokeile sitä kehitys- ja testiympäristöissäsi ja kirjoita meille tuloksista.

Kokeile NGINX Plus Ingress Controlleria aktivoimalla ilmainen kokeilujakso 30 päivän ajan tai Ota meihin yhteyttä keskustellaksesi käyttötapauksistasi.

Käännös: Pavel Demkovich, yrityksen insinööri Southbridge. Järjestelmän hallinta 15 000 RUB kuukaudessa. Ja erillisenä divisioonana - koulutuskeskus Slurm, harjoittelua ja muuta kuin harjoittelua.

Lähde: will.com

Lisää kommentti