BumbleBee, eBPF कार्यक्रमों के निर्माण और वितरण को सरल बनाने के लिए एक उत्कृष्ट परियोजना

सोलो.आईओ, क्लाउड कंप्यूटिंग कंपनी, माइक्रोसर्विसेज, सैंडबॉक्स और सर्वर रहित, ओपन सोर्स प्रोजेक्ट "बम्बलबी" का अनावरण किया. नया प्रोजेक्ट डेवलपर के अनुभव को आसान बनाता है eBPF टूल बनाने, पैकेज करने और वितरित करने के लिएसोलो के अनुसार।

भंवरा स्वचालित रूप से एक उपयोगकर्ता स्थान कोड उत्पन्न करें ईबीपीएफ उपकरण विकसित करने के लिए दोहराव, कंपनी ने समझाया। यह डॉकर जैसा अनुभव भी प्रदान करता है ईबीपीएफ कार्यक्रम को पैकेज करने के लिए। यह आपको प्रकाशन और वितरण के लिए अन्य OCI छवि वर्कफ़्लो से कनेक्ट करने की अनुमति देता है।

BumbleBee के बारे में

भंवरा eBPF प्रोग्राम को कंटेनर इमेज के रूप में पैकेज करना संभव बनाता है ओपन कंटेनर इनिशिएटिव (ओसीआई) जिसे किसी भी सिस्टम पर चलाया जा सकता है अतिरिक्त घटकों को पुन: संकलित या उपयोग किए बिना उपयोगकर्ता स्थान में।

कर्नेल में eBPF कोड के साथ इंटरेक्शन, eBPF प्रोसेसर से आने वाले डेटा के प्रसंस्करण सहित, BumbleBee द्वारा नियंत्रित किया जाता है, जो स्वचालित रूप से इस डेटा को मेट्रिक्स, हिस्टोग्राम या लॉग के रूप में निर्यात करता है, जिसे एक्सेस किया जा सकता है, उदाहरण के लिए, उपयोग करके कर्ल उपयोगिता। प्रस्तावित दृष्टिकोण डेवलपर को eBPF कोड लिखने पर ध्यान केंद्रित करने की अनुमति देता है और उपयोगकर्ता स्थान, असेंबली, और कर्नेल में लोड करने से इस कोड के साथ बातचीत को व्यवस्थित करके विचलित न हों।

Solo.io के सीईओ, इदित लेविन कहते हैं कि:

कंपनी ने बम्बलबी को स्वचालित रूप से दोहराए जाने वाले उपयोगकर्ता-स्पेस कोड को उत्पन्न करने के लिए विकसित किया है जो कर्नेल स्तर पर चलने वाली ईबीपीएफ प्रौद्योगिकियों तक पहुंचने के लिए आवश्यक है। BumbleBee में एक कमांड लाइन इंटरफ़ेस (CLI) शामिल है जो स्वचालित रूप से लॉग, मेट्रिक्स और हिस्टोग्राम जैसे मानचित्रों को उजागर करके eBPF प्रोग्राम के लिए उपयोगकर्ता स्थान कोड उत्पन्न करता है।

ईबीपीएफ कार्यक्रमों का प्रबंधन करने के लिए, एक डॉकर-शैली "मधुमक्खी" उपयोगिता प्रदान की जाती है, जिसके साथ आप तुरंत eBPF ड्राइवर डाउनलोड कर सकते हैं एक बाहरी भंडार से ब्याज की और इसे स्थानीय प्रणाली पर चलाएं।

टूलकिट आपको किसी चयनित विषय के लिए eBPF ड्राइवरों के लिए C कोड फ़्रेम जेनरेट करने की अनुमति देता है (वर्तमान में केवल फ़ाइल और नेटवर्क ड्राइवर जो नेटवर्क स्टैक कॉल और फ़ाइल सिस्टम को इंटरसेप्ट करते हैं, समर्थित हैं)। जेनरेट किए गए ढांचे के आधार पर, डेवलपर उस कार्यक्षमता को जल्दी से कार्यान्वित कर सकता है जो उसे रूचि देता है।

