NGINX سروس ميش دستياب آهي

NGINX سروس ميش دستياب آهي

اسان کي هڪ ابتدائي نسخو پيش ڪرڻ تي خوشي ٿي رهي آهي. NGINX سروس ميش (NSM)، هڪ ڳنڍيل، هلڪو وزن وارو سروس ميش جيڪو ڪبرنيٽس ماحول ۾ ڪنٽينر ٽرئفڪ کي منظم ڪرڻ لاءِ NGINX پلس تي ٻڌل ڊيٽا جهاز استعمال ڪري ٿو.

اين ايس ايم مفت آهي. هتي ڊائونلوڊ ڪريواسان کي اميد آهي ته توهان ان کي ترقي ۽ ٽيسٽ ماحول لاءِ آزمائيندا - ۽ اسان توهان جي راءِ جو منتظر آهيون. GitHub تي.

مائڪرو سروسز جي طريقيڪار کي لاڳو ڪرڻ چئلينجن سان ڀريل آهي جيئن ترسيل جو پيمانو وڌي ٿو ۽ انهن جي پيچيدگي وڌي ٿي. خدمتن جي وچ ۾ رابطو وڌيڪ پيچيده ٿي ويندو آهي، ڊيبگنگ جا مسئلا وڌيڪ ڏکيو ٿي ويندا آهن، ۽ وڌيڪ خدمتن کي منظم ڪرڻ لاءِ وڌيڪ وسيلن جي ضرورت هوندي آهي.

اين ايس ايم توهان کي مهيا ڪندي انهن مسئلن کي حل ڪري ٿو:

  • حفاظت، جيڪو هاڻي اڳ کان وڌيڪ اهم آهي. ڊيٽا جي ڀڃڪڙي ڪمپني کي هر سال لکين ڊالرن جي آمدني ۽ شهرت وڃائي سگهي ٿي. NSM يقيني بڻائي ٿو ته سڀئي ڪنيڪشن mTLS استعمال ڪندي انڪرپٽ ٿيل آهن، انهي ڳالهه کي يقيني بڻائي ٿو ته ڪو به حساس ڊيٽا نه آهي جيڪو هيڪرز نيٽ ورڪ تي چوري ڪري سگهن. رسائي ڪنٽرول توهان کي پاليسيون سيٽ ڪرڻ جي اجازت ڏئي ٿو ته خدمتون ٻين خدمتن سان ڪيئن رابطو ڪن ٿيون.
  • ٽرئفڪ جو انتظامجڏهن ڪنهن ايپليڪيشن جو نئون ورزن موڪليو وڃي، ته پوءِ توهان شايد شروعاتي طور تي ڪنهن غلطي جي صورت ۾ ان جي ايندڙ ٽرئفڪ کي محدود ڪرڻ چاهيندا. NSM جي ذهين ڪنٽينر ٽرئفڪ مئنيجمينٽ سان، توهان نئين خدمتن لاءِ ٽرئفڪ محدود ڪرڻ واري پاليسي مقرر ڪري سگهو ٿا جيڪا وقت سان گڏ وڌندي. ٻيون خاصيتون، جهڙوڪ شرح محدود ڪرڻ ۽ سرڪٽ بريڪرز، توهان کي توهان جي سڀني خدمتن ڏانهن ٽرئفڪ جي وهڪري تي مڪمل ڪنٽرول ڏين ٿا.
  • زير نظرهزارين خدمتن جو انتظام ڪرڻ هڪ ڊيبگنگ ۽ ويزوئلائيزيشن جو خوفناڪ خواب ٿي سگهي ٿو. اين ايس ايم پنهنجي بلٽ ان گرافانا ڊيش بورڊ سان ان کي حل ڪرڻ ۾ مدد ڪري ٿو، جيڪو اين جي اين ايڪس پلس ۾ موجود سڀني ميٽرڪس کي ڏيکاري ٿو. انٽيگريٽيڊ اوپن ٽريڪنگ پڻ تفصيلي ٽرانزيڪشن مانيٽرنگ جي اجازت ڏئي ٿي.
  • هائبرڊ ترسيلجيڪڏهن توهان جي ڪمپني، گھڻن ٻين وانگر، مڪمل طور تي ڪبرنيٽس تي ٻڌل انفراسٽرڪچر استعمال نٿي ڪري، ته اين ايس ايم يقيني بڻائي ٿي ته ليگيسي ايپليڪيشنن کي نظرانداز نه ڪيو وڃي. مربوط NGINX ڪبرنيٽس انگريس ڪنٽرولر سان، ليگيسي خدمتون ميش سروسز سان رابطو ڪري سگهن ٿيون، ۽ ان جي برعڪس.

