$lang['tuto'] = "سبق"; ?>$lang['tuto'] = "سبق"; ?>$lang['tuto'] = "سبق"; ?> رنچر میں K3S پھلیوں کے لئے نیٹ ورک

رنچر میں K3S پھلیوں کے لئے نیٹ ورک تک رسائی کے مسائل کو حل کرنا

Networking

کے 3 ایس میں پوڈ نیٹ ورک کی حدود کو سمجھنا

جب رنچر اور کے 3 ایس کے ساتھ کبرنیٹس کلسٹر ترتیب دیں تو ، نیٹ ورکنگ ایک بڑا چیلنج بن سکتا ہے۔ ایک عام مسئلہ اس وقت پیدا ہوتا ہے جب کارکن نوڈس بیرونی نیٹ ورکس تک پہنچ سکتے ہیں ، لیکن ان نوڈس کے اندر چلنے والی پھلیوں پر پابندی ہے۔ یہ مایوس کن ہوسکتا ہے ، خاص طور پر جب آپ کے نوڈس مناسب راستوں کو تشکیل دیتے ہیں ، پھر بھی آپ کے پھلی الگ تھلگ رہتے ہیں۔

اس منظر کا سامنا اکثر ایسے ماحول میں ہوتا ہے جہاں کارکن نوڈس ایک وسیع تر نیٹ ورک فن تعمیر کا حصہ ہوتے ہیں۔ مثال کے طور پر ، آپ کے کارکن نوڈس کا تعلق 192.168.1.x سب نیٹ سے ہوسکتا ہے اور جامد راستوں کے ذریعہ 192.168.2.x جیسے کسی اور سب نیٹ تک رسائی حاصل کرسکتے ہیں۔ تاہم ، ان نوڈس پر چلنے والی پھلی 192.168.2.x میں مشینوں کے ساتھ بات چیت کرنے سے قاصر ہیں۔

یہاں کا چیلنج اس بات میں ہے کہ کس طرح کیبرنیٹس نیٹ ورکنگ کا انتظام کرتی ہے اور کس طرح ٹریفک پھلیوں سے بیرونی مقامات تک بہتی ہے۔ مناسب ترتیب کے بغیر ، پھلیوں کو صرف اپنے نوڈ کے نیٹ ورک میں وسائل تک رسائی حاصل ہوسکتی ہے ، بیرونی مشینوں کو ناقابل رسائی چھوڑ کر۔ یہ سمجھنا کہ ایسا کیوں ہوتا ہے اس کا حل تلاش کرنے کے لئے بہت ضروری ہے۔

اس مضمون میں ، ہم دریافت کریں گے کہ پھلیوں کو ان نیٹ ورک کی پابندیوں کا سامنا کیوں کرنا پڑتا ہے اور انہیں بیرونی سب نیٹٹس تک رسائی کے قابل کیسے بنایا جائے۔ عملی اقدامات اور حقیقی دنیا کی مثالوں کے ذریعہ ، ہم آپ کو اس رابطے کے فرق کو ختم کرنے میں مدد کریں گے۔ آئیے ڈوبکی! 🚀

حکم استعمال کی مثال
iptables -t nat -A POSTROUTING -s 10.42.0.0/16 -o eth0 -j MASQUERADE پی او ڈی کو ان کے ماخذ IP کو ماسکریڈ کرکے بیرونی نیٹ ورکس کے ساتھ بات چیت کرنے کی اجازت دینے کے لئے ایک NAT (نیٹ ورک ایڈریس ٹرانسلیشن) قاعدہ شامل کرتا ہے۔
echo 1 >echo 1 > /proc/sys/net/ipv4/ip_forward آئی پی فارورڈنگ کو قابل بناتا ہے ، جس سے ایک نیٹ ورک سے پیکٹ دوسرے کو جانے کی اجازت دیتا ہے ، جو کراس سب نیٹ مواصلات کے لئے ضروری ہے۔
ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0 دستی طور پر ایک مستحکم راستہ شامل کرتا ہے ، جس میں ٹریفک کو 192.168.2.x نیٹ ورک میں 192.168.1.1 گیٹ وے کے ذریعے ہدایت کی جاتی ہے۔
iptables-save >iptables-save > /etc/iptables/rules.v4 Iptables کے قواعد برقرار ہیں لہذا وہ سسٹم کے دوبارہ چلنے کے بعد متحرک رہیں۔
systemctl restart networking نئے تشکیل شدہ راستوں اور فائر وال قواعد کو لاگو کرنے کے لئے نیٹ ورکنگ سروس کو دوبارہ شروع کریں۔
hostNetwork: true ایک کبرنیٹس پوڈ کنفیگریشن جو کنٹینر کو میزبان کے نیٹ ورک کو بانٹنے کی اجازت دیتا ہے ، جس میں داخلی کلسٹر نیٹ ورکنگ کی پابندیوں کو نظرانداز کیا جاتا ہے۔
securityContext: { privileged: true } ایک کبرنیٹس کنٹینر ایلیویٹڈ اجازتوں کو عطا کرتا ہے ، جس سے میزبان مشین پر نیٹ ورکنگ کی ترتیبات میں ترمیم کی جاسکتی ہے۔
ip route show موجودہ روٹنگ ٹیبل کو دکھاتا ہے ، جس میں سب نیٹٹس کے مابین رابطے کے مسائل کو ڈیبگ کرنے میں مدد ملتی ہے۔
command: ["sh", "-c", "ping -c 4 192.168.2.10"] بیرونی رسائی کی تصدیق کے ل a کبرنیٹس پوڈ کے اندر بنیادی نیٹ ورک کنیکٹیویٹی ٹیسٹ چلاتا ہے۔
echo "192.168.2.0/24 via 192.168.1.1 dev eth0" >>echo "192.168.2.0/24 via 192.168.1.1 dev eth0" >> /etc/network/interfaces سسٹم کی نیٹ ورک کنفیگریشن فائل میں مستقل جامد راستہ شامل کرتا ہے ، اس بات کو یقینی بناتا ہے کہ یہ ریبوٹس کے بعد باقی ہے۔

K3S پھلیوں کے لئے کراس نیٹ ورک کنیکٹوٹی کو یقینی بنانا

جب تعی .ن کرتے ہو رنچر کے ساتھ ، نیٹ ورکنگ کے مسائل پیدا ہوسکتے ہیں جب پھندوں کو اپنے فوری سب نیٹ سے باہر مشینوں کے ساتھ بات چیت کرنے کی ضرورت ہوتی ہے۔ اسکرپٹ نے روٹنگ کے قواعد میں ترمیم کرکے اور NAT (نیٹ ورک ایڈریس ترجمہ) کی تشکیل کرکے اس مسئلے کو حل کیا۔ ایک اہم اسکرپٹ استعمال کرتا ہے ماسکریڈنگ اصول کا اطلاق کرنے کے لئے ، اس بات کو یقینی بنانا کہ پوڈ ٹریفک خود کارکن نوڈ سے ہی آتا ہے۔ اس سے بیرونی مشینوں کو پھندوں کا جواب دینے کی اجازت ملتی ہے ، جو پہلے سے طے شدہ نیٹ ورک کی تنہائی پر قابو پاتے ہیں۔

ایک اور نقطہ نظر میں دستی طور پر جامد راستوں کو شامل کرنا شامل ہے۔ کارکن نوڈس کو اکثر جامد راستوں کے ذریعہ دوسرے نیٹ ورکس تک رسائی حاصل ہوتی ہے ، لیکن کبرنیٹس پھلی ان راستوں کو بطور ڈیفالٹ نہیں لیتے ہیں۔ ایک اسکرپٹ چلانے سے جو نوڈ کے گیٹ وے کے ذریعے 192.168.2.x پر واضح طور پر ایک راستہ جوڑتا ہے ، ہم اس بات کو یقینی بناتے ہیں کہ پھلی ان مشینوں تک پہنچ سکتی ہے۔ یہ ایسے ماحول میں ضروری ہے جہاں متعدد داخلی نیٹ ورکس کو بات چیت کرنے کی ضرورت ہوتی ہے ، جیسے مختلف محکموں کے لئے علیحدہ VLANs والی کمپنیاں۔

عمل کو خود کار بنانے کے لئے ، a تعینات کیا جاسکتا ہے۔ اس سے یہ یقینی بنتا ہے کہ کلسٹر کے تمام نوڈس میں نیٹ ورکنگ کی ترتیب کا اطلاق مستقل طور پر ہوتا ہے۔ ڈیمنسیٹ ایک مراعات یافتہ کنٹینر چلاتا ہے جو نیٹ ورکنگ کمانڈز کو انجام دیتا ہے ، جس سے یہ ایک توسیع پزیر حل بنتا ہے۔ یہ طریقہ خاص طور پر کارکن نوڈس کے ایک بڑے بیڑے کا انتظام کرتے وقت مفید ہے ، جہاں ہر نوڈ کو دستی طور پر تشکیل دینا غیر عملی ہوگا۔ تصور کریں کہ کلاؤڈ پر مبنی ایپلی کیشن کو کسی دوسرے سب نیٹ میں میزبانی کرنے والے لیگیسی ڈیٹا بیس تک رسائی کی ضرورت ہے۔ یہ سیٹ اپ ہموار رابطے کو یقینی بناتا ہے۔

آخر میں ، جانچ بہت ضروری ہے۔ فراہم کردہ اسکرپٹ ایک سادہ مصروف باکس پوڈ کو تعینات کرتا ہے جو بیرونی مشین کو پنگ دینے کی کوشش کرتا ہے۔ اگر پنگ کامیاب ہوجاتی ہے تو ، اس کی تصدیق ہوتی ہے کہ رابطے کی فکس کام کر رہی ہے۔ اس قسم کی حقیقی دنیا کی توثیق پیداواری ماحول میں انمول ہے ، جہاں ٹوٹے ہوئے نیٹ ورک کی تشکیل سے خدمت میں خلل پیدا ہوسکتا ہے۔ ان نقطہ نظر کو یکجا کرکے-نٹ ، جامد راستوں ، کبرنیٹس آٹومیشن ، اور براہ راست جانچ-ہم K3S کلسٹرز میں کراس نیٹ ورک تک رسائی کے لئے ایک مضبوط حل تیار کرتے ہیں۔ 🚀

K3s میں بیرونی نیٹ ورکس سے POD رابطے کو یقینی بنانا

پوڈ مواصلات کے لئے NAT کو تشکیل دینے کے لئے IPTABLES کا استعمال

#!/bin/bash
# Enable IP forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
# Add NAT rule to allow pods to access external networks
iptables -t nat -A POSTROUTING -s 10.42.0.0/16 -o eth0 -j MASQUERADE
# Persist iptables rule
iptables-save > /etc/iptables/rules.v4
# Restart networking service
systemctl restart networking

K3S پھلیوں کو روٹ انجیکشن کے ذریعے بیرونی سب نیٹٹس تک پہنچنے کی اجازت دینا

جامد راستوں اور CNI تشکیلات کا استعمال کرتے ہوئے

#!/bin/bash
# Add a static route to allow pods to reach 192.168.2.x
ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
# Verify the route
ip route show
# Make the route persistent
echo "192.168.2.0/24 via 192.168.1.1 dev eth0" >> /etc/network/interfaces
# Restart networking
systemctl restart networking

نیٹ ورک کے قواعد کو لاگو کرنے کے لئے کبرنیٹس ڈیمنسیٹ کا استعمال کرتے ہوئے

نوڈ نیٹ ورکنگ کو تشکیل دینے کے لئے کبرنیٹس ڈیمنسیٹ کی تعیناتی

apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: k3s-network-fix
spec:
  selector:
    matchLabels:
      app: network-fix
  template:
    metadata:
      labels:
        app: network-fix
    spec:
      hostNetwork: true
      containers:
      - name: network-fix
        image: alpine
        command: ["/bin/sh", "-c"]
        args:
        - "ip route add 192.168.2.0/24 via 192.168.1.1"
        securityContext:
          privileged: true

ایک پھلی سے نیٹ ورک کے رابطے کی جانچ کرنا

نیٹ ورک تک رسائی کی تصدیق کے لئے کبرنیٹس مصروف باکس پوڈ کا استعمال

apiVersion: v1
kind: Pod
metadata:
  name: network-test
spec:
  containers:
  - name: busybox
    image: busybox
    command: ["sh", "-c", "ping -c 4 192.168.2.10"]
  restartPolicy: Never

ملٹی سب نیٹ مواصلات کے لئے K3S نیٹ ورکنگ کو بہتر بنانا

ایک اہم لیکن اکثر نظرانداز پہلو پوڈ کنیکٹوٹی کے انتظام میں کنٹینر نیٹ ورک انٹرفیس (CNI) کا کردار ہے۔ پہلے سے طے شدہ طور پر ، K3S فلالین کو اپنے CNI کے طور پر استعمال کرتا ہے ، جو نیٹ ورکنگ کو آسان بناتا ہے لیکن شاید باکس سے باہر اعلی درجے کی روٹنگ کی حمایت نہیں کرسکتا ہے۔ ایسے معاملات میں جہاں پھندوں کو اپنے بنیادی سب نیٹ سے باہر وسائل تک رسائی حاصل کرنے کی ضرورت ہوتی ہے ، فلالین کو زیادہ خصوصیت سے مالا مال CNI جیسے کیلیکو یا سیلیم کی جگہ لینا اضافی لچک اور کسٹم روٹنگ کے اختیارات فراہم کرسکتا ہے۔

ایک اور اہم عنصر DNS ریزولوشن ہے۔ یہاں تک کہ اگر روٹنگ کو مناسب طریقے سے تشکیل دیا گیا ہے تو ، پھلیوں کو اب بھی غلط DNS ترتیبات کی وجہ سے بیرونی خدمات سے رابطہ قائم کرنے کی جدوجہد ہوسکتی ہے۔ کبرنیٹس عام طور پر کورڈنز پر انحصار کرتے ہیں ، جو بیرونی نیٹ ورکس سے میزبان ناموں کو خود بخود حل نہیں کرسکتے ہیں۔ کلسٹر کے اندر کسٹم DNS کی ترتیبات کی تشکیل دوسرے سب نیٹٹس میں پھلیوں اور مشینوں کے مابین ہموار مواصلات کو یقینی بنانے میں مدد فراہم کرسکتی ہے ، جس سے رسائ اور کارکردگی دونوں کو بہتر بنایا جاسکے۔

سلامتی کے تحفظات بھی کلیدی کردار ادا کرتے ہیں۔ جب مقامی نیٹ ورک سے آگے پی او ڈی تک رسائی میں توسیع کرتے ہو تو ، حساس وسائل کو بے نقاب کرنے سے بچنے کے لئے فائر وال کے قواعد اور نیٹ ورک کی پالیسیوں کو احتیاط سے ایڈجسٹ کیا جانا چاہئے۔ کبرنیٹس نیٹ ورک کی پالیسیاں پر عمل درآمد غیر ضروری ٹریفک کو محدود کرسکتا ہے جبکہ مطلوبہ رابطوں کی اجازت دیتا ہے۔ مثال کے طور پر ، کسی پوڈ میں چلنے والی ویب سروس کو ریموٹ ڈیٹا بیس تک رسائی کی ضرورت پڑسکتی ہے لیکن اس میں تمام بیرونی مشینوں تک غیر محدود رسائی نہیں ہونی چاہئے۔ ان پالیسیوں کا نظم و نسق سیکیورٹی کو مؤثر طریقے سے بڑھاتا ہے جبکہ مطلوبہ رابطے کو برقرار رکھتے ہیں۔ 🔐

  1. کارکن نوڈس بیرونی نیٹ ورکس تک کیوں رسائی حاصل کرسکتے ہیں ، لیکن پھلی نہیں کرسکتے ہیں؟
  2. پھلی داخلی استعمال کرتے ہیں نیٹ ورک ، میزبان کے نیٹ ورکنگ اسٹیک سے الگ ہے۔ پہلے سے طے شدہ طور پر ، وہ کارکن نوڈ کے جامد راستوں کے وارث نہیں ہوتے ہیں۔
  3. میں K3S پھلیوں کو بیرونی سب نیٹ تک رسائی حاصل کرنے کی اجازت کیسے دے سکتا ہوں؟
  4. آپ استعمال کرکے روٹنگ کے قواعد میں ترمیم کرسکتے ہیں یا مستحکم راستوں کے ساتھ شامل کریں بیرونی مشینوں کے ساتھ پوڈ مواصلات کو قابل بنانے کے ل .۔
  5. کیا فلالین کراس سب نیٹ روٹنگ کی حمایت کرتا ہے؟
  6. نہیں ، فلالین ڈیفالٹ کے لحاظ سے ایڈوانس روٹنگ فراہم نہیں کرتا ہے۔ اسے کیلیکو یا سیلیم سے تبدیل کرنا نیٹ ورک کی پالیسیوں اور راستوں پر زیادہ کنٹرول پیش کرتا ہے۔
  7. کیا کبرنیٹس نیٹ ورک کی پالیسیاں بیرونی رسائی کو سنبھالنے میں مدد کرسکتی ہیں؟
  8. ہاں ، وہ آپ کو ان قواعد کی وضاحت کرنے کی اجازت دیتے ہیں جن کے لئے پوڈ بیرونی خدمات کے ساتھ بات چیت کرسکتے ہیں ، سیکیورٹی اور رابطے کو بہتر بناتے ہیں۔
  9. اگر کوئی پوڈ بیرونی مشین تک پہنچ سکتا ہے تو جانچنے کا بہترین طریقہ کیا ہے؟
  10. ایک عارضی پوڈ کا استعمال کرتے ہوئے تعینات کریں مصروف باکس جیسی شبیہہ کے ساتھ ، پھر استعمال کریں یا رابطے کی جانچ پڑتال کے لئے پھلی کے اندر۔

کبرنیٹس پوڈ کنیکٹیویٹی کو بڑھانا

کراس سب نیٹ تک رسائی کی تائید کے لئے کے 3 ایس نیٹ ورکنگ کی تشکیل کے لئے روٹنگ کی حکمت عملیوں ، فائر وال ایڈجسٹمنٹ ، اور کبرنیٹس نیٹ ورک کی پالیسیوں کا مرکب درکار ہے۔ چاہے آئی پی ٹی ایبل ، جامد راستوں ، یا ایک اعلی درجے کی سی این آئی کا استعمال کرتے ہوئے ، یہ سمجھنا کہ کس طرح پی او ڈی کس طرح بات چیت کرتے ہیں ان مسائل کو موثر انداز میں حل کرنے کی کلید ہے۔ یہ حل اس بات کو یقینی بناتے ہیں کہ کبرنیٹس کی تعیناتی نیٹ ورکنگ رکاوٹوں کے بغیر پیمائش کرسکتی ہے۔

جانچ اور توثیق اتنا ہی اہم ہے جتنا عمل درآمد۔ براہ راست نیٹ ورک ٹیسٹنگ کے لئے مصروف باکس جیسے ٹولز کا استعمال رابطے کی اصلاحات کی تصدیق میں مدد کرتا ہے۔ ایک اچھی طرح سے بہتر نیٹ ورک سیٹ اپ نہ صرف کارکردگی کو بہتر بناتا ہے بلکہ سیکیورٹی کو بھی تقویت دیتا ہے۔ مناسب ترتیب کے ساتھ ، K3S کلسٹر بغیر کسی رکاوٹ کے بیرونی نظاموں سے رابطہ قائم کرسکتے ہیں ، جس سے تعیناتی زیادہ ورسٹائل ہوسکتی ہے۔ 🔧

  1. کے 3 ایس نیٹ ورکنگ پر سرکاری رینچر دستاویزات: رنچر K3S نیٹ ورکنگ
  2. نیٹ ورک کی پالیسیوں سے متعلق کبرنیٹس آفیشل گائیڈ: کبرنیٹس نیٹ ورک کی پالیسیاں
  3. اعلی درجے کی کبرنیٹس نیٹ ورکنگ کے لئے کیلیکو سی این آئی: پروجیکٹ کالیکو
  4. لینکس iptables اور روٹنگ بہترین طریقوں: نیٹ فلٹر/iptables Howto
  5. کوبرنیٹس پوڈ نیٹ ورکنگ کو سمجھنا: CNCF Kubernetes نیٹ ورکنگ 101
  1. پوڈ سے عام نیٹ ورک مواصلات کو سمجھنے کے لئے آفیشل کبرنیٹس نیٹ ورکنگ دستاویزات: کبرنیٹس نیٹ ورکنگ .
  2. K3S نیٹ ورکنگ کی تشکیل اور رابطے کے مسائل کو خراب کرنے کے بارے میں رنچر کی آفیشل گائیڈ: رنچر K3S نیٹ ورکنگ .
  3. کبرنیٹس کے لئے کالیکو کے جدید نیٹ ورکنگ حل ، بشمول کراس سب نیٹ روٹنگ: کیلیکو نیٹ ورکنگ .
  4. ڈیفالٹ K3S نیٹ ورکنگ سلوک کو سمجھنے کے لئے فلالین دستاویزات: فلالین گٹ ہب .
  5. کارکن نوڈس سے آگے پوڈ تک رسائی کو بڑھانے کے لئے لینکس iptables اور روٹنگ کنفیگریشن: Iptables آرچ وکی .