बीसीसी (बीपीएफ कंपाइलर कलेक्शन) के विपरीत, BumbleBee प्रत्येक कर्नेल संस्करण के लिए ड्राइवर कोड का पूरी तरह से पुनर्निर्माण नहीं करता है लिनक्स (बीसीसी हर बार ईबीपीएफ प्रोग्राम चलाने पर क्लैंग के साथ संकलन का उपयोग करता है)।

पोर्टेबिलिटी मुद्दों को हल करने के लिए, विकसित हो रहे हैं टूल किट CO-RE और libbpf, जो आपको केवल एक बार कोड संकलित करने की अनुमति देते हैं और एक विशेष सार्वभौमिक लोडर का उपयोग करें जो लोड किए गए प्रोग्राम को वर्तमान कर्नेल और बीटीएफ प्रकार (बीपीएफ प्रकार प्रारूप) में अनुकूलित करता है।

BumbleBee libbpf के शीर्ष पर एक प्लग-इन है और मानक रिंगबफ़र और हैश मैप eBPF मानचित्र संरचनाओं में रखे गए डेटा की स्वचालित व्याख्या और विज़ुअलाइज़ेशन के लिए अतिरिक्त प्रकार प्रदान करता है।

अंतिम eBPF प्रोग्राम बनाने और इसे OCI इमेज के रूप में सहेजने के लिए, बस कमांड चलाएँ:

bee build file_with_code name:version

और कमांड चलाएँ

bee run name:version

डिफ़ॉल्ट रूप से, नियंत्रक से प्राप्त घटनाओं को टर्मिनल विंडो में प्रदर्शित किया जाएगा, लेकिन यदि आवश्यक हो, तो आप नियंत्रक से बंधे नेटवर्क पोर्ट पर कर्ल या wget उपयोगिताओं को कॉल करके डेटा प्राप्त कर सकते हैं।

ड्राइवरों को OCI अनुरूप रिपॉजिटरी के माध्यम से वितरित किया जा सकता है, उदाहरण के लिए, ghcr.io रिपॉजिटरी (GitHub कंटेनर रजिस्ट्री) से बाहरी ड्राइवर चलाने के लिए, आप कमांड चला सकते हैं

bee run ghcr.io/solo-io/bumblebee/tcpconnect:$(bee version)

नियंत्रक को रिपॉजिटरी में रखने के लिए, कमांड की पेशकश की जाती है

bee push

और संस्करण को लिंक करने के लिए

bee tag

eBPF का सबसे बड़ा लाभ केवल कार्यकुशलता है। सुरक्षा, नेटवर्किंग और भंडारण प्लेटफार्मों के लिए प्रसंस्करण की कुल लागत कम होनी चाहिए क्योंकि अधिक विक्रेता उनकी क्षमताओं का लाभ उठाते हैं। 

अब, eBPF का व्यापक रूप से क्लाउड सेवा प्रदाताओं जैसी वेब-स्तरीय कंपनियों द्वारा उपयोग किया जाता है। फेसबुक इसे अपने डेटा केंद्रों में प्राथमिक सॉफ्टवेयर-परिभाषित लोड बैलेंसर के रूप में उपयोग कर रहा है, जबकि Google अपने कुबेरनेट्स प्रबंधित प्रसाद के भीतर ओपन सोर्स सिलियम नेटवर्किंग सॉफ्टवेयर का उपयोग कर रहा है। 

हालांकि, आगे बढ़ते हुए, लेविन का कहना है कि अब यह केवल कुछ समय पहले की बात है जब eBPF अधिक व्यापक रूप से अपनाया जाता है क्योंकि अधिक ऑपरेटिंग सिस्टम क्षमता को सक्षम करते हैं।

अंत में यदि आप इसके बारे में अधिक जानना चाहते हैं, आप विवरण की जांच कर सकते हैं निम्नलिखित लिंक में


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: एबी इंटरनेट नेटवर्क 2008 SL
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।