پرو هوسٽر > بلاگ > انتظاميه > 10G نيٽ ورڪ تي ڪبرنيٽس لاءِ CNI ڪارڪردگي جو جائزو (آگسٽ 2020)
10G نيٽ ورڪ تي ڪبرنيٽس لاءِ CNI ڪارڪردگي جو جائزو (آگسٽ 2020)
TL، ڊاڪٽر: سڀ CNIs ڪم ڪن جيئن انھن کي گھرجي، سواءِ Kube-Router ۽ Kube-OVN، Calico، سواءِ خودڪار MTU جي چڪاس جي، بھترين آھي.
منهنجي ماضي جي چڪاس جي آرٽيڪل-اپڊيٽ (2018 и 2019)، جانچ جي وقت ۾ آئون ڪبرنيٽس 1.19 استعمال ڪري رهيو آهيان Ubuntu 18.04 تي آگسٽ 2020 تائين اپڊيٽ ٿيل CNIs سان.
ان کان اڳ جو اسان ميٽرڪ ۾ وڃون...
اپريل 2019 کان نئون ڇا آهي؟
توهان جي پنهنجي ڪلستر تي ٽيسٽ ڪري سگهو ٿا: توهان اسان جي اوزار کي استعمال ڪندي پنهنجي ڪلستر تي ٽيسٽ هلائي سگهو ٿا ڪبرنيٽس نيٽورڪ بينچ مارڪ: knb
نئون منظرنامو: موجوده چيڪ هلندا آهن "Pod-to-Pod" نيٽ ورڪ ڪارڪردگي جا امتحان، ۽ هڪ نئون "Pod-to-Service" اسڪرپٽ شامل ڪيو ويو آهي جيڪو حقيقي دنيا جي حالتن جي ويجهو ٽيسٽ هلائي ٿو. عملي طور تي، توهان جو Pod with API بنيادي طور تي خدمت جي طور تي ڪم ڪري ٿو، ۽ نه Pod ip ايڊريس ذريعي (يقيناً اسان ٻنهي منظرنامي لاءِ TCP ۽ UDP ٻنهي کي چيڪ ڪريون ٿا).
وسيلن جو استعمال: هر ٽيسٽ هاڻي پنهنجي وسيلن جي مقابلي ۾ آهي
ايپليڪيشن ٽيسٽ کي هٽائڻ: اسان هاڻي HTTP، FTP ۽ SCP ٽيسٽ نه ڪندا آهيون جيئن اسان جي ڪميونٽي ۽ CNI سنڀاليندڙن سان اسان جي فائدي وارو تعاون CNI جي شروعات ۾ دير ٿيڻ جي ڪري Iperf نتيجن جي وچ ۾ TCP ۽ curl جي نتيجن جي وچ ۾ هڪ فرق دريافت ڪيو آهي (Pod جا پهريان ڪجهه سيڪنڊ شروعاتي، جيڪو حقيقي حالتن ۾ عام ناهي).
سڀ کان پهريان، اسان TCP ڪارڪردگي تي خودڪار MTU ڳولڻ جو اثر چيڪ ڪريون ٿا:
TCP ڪارڪردگي تي MTU جو اثر
UDP استعمال ڪرڻ وقت اڃا به وڏو خال ملي ٿو:
UDP ڪارڪردگي تي MTU جو اثر
ٽيسٽن ۾ ظاهر ڪيل وڏي ڪارڪردگيءَ جي اثر کي نظر ۾ رکندي، اسان سڀني CNI سنڀاليندڙن کي اميد جو خط موڪلڻ چاهيون ٿا: مھرباني ڪري CNI ۾ خودڪار MTU سڃاڻپ شامل ڪريو. توھان بچائيندؤ ڪتن، يوني ڪورن ۽ حتي سڀ کان پيارو: ننڍڙو ديوپ.
تنهن هوندي، جيڪڏهن توهان کي استعمال ڪرڻ جي ضرورت آهي CNI بغير خودڪار MTU ڳولڻ جي مدد لاء، توهان ڪارڪردگي حاصل ڪرڻ لاء دستي طور تي ترتيب ڏئي سگهو ٿا. مهرباني ڪري نوٽ ڪريو ته اهو Calico، Canal ۽ WeaveNet تي لاڳو ٿئي ٿو.
منهنجي ننڍڙي گذارش آهي ساڻن گڏ آيل CNIs کي...
CNI جاچ: خام ڊيٽا
هن حصي ۾، اسان CNI کي درست MTU سان گڏ ڪنداسين (خودڪار طور تي مقرر ڪيل يا دستي طور تي مقرر ڪيل). هتي بنيادي مقصد گرافس ۾ خام ڊيٽا ڏيکارڻ آهي.
رنگ جي روايت:
سرمائي - نموني (يعني ننگي لوھ)
سائو - بينڊوڊٿ 9500 Mbps کان مٿي
پيلو - بينڊوڊٿ 9000 Mbps کان مٿي
نارنگي - بينڊوڊٿ 8000 Mbps کان مٿي
ڳاڙهو - 8000 Mbps کان هيٺ بينڊوڊٿ
نيرو - غير جانبدار (بينڊوڊٿ سان لاڳاپيل ناهي)
نه لوڊ وسيلن جي واپرائڻ
سڀ کان پهريان، وسيلن جي استعمال کي چيڪ ڪريو جڏهن ڪلستر "سمهڻ" آهي.
نه لوڊ وسيلن جي واپرائڻ
پوڊ کان پوڊ
اهو منظر فرض ڪري ٿو ته ڪلائنٽ پوڊ سڌو سنئون سرور پوڊ سان ڳنڍيندو آهي ان جي IP پتي کي استعمال ڪندي.
پوڊ کان پوڊ منظر
ٽي پي
Pod-to-Pod TCP نتيجا ۽ لاڳاپيل وسيلن جو استعمال:
يو ايس پي
Pod-to-Pod UDP نتيجا ۽ لاڳاپيل وسيلن جو استعمال:
Pod-to-service
هي سيڪشن حقيقي استعمال جي ڪيسن لاءِ لاڳاپيل آهي، ڪلائنٽ پوڊ ڪلسٽرپ سروس ذريعي سرور پوڊ سان ڳنڍي ٿو.
Pod-to-Service Script
ٽي پي
Pod-to-Service TCP نتيجا ۽ لاڳاپيل وسيلن جو استعمال:
يو ايس پي
Pod-to-Service UDP نتيجا ۽ لاڳاپيل وسيلن جو استعمال:
نيٽ ورڪ پاليسي جي حمايت
مٿين سڀني مان، صرف هڪ جيڪو سياست جي حمايت نٿو ڪري، فلانيل آهي. ٻيا سڀئي صحيح طريقي سان نيٽ ورڪ پاليسين تي عمل ڪن ٿا، بشمول انبائونڊ ۽ آئوٽ بائونڊ. تمام سٺو ڪم!
CNI انڪرپشن
چڪاس ٿيل CNIs ۾ اھي آھن جيڪي پوڊ جي وچ ۾ نيٽ ورڪ ايڪسچينج کي انڪرپٽ ڪري سگھن ٿا:
هن حصي ۾، اسان استعمال ڪيل وسيلن جو جائزو وٺنداسين جڏهن پروسيسنگ پوڊ کان پوڊ ڪميونيڪيشن TCP ۽ UDP ۾. Pod-to-Service گراف ڊرائنگ ڪرڻ ۾ ڪو به مقصد ناهي ڇو ته اهو اضافي معلومات مهيا نٿو ڪري.
اهو سڀ ڪجهه گڏ ڪرڻ
اچو ته سڀني گرافن کي ورجائڻ جي ڪوشش ڪريون، اسان هتي ٿورو ذرو ذوق متعارف ڪرايو، اصل قدرن کي لفظن سان بدلائي ”vwry fast“، ”low“ وغيره.
نتيجو ۽ منهنجو نتيجو
اهو ٿورڙو موضوعي آهي، ڇاڪاڻ ته مان نتيجن جي پنهنجي تشريح کي پهچائي رهيو آهيان.
مون کي خوشي آهي ته نوان CNIs ظاهر ٿيا، Antrea چڱيءَ طرح پرفارم ڪيو، ڪيترن ئي ڪمن تي عمل ڪيو ويو جيتوڻيڪ ابتدائي ورزن ۾: خودڪار MTU جي چڪاس، انڪرپشن ۽ آسان تنصيب.
جيڪڏهن اسان ڪارڪردگي جو مقابلو ڪريون ٿا، سڀ CNIs چڱي طرح ڪم ڪن ٿا، سواء Kube-OVN ۽ Kube-Router. ڪوبي روٽر پڻ MTU کي ڳولڻ ۾ ناڪام ٿي ويو، مون کي دستاويزن ۾ ڪٿي به ان کي ترتيب ڏيڻ جو طريقو نه مليو (هتي هن موضوع تي هڪ درخواست کليل آهي).
وسيلن جي استعمال جي لحاظ کان، Cilium اڃا تائين ٻين جي ڀيٽ ۾ وڌيڪ ريم استعمال ڪري ٿو، پر ٺاهيندڙ واضح طور تي وڏي ڪلستر کي نشانو بڻائيندو آهي، جيڪو واضح طور تي ٽي نوڊ ڪلستر تي ٽيسٽ وانگر ناهي. Kube-OVN پڻ سي پي يو ۽ رام وسيلن جو تمام گهڻو استعمال ڪري ٿو، پر اهو هڪ نوجوان CNI آهي جيڪو Open vSwitch تي ٻڌل آهي (جهڙوڪ Antrea، اهو بهتر ڪم ڪري ٿو ۽ گهٽ استعمال ڪري ٿو).
فلانيل کانسواءِ هر ڪنهن وٽ نيٽ ورڪ پاليسيون آهن. اهو تمام گهڻو امڪان آهي ته هو ڪڏهن به انهن جي حمايت نه ڪندو، ڇو ته مقصد هڪ ٻاڦ واري ٽرپ کان وڌيڪ آسان آهي: روشن، بهتر.
انهي سان گڏ، ٻين شين جي وچ ۾، انڪرپشن ڪارڪردگي حيرت انگيز آهي. Calico هڪ پراڻي ترين CNIs مان هڪ آهي، پر انڪوشن صرف ٻه هفتا اڳ شامل ڪيو ويو. انهن IPsec جي بدران وائر گارڊ چونڊيو، ۽ آسانيء سان، اهو ڪم ڪري ٿو عظيم ۽ حيرت انگيز، مڪمل طور تي جانچ جي هن حصي ۾ ٻين CNIs کي ختم ڪري ٿو. يقينن، وسيلن جو استعمال انڪريپشن جي ڪري وڌي ٿو، پر حاصل ڪيل ٽريپٽ ان جي قابل آهي (ڪيليڪو Cilium جي مقابلي ۾ انڪريپشن ٽيسٽ ۾ ڇهه ڀيرا بهتري ڏيکاري، جيڪو ٻيو نمبر آهي). ان کان علاوه، توھان چالو ڪري سگھو ٿا وائر گارڊ کي چالو ڪرڻ کان پوءِ توھان ڪيليڪو کي ڪلستر تي مقرر ڪرڻ کان پوءِ، ۽ توھان ان کي ٿوري وقت لاءِ يا مستقل طور تي بند ڪري سگھوٿا جيڪڏھن توھان چاھيو. اهو ناقابل يقين حد تائين آسان آهي، جيتوڻيڪ! اسان توهان کي ياد ڏياريون ٿا ته Calico في الحال MTU خودڪار نه ڳولي ٿو (هي فيچر مستقبل جي ورزن لاءِ منصوبابندي ڪئي وئي آهي)، تنهن ڪري MTU کي ترتيب ڏيڻ جي پڪ ڪريو جيڪڏهن توهان جو نيٽ ورڪ جمبو فريمز (MTU 9000) کي سپورٽ ڪري ٿو.
ٻين شين جي وچ ۾، نوٽ ڪريو ته Cilium ڪلستر نوڊس جي وچ ۾ ٽرئفڪ کي انڪوڊ ڪري سگھي ٿو (۽ نه رڳو پوڊ جي وچ ۾)، جيڪو عوامي ڪلستر نوڊس لاء تمام ضروري ٿي سگھي ٿو.
نتيجي طور، آئون هيٺين استعمال جي ڪيسن جي صلاح ڪريان ٿو:
هڪ تمام ننڍڙي ڪلستر لاءِ CNI جي ضرورت آهي يا مون کي سيڪيورٽي جي ضرورت ناهي: ڪم ڪرڻ فلاليلسڀ کان وڌيڪ هلڪو ۽ مستحڪم CNI (هو پڻ قديم ترين ماڻهن مان هڪ آهي، ڏند ڪٿا موجب هو هومو ڪبرناٽس يا هومو ڪنٽيٽورس ايجاد ڪيو هو.). توهان شايد دلچسپي وٺن ٿا سڀ کان وڌيڪ ذهين منصوبي ۾ ڪي 3ا، چيڪ!
هڪ باقاعده ڪلستر لاء CNI جي ضرورت آهي: ڪيليڪو - توهان جي پسند، پر جيڪڏهن ضرورت هجي ته MTU ترتيب ڏيڻ نه وساريو. توھان آساني سان ۽ قدرتي طور نيٽ ورڪ پاليسين سان راند ڪري سگھو ٿا، انڪرپشن کي آن ۽ آف ڪري سگھو ٿا، وغيره.
(تمام) وڏي پيماني تي ڪلسٽر لاءِ CNI جي ضرورت آھي: خير، ٽيسٽ وڏي ڪلستر جي رويي کي ظاهر نٿو ڪري، مون کي ٽيسٽ ڪرڻ ۾ خوشي ٿيندي، پر اسان وٽ 10Gbps ڪنيڪشن سان سوين سرور نه آهن. تنهن ڪري بهترين اختيار توهان جي نوڊس تي تبديل ٿيل ٽيسٽ هلائڻ آهي، گهٽ ۾ گهٽ ڪيليڪو ۽ ڪيليم سان.