NGINX Service Mesh mövcuddur

NGINX Service Mesh mövcuddur

Önizləmə versiyasını təqdim etməkdən məmnunuq NGINX Xidmət Mesh (NSM), Kubernetes mühitlərində konteyner trafikini idarə etmək üçün NGINX Plus əsaslı məlumat təyyarəsindən istifadə edən yığcam yüngül xidmət şəbəkəsi.

NSM pulsuzdur buradan indirin. Ümid edirik ki, onu inkişaf və sınaq mühitləri üçün sınayacaqsınız və rəyinizi gözləyirik GitHub-da.

Mikroservislər metodologiyasının tətbiqi çatdırılma miqyası, eləcə də mürəkkəbliyi artdıqca çətinliklərlə doludur. Xidmətlər arasında əlaqə daha mürəkkəb olur, sazlama problemləri çətinləşir və getdikcə daha çox xidmət idarə etmək üçün daha çox resurs tələb edir.

NSM sizə aşağıdakıları təmin etməklə bu problemləri həll edir:

  • təhlükəsizlik, bu indi həmişəkindən daha vacibdir. Məlumatların pozulması şirkətə hər il milyonlarla dollar dəyərində gəlir və nüfuz itirə bilər. NSM bütün əlaqələrin mTLS istifadə edərək şifrələnməsini təmin edir, beləliklə, şəbəkə üzərindən hakerlər tərəfindən oğurlana biləcək heç bir həssas məlumat yoxdur. Girişə nəzarət sizə xidmətlərin digər xidmətlərlə əlaqə saxlaması üçün siyasətlər təyin etməyə imkan verir.
  • trafikin idarə edilməsi. Tətbiqin yeni versiyasını göndərərkən, xəta baş verərsə, ona gələn trafiki məhdudlaşdırmaqla başlamaq istəyə bilərsiniz. NSM-in konteyner trafikinin intellektual idarə edilməsi ilə siz zamanla trafiki artıracaq yeni xidmətlər üçün trafikin məhdudlaşdırılması siyasətini təyin edə bilərsiniz. Sürəti məhdudlaşdıran və elektrik açarları kimi digər xüsusiyyətlər sizə bütün xidmətlərinizin trafik axını üzərində tam nəzarət imkanı verir.
  • Vizualizasiya. Minlərlə xidməti idarə etmək, sazlama və vizuallaşdırma kabusu ola bilər. NSM bu vəziyyətin öhdəsindən NGINX Plus-da mövcud olan bütün xüsusiyyətləri göstərən daxili Grafana tablosuna kömək edir. Həmçinin həyata keçirilən Açıq İzləmə əməliyyatları ətraflı şəkildə izləməyə imkan verir.
  • Hibrid çatdırılma, əgər şirkətiniz, digərləri kimi, tamamilə Kubernetes-də işləyən infrastrukturdan istifadə etmirsə. NSM köhnə tətbiqlərin baxımsız qalmamasını təmin edir. Tətbiq edilmiş NGINX Kubernetes Ingress Controller-in köməyi ilə köhnə xidmətlər mesh xidmətləri ilə və əksinə əlaqə qura biləcək.

NSM həmçinin konteyner trafikinə şəffaf şəkildə şifrələmə və autentifikasiya tətbiq etməklə sıfır etibar mühitlərində proqram təhlükəsizliyini təmin edir. O, həmçinin əməliyyatların görünməsini və təhlilini təmin edir, yerləşdirmələri tez və dəqiq şəkildə başlatmağa və problemləri həll etməyə kömək edir. O, həmçinin, DevOps komandalarına proqramların hissələrini yerləşdirməyə və optimallaşdırmağa imkan verərək, tərtibatçılara paylanmış tətbiqləri qurmağa və asanlıqla birləşdirməyə imkan verir.

NGINX Service Mesh necə işləyir?

NSM üfüqi (xidmətdən xidmətə) trafik üçün vahid məlumat müstəvisindən və vahid idarəetmə müstəvisi ilə idarə olunan şaquli trafik üçün quraşdırılmış NGINX Plus Giriş Nəzarətçisindən ibarətdir.

İdarəetmə müstəvisi NGINX Plus məlumat müstəvisi üçün xüsusi olaraq dizayn edilmiş və optimallaşdırılmışdır və NGINX Plus yan avtomobilləri arasında paylanmış yol hərəkətinə nəzarət qaydalarını müəyyən edir.

NSM-də tordakı hər bir xidmət üçün yan vaqonların proksiləri quraşdırılır. Onlar aşağıdakı açıq mənbə həlləri ilə interfeys:

  • Grafana, Prometheus parametrlərinin vizuallaşdırılması, daxili NSM paneli işinizdə sizə kömək edir;
  • Kubernetes Giriş Nəzarətçiləri, şəbəkədə daxil olan və gedən trafiki idarə etmək üçün;
  • SPIRE, şəbəkədə sertifikatları idarə etmək, yaymaq və yeniləmək üçün CA;
  • NATS, idarəetmə təyyarəsindən yan vaqonlara marşrut yeniləmələri kimi mesajların göndərilməsi üçün genişləndirilə bilən sistem;
  • Açıq İzləmə, paylanmış sazlama (Zipkin və Jaeger tərəfindən dəstəklənir);
  • Prometheus, NGINX Plus yan avtomobillərindən sorğuların, əlaqələrin və SSL əl sıxışmalarının sayı kimi xüsusiyyətləri toplayır və saxlayır.

Funksiyalar və komponentlər

Məlumat müstəvisi olaraq NGINX Plus yan vaqon proksisini (üfüqi trafik) və Giriş nəzarətçisini (şaquli) əhatə edir, xidmətlər arasında konteyner trafikini kəsir və idarə edir.

Xüsusiyyətlərə daxildir:

  • Qarşılıqlı TLS (mTLS) autentifikasiyası;
  • Yük balansı;
  • Səhvlərə dözümlülük;
  • Sürət həddi;
  • Devrenin pozulması;
  • Mavi-yaşıl və kanareyka yerləşdirmələri;
  • Giriş nəzarəti.

NGINX Service Mesh işə salınır

NSM-i işə salmaq üçün sizə lazımdır:

  • Kubernetes mühitinə giriş. NGINX Service Mesh bir çox Kubernetes platformasında dəstəklənir, o cümlədən Kubernetes üçün Amazon Elastik Konteyner Xidməti (EKS), Azure Kubernetes Xidməti (AKS), Google Kubernetes Mühərriki (GKE), VMware vSphere və hardware serverlərində yerləşdirilən müntəzəm Kubernetes klasterləri;
  • Alət kubectl, NSM-nin quraşdırılacağı maşında quraşdırılmışdır;
  • NGINX Service Mesh buraxılış paketlərinə giriş. Paket Kubernetes klasterində mövcud konteynerlər üçün şəxsi reyestrinə yükləmək üçün lazım olan NSM şəkillərini ehtiva edir. Paketdə də var nginx-meshctl, NSM yerləşdirmək üçün lazımdır.

NSM-ni standart parametrlərlə yerləşdirmək üçün aşağıdakı əmri yerinə yetirin. Yerləşdirmə zamanı komponentlərin uğurlu quraşdırılmasını göstərən mesajlar və nəhayət, NSM-nin ayrıca ad məkanında işlədiyini göstərən mesaj göstərilir (əvvəlcə bunu etməlisiniz. download və reyestrdə yerləşdirin, təqribən. tərcüməçi):

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

Qabaqcıl parametrlər daxil olmaqla daha çox seçim üçün bu əmri işlədin:

$ nginx-meshctl deploy –h

İdarəetmə təyyarəsinin ad məkanında düzgün işlədiyini yoxlayın nginx-mesh, bunu bəyənə bilərsiniz:

$ 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

Manuel və ya avtomatik inyeksiya siyasətlərini təyin edən yerləşdirmə parametrlərindən asılı olaraq, NGINX sidecars proksiləri defolt olaraq tətbiqlərə əlavə olunacaq. Avtomatik əlavə etməyi söndürmək üçün oxuyun burada

Məsələn, tətbiqi yerləşdirsək yatmaq ad məkanında default, və sonra Pod-u yoxlayın - iki işləyən konteyneri, tətbiqi görəcəyik yatmaq və əlaqəli yan araba:

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

Biz də proqrama nəzarət edə bilərik yatmaq NGINX Plus panelində yerli maşınınızdan yan arabaya daxil olmaq üçün bu əmri işlədir:

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

Sonra sadəcə içəri giririk burada brauzerdə. Siz həmçinin proqrama nəzarət etmək üçün Prometheus-a qoşula bilərsiniz yatmaq.

Siz giriş nəzarəti, sürətin məhdudlaşdırılması və dövrə kəsilməsi kimi trafik siyasətlərini konfiqurasiya etmək üçün fərdi Kubernetes resurslarından istifadə edə bilərsiniz. sənədlər

Nəticə

NGINX Service Mesh bu ünvanda pulsuz yükləmək üçün mövcuddur portal F5. Bunu hazırlayıcı və sınaq mühitinizdə sınayın və nəticələr haqqında bizə yazın.

NGINX Plus Ingress Controller-i sınamaq üçün aktivləşdirin pulsuz sınaq müddəti 30 gün ərzində və ya Bizimlə əlaqə saxlayın istifadə hallarınızı müzakirə etmək üçün.

Tərcümə şirkət mühəndisi Pavel Demkoviç tərəfindən Southbridge. Ayda 15 rubl üçün sistem idarəsi. Və ayrıca bir bölmə olaraq - təlim mərkəzi Slurm, təcrübə və təcrübədən başqa bir şey yoxdur.

Mənbə: www.habr.com

Добавить комментарий