اين ايس ايم ڪنٽينر ٽرئفڪ کي شفاف طور تي انڪرپٽ ۽ تصديق ڪندي صفر اعتماد واري ماحول ۾ ايپليڪيشن سيڪيورٽي کي پڻ يقيني بڻائي ٿو. اهو ٽرانزيڪشن جي نمائش ۽ تجزيو پڻ فراهم ڪري ٿو، جلدي ۽ صحيح طور تي مسئلن کي ترتيب ڏيڻ ۽ حل ڪرڻ ۾ مدد ڪري ٿو. ان کان علاوه، اهو گرينولر ٽرئفڪ ڪنٽرول مهيا ڪري ٿو، جيڪو ڊيو اوپس ٽيمن کي ايپليڪيشن حصن کي ترتيب ڏيڻ ۽ بهتر ڪرڻ جي اجازت ڏئي ٿو جڏهن ته ڊولپرز کي انهن جي ورهايل ايپليڪيشنن کي ٺاهڻ ۽ آساني سان ڳنڍڻ جي قابل بڻائي ٿو.

NGINX سروس ميش ڪيئن ڪم ڪندو آهي؟

اين ايس ايم ۾ افقي (سروس کان سروس) ٽرئفڪ لاءِ هڪ متحد ڊيٽا جهاز ۽ عمودي ٽرئفڪ لاءِ هڪ ايمبيڊڊ اين جي اين ايڪس پلس انگريس ڪنٽرولر شامل آهي، جيڪو هڪ ڪنٽرول جهاز ذريعي منظم ڪيو ويندو آهي.

ڪنٽرول جهاز خاص طور تي NGINX پلس ڊيٽا جهاز لاءِ ٺهيل ۽ بهتر ڪيو ويو آهي، جيڪو NGINX پلس سائڊ ڪارز ۾ ورهايل ٽرئفڪ ڪنٽرول قاعدن کي بيان ڪري ٿو.

اين ايس ايم ۾، ميش ۾ هر سروس لاءِ سائڊ ڪار پراڪسي نصب ٿيل آهن. اهي هيٺ ڏنل اوپن سورس حلن سان لهه وچڙ ڪن ٿا:

  • گرافانا، پروميٿيئس ميٽرڪس ويزوئلائيزيشن، بلٽ ان اين ايس ايم ڊيش بورڊ توهان جي ڪم ۾ مدد ڪري ٿو؛
  • ڪبرنيٽس انگريس ڪنٽرولرز، ميش ۾ ايندڙ ۽ ٻاهر نڪرندڙ ٽرئفڪ کي منظم ڪرڻ لاءِ؛
  • ميش ۾ سرٽيفڪيٽن جي انتظام، ورڇ ۽ تجديد لاءِ SPIRE، CA؛
  • NATS، ڪنٽرول جهاز کان سائڊ ڪارن تائين پيغام موڪلڻ لاءِ هڪ اسڪيلبل سسٽم، جهڙوڪ روٽ اپڊيٽ؛
  • اوپن ٽريڪنگ، ورهايل ڊيبگنگ (زپڪن ۽ جيگر سپورٽ ٿيل)؛
  • پروميٿيس، NGINX پلس سائڊ ڪارز مان خاصيتون گڏ ڪرڻ ۽ ذخيرو ڪرڻ، جهڙوڪ درخواستن جو تعداد، ڪنيڪشن، ۽ SSL هٿ ملائڻ.

ڪم ۽ جزا

NGINX پلس هڪ ڊيٽا جهاز جي طور تي سائڊ ڪار پراڪسي (افقي ٽرئفڪ) ۽ انگريس ڪنٽرولر (عمودي ٽرئفڪ) کي ڍڪيندو آهي، خدمتن جي وچ ۾ ڪنٽينر ٽرئفڪ کي روڪيندو ۽ منظم ڪندو آهي.

خاصيتون شامل آهن:

  • باهمي TLS تصديق (mTLS)؛
  • لوڊ بيلنسنگ؛
  • عيب رواداري؛
  • رفتار جي حد؛
  • سرڪٽ ٽوڙڻ؛
  • نيرو سائو ۽ ڪينري جي تعیناتي؛
  • رسائي ڪنٽرول.

NGINX سروس ميش لانچ ڪرڻ

NSM هلائڻ لاءِ توهان کي ضرورت آهي:

  • ڪبرنيٽس ماحول تائين رسائي. NGINX سروس ميش ڪيترن ئي ڪبرنيٽس پليٽ فارمن تي سپورٽ ڪئي وئي آهي، جنهن ۾ ايميزون ايلاسٽڪ ڪنٽينر سروس فار ڪبرنيٽس (EKS)، ايزور ڪبرنيٽس سروس (AKS)، گوگل ڪبرنيٽس انجن (GKE)، VMware vSphere، ۽ بيئر ميٽل سرورز تي مقرر ڪيل باقاعده ڪبرنيٽس ڪلسٽر شامل آهن؛
  • ساز kubectl، ان مشين تي نصب ٿيل آهي جنهن مان NSM نصب ڪيو ويندو؛
  • NGINX سروس ميش رليز پيڪيجز تائين رسائي. هن پيڪيج ۾ NSM تصويرون شامل آهن جيڪي ڪبرنيٽس ڪلسٽر اندر رسائي لائق هڪ خانگي ڪنٽينر رجسٽري ۾ اپلوڊ ڪرڻ لاءِ گهربل آهن. پيڪيج ۾ پڻ شامل آهي nginx-meshctl، اين ايس ايم کي ترتيب ڏيڻ جي ضرورت آهي.

ڊفالٽ سيٽنگز سان NSM کي ڊيپلائي ڪرڻ لاءِ، هيٺ ڏنل حڪم هلايو. ڊيپلائيمينٽ دوران، توهان کي حصن جي ڪامياب انسٽاليشن بابت پيغام نظر ايندا ۽، آخرڪار، هڪ پيغام جيڪو ظاهر ڪندو ته NSM هڪ الڳ نيم اسپيس ۾ هلي رهيو آهي (توهان کي پهريان ان کي ٺاهڻ جي ضرورت آهي). скачать ۽ ان کي رجسٽري ۾ رکو، لڳ ڀڳ مترجم):

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

وڌيڪ اختيارن لاءِ، بشمول جديد سيٽنگون، هي حڪم هلايو:

$ nginx-meshctl deploy –h

تصديق ڪريو ته ڪنٽرول جهاز نالي جي جڳهه ۾ صحيح ڪم ڪري ٿو. nginx-ميش، توهان اهو هن طرح ڪري سگهو ٿا:

$ 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

دستي يا خودڪار انجيڪشن پاليسيون سيٽ ڪرڻ واري ڊيپلائيمينٽ سيٽنگن تي منحصر ڪري، NGINX سائڊ ڪار پراڪسي ڊفالٽ طور تي ايپليڪيشنن ۾ شامل ڪيا ويندا. خودڪار اضافو کي غير فعال ڪرڻ لاءِ، ڏسو هتي

مثال طور، جيڪڏهن اسان هڪ ايپليڪيشن کي ترتيب ڏيون ٿا ننڊ نالي جي جڳهه ۾ رٿيل، ۽ پوءِ اسين پوڊ چيڪ ڪنداسين - اسين ٻه هلندڙ ڪنٽينر ڏسندا، هڪ ايپليڪيشن ننڊ ۽ لاڳاپيل سائڊ ڪار:

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

اسان اپليڪيشن جي نگراني پڻ ڪري سگھون ٿا ننڊ NGINX پلس پينل ۾، توهان جي مقامي مشين مان سائڊ ڪار تائين رسائي حاصل ڪرڻ لاءِ هي حڪم هلائيندي:

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

پوءِ اسين بس اندر وڃون ٿا. هتي برائوزر ۾. توهان ايپليڪيشن جي نگراني لاءِ پروميٿيئس سان پڻ ڳنڍجي سگهو ٿا. ننڊ.

توهان ٽرئفڪ پاليسين کي ترتيب ڏيڻ لاءِ الڳ الڳ ڪبرنيٽس وسيلا استعمال ڪري سگهو ٿا جهڙوڪ رسائي ڪنٽرول، شرح جي حد بندي، ۽ سرڪٽ ٽوڙڻ، هن لاءِ ڏسو دستاويز

ٿڪل

NGINX سروس ميش مفت ڊائون لوڊ لاءِ موجود آهي هتي ايف 5 پورٽلان کي پنهنجي ڊولپمينٽ ۽ ٽيسٽ ماحول ۾ آزمايو ۽ نتيجن بابت اسان کي لکو..

NGINX پلس انگريس ڪنٽرولر کي آزمائڻ لاءِ، چالو ڪريو مفت آزمائشي مدت 30 ڏينهن لاءِ، يا اسان سان رابطو ڪريو توهان جي استعمال جي ڪيسن تي بحث ڪرڻ لاءِ.

ڪمپني انجنيئر پاول ڊيمڪووچ پاران ترجمو سائبربرسسٽم ايڊمنسٽريشن 15,000 روبل في مهيني لاءِ. ۽ هڪ الڳ ڊويزن جي طور تي - هڪ تربيتي مرڪز. ٻَڌَ، مشق ۽ ڪجهه به نه پر مشق.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو