इस पोस्ट में, हम प्रदर्शित करते हैं एडब्ल्यूएस पर क्यूबफ्लो (क्यूबफ्लो का एक एडब्ल्यूएस-विशिष्ट वितरण) और अत्यधिक अनुकूलित, क्लाउड-नेटिव, एंटरप्राइज-रेडी एडब्ल्यूएस सेवाओं के एकीकरण के माध्यम से ओपन-सोर्स क्यूबफ्लो पर जो मूल्य जोड़ता है।
Kubeflow एक ओपन-सोर्स मशीन लर्निंग (ML) प्लेटफ़ॉर्म है जो Kubernetes पर ML वर्कफ़्लोज़ को सरल, पोर्टेबल और स्केलेबल बनाने के लिए समर्पित है। Kubeflow एक केंद्रीय डैशबोर्ड, बहु-उपयोगकर्ता Jupyter नोटबुक, Kubeflow पाइपलाइन, KFServing, और Katib सहित कई घटक प्रदान करता है, साथ ही साथ TensorFlow, PyTorch, MXNet, और XGBoost के लिए वितरित प्रशिक्षण ऑपरेटरों को सरल, स्केलेबल और पोर्टेबल ML वर्कफ़्लोज़ बनाने के लिए प्रदान करता है। .
AWS ने हाल ही में Kubeflow v1.4 को अपने स्वयं के Kubeflow वितरण (AWS पर Kubeflow कहा जाता है) के हिस्से के रूप में लॉन्च किया, जो डेटा विज्ञान कार्यों को सुव्यवस्थित करता है और AWS प्रबंधित सेवाओं के साथ एकीकरण के माध्यम से कम परिचालन ओवरहेड्स के साथ अत्यधिक विश्वसनीय, सुरक्षित, पोर्टेबल और स्केलेबल ML सिस्टम बनाने में मदद करता है। . आप इस Kubeflow वितरण का उपयोग शीर्ष पर ML सिस्टम बनाने के लिए कर सकते हैं अमेज़ॅन इलास्टिक कुबेरनेट्स सेवा (अमेज़ॅन ईकेएस) कंप्यूटर दृष्टि, प्राकृतिक भाषा प्रसंस्करण, भाषण अनुवाद और वित्तीय मॉडलिंग सहित विभिन्न प्रकार के उपयोग के मामलों के लिए एमएल मॉडल बनाने, प्रशिक्षित करने, ट्यून करने और तैनात करने के लिए।
ओपन-सोर्स क्यूबफ्लो के साथ चुनौतियां
जब आप एक ओपन-सोर्स Kubeflow प्रोजेक्ट का उपयोग करते हैं, तो यह Kubernetes वर्कर नोड्स पर सभी Kubeflow कंट्रोल प्लेन और डेटा प्लेन घटकों को तैनात करता है। Kubeflow घटक सेवाओं को Kubeflow नियंत्रण विमान के हिस्से के रूप में तैनात किया जाता है, और Jupyter, मॉडल प्रशिक्षण, ट्यूनिंग और होस्टिंग से संबंधित सभी संसाधन परिनियोजन Kubeflow डेटा प्लेन पर तैनात किए जाते हैं। Kubeflow कंट्रोल प्लेन और डेटा प्लेन एक ही या अलग Kubernetes वर्कर नोड्स पर चल सकते हैं। यह पोस्ट क्यूबफ्लो कंट्रोल प्लेन घटकों पर केंद्रित है, जैसा कि निम्नलिखित आरेख में दिखाया गया है।
यह परिनियोजन मॉडल निम्न कारणों से उद्यम-तैयार अनुभव प्रदान नहीं कर सकता है:
- डेटाबेस, भंडारण और प्रमाणीकरण सहित सभी Kubeflow नियंत्रण विमान भारी भारोत्तोलन अवसंरचना घटक, Kubernetes क्लस्टर कार्यकर्ता नोड में ही तैनात हैं। यह वर्कर नोड के विफल होने की स्थिति में अत्यधिक उपलब्ध Kubeflow कंट्रोल प्लेन डिज़ाइन आर्किटेक्चर को लगातार स्थिति के साथ लागू करना चुनौतीपूर्ण बनाता है।
- Kubeflow कंट्रोल प्लेन जनित कलाकृतियाँ (जैसे MySQL इंस्टेंस, पॉड लॉग, या मिनिओ स्टोरेज) समय के साथ बढ़ती हैं और बढ़ती स्टोरेज की मांग को पूरा करने के लिए निरंतर निगरानी क्षमताओं के साथ आकार बदलने योग्य स्टोरेज वॉल्यूम की आवश्यकता होती है। क्योंकि Kubeflow नियंत्रण विमान Kubeflow डेटा प्लेन वर्कलोड (उदाहरण के लिए, प्रशिक्षण कार्य, पाइपलाइन और परिनियोजन के लिए) के साथ संसाधनों को साझा करता है, कुबेरनेट क्लस्टर और स्टोरेज वॉल्यूम को सही आकार देना और स्केल करना चुनौतीपूर्ण हो सकता है और इसके परिणामस्वरूप परिचालन लागत में वृद्धि हो सकती है।
- Kubernetes लॉग फ़ाइल के आकार को प्रतिबंधित करता है, जिसमें अधिकांश इंस्टॉलेशन 10 एमबी की नवीनतम सीमा रखते हैं। डिफ़ॉल्ट रूप से, पॉड लॉग इस ऊपरी सीमा तक पहुँचने के बाद अप्राप्य हो जाते हैं। यदि पॉड्स को हटा दिया जाता है, क्रैश कर दिया जाता है, हटा दिया जाता है, या एक अलग नोड पर शेड्यूल किया जाता है, तो लॉग भी अप्राप्य हो सकते हैं, जो आपके एप्लिकेशन लॉग उपलब्धता और निगरानी क्षमताओं को प्रभावित कर सकता है।
एडब्ल्यूएस पर क्यूबफ्लो
एडब्ल्यूएस पर क्यूबफ्लो निम्नलिखित एडब्ल्यूएस सेवाओं के साथ क्यूबफ्लो का उपयोग करने के लिए एक स्पष्ट मार्ग प्रदान करता है:
- आवेदन लोड Balancer HTTPS पर सुरक्षित बाहरी यातायात प्रबंधन के लिए
- अमेज़ॅन क्लाउडवॉच लगातार लॉग प्रबंधन के लिए
- AWS कॉग्निटो ट्रांसपोर्ट लेयर सिक्योरिटी (TLS) के साथ उपयोगकर्ता प्रमाणीकरण के लिए
- AWS डीप लर्निंग कंटेनर अत्यधिक अनुकूलित जुपिटर नोटबुक सर्वर छवियों के लिए
- अमेज़ॅन इलास्टिक फ़ाइल सिस्टम (अमेज़ॅन ईएफएस) या चमक के लिए अमेज़न FSx प्रशिक्षण प्रदर्शन में वृद्धि के लिए एक सरल, स्केलेबल और सर्वर रहित फ़ाइल भंडारण समाधान के लिए
- प्रबंधित Kubernetes समूहों के लिए Amazon EKS
- अमेज़न रिलेशनल डेटाबेस सर्विस (अमेज़ॅन आरडीएस) अत्यधिक स्केलेबल पाइपलाइनों और मेटाडेटा स्टोर के लिए
- AWS राज प्रबंधक आपके एप्लिकेशन तक पहुंचने के लिए आवश्यक रहस्यों की सुरक्षा के लिए
- अमेज़न सरल भंडारण सेवा (अमेज़ॅन S3) उपयोग में आसान पाइपलाइन कलाकृतियों के स्टोर के लिए
Kubeflow के साथ ये AWS सेवा एकीकरण (जैसा कि निम्नलिखित आरेख में दिखाया गया है) हमें Kubernetes से Kubeflow नियंत्रण विमान के महत्वपूर्ण भागों को अलग करने की अनुमति देता है, एक सुरक्षित, स्केलेबल, लचीला और लागत-अनुकूलित डिज़ाइन प्रदान करता है।
आइए प्रत्येक सेवा एकीकरण के लाभों और सुरक्षा के आसपास उनके समाधान, एमएल पाइपलाइन चलाने और भंडारण पर चर्चा करें।
Amazon Cognito के साथ Kubeflow उपयोगकर्ताओं का सुरक्षित प्रमाणीकरण
AWS पर क्लाउड सुरक्षा सर्वोच्च प्राथमिकता है, और हम Kubeflow सुरक्षा को सीधे AWS साझा-जिम्मेदारी सुरक्षा सेवाओं में एकीकृत करने में निवेश कर रहे हैं, जैसे कि निम्नलिखित:
- बाहरी यातायात प्रबंधन के लिए एप्लिकेशन लोड बैलेंसर (ALB)
- AWS प्रमाणपत्र प्रबंधक (एसीएम) टीएलएस का समर्थन करने के लिए
- सेवा खातों के लिए IAM भूमिकाएँ (IRSA) कुबेरनेट्स पॉड स्तर पर सुक्ष्म अभिगम नियंत्रण के लिए
- AWS प्रमुख प्रबंधन सेवा (एडब्ल्यूएस केएमएस) डेटा एन्क्रिप्शन कुंजी प्रबंधन के लिए
- AWS शील्ड डीडीओएस सुरक्षा के लिए
इस खंड में, हम Amazon Cognito के साथ AWS Kubeflow कंट्रोल प्लेन इंटीग्रेशन पर ध्यान केंद्रित करते हैं। अमेज़ॅन कॉग्निटो उपयोगकर्ता प्रमाणीकरण के लिए एक देशी डेक्स (ओपन-सोर्स ओपनआईडी कनेक्ट (ओआईडीसी) प्रदाता स्थानीय एलडीएपी द्वारा समर्थित) समाधान के प्रबंधन और रखरखाव की आवश्यकता को हटा देता है और गुप्त प्रबंधन को आसान बनाता है।
आप उपयोगकर्ता साइन-अप, साइन-इन और एक्सेस कंट्रोल को अपने Kubeflow UI में जल्दी और आसानी से जोड़ने के लिए Amazon Cognito का भी उपयोग कर सकते हैं। Amazon Cognito लाखों उपयोगकर्ताओं तक पहुंचता है और सामाजिक पहचान प्रदाताओं (IdPs), जैसे Facebook, Google और Amazon, और SAML 2.0 के माध्यम से एंटरप्राइज़ IdPs के साथ साइन-इन का समर्थन करता है। यह आपके Kubeflow सेटअप में जटिलता को कम करता है, जिससे यह बहु-उपयोगकर्ता अलगाव को प्राप्त करने के लिए परिचालन रूप से दुबला और संचालित करने में आसान हो जाता है।
आइए अमेज़ॅन कॉग्निटो, एएलबी और एडब्ल्यूएस पर क्यूबफ्लो के साथ एसीएम एकीकरण के साथ एक बहु-उपयोगकर्ता प्रमाणीकरण प्रवाह को देखें। इस एकीकरण के हिस्से के रूप में कई प्रमुख घटक हैं। Amazon Cognito को उपयोगकर्ता प्रमाणीकरण के बाद Kubeflow के अनुरोध को रूट करने के लिए कॉन्फ़िगर किए गए प्रमाणीकरण कॉलबैक के साथ एक IdP के रूप में कॉन्फ़िगर किया गया है। Kubeflow सेटअप के हिस्से के रूप में, Kubernetes प्रवेश संसाधन इस्तियो गेटवे सेवा के बाहरी ट्रैफ़िक को प्रबंधित करने के लिए बनाया गया है। एडब्ल्यूएस एएलबी इनग्रेड कंट्रोलर उस प्रवेश के लिए लोड बैलेंसर का प्रावधान करता है। हम प्रयोग करते हैं अमेज़ॅन रूट 53 लोड बैलेंसर पर टीएलएस प्रमाणीकरण को सक्षम करने के लिए एसीएम का उपयोग करके पंजीकृत डोमेन के लिए एक सार्वजनिक डीएनएस को कॉन्फ़िगर करने और प्रमाण पत्र बनाने के लिए।
निम्नलिखित आरेख Amazon Cognito में लॉग इन करने और अपने संबंधित नामस्थान में Kubeflow पर पुनर्निर्देशित होने के विशिष्ट उपयोगकर्ता वर्कफ़्लो को दर्शाता है।
वर्कफ़्लो में निम्न चरण होते हैं:
- उपयोगकर्ता लोड बैलेंसर के पीछे होस्ट किए गए क्यूबफ़्लो केंद्रीय डैशबोर्ड पर एक HTTPS अनुरोध भेजता है। रूट 53 FQDN को ALB उपनाम रिकॉर्ड में हल करता है।
- यदि कुकी मौजूद नहीं है, तो लोड बैलेंसर उपयोगकर्ता को Amazon Cognito प्राधिकरण समापन बिंदु पर पुनर्निर्देशित करता है ताकि Amazon Cognito उपयोगकर्ता को प्रमाणित कर सके।
- उपयोगकर्ता के प्रमाणित होने के बाद, Amazon Cognito उपयोगकर्ता को प्राधिकरण अनुदान कोड के साथ लोड बैलेंसर पर वापस भेजता है।
- लोड बैलेंसर अमेज़ॅन कॉग्निटो टोकन एंडपॉइंट को प्राधिकरण अनुदान कोड प्रस्तुत करता है।
- वैध प्राधिकरण अनुदान कोड प्राप्त करने पर, अमेज़ॅन कॉग्निटो बैलेंसर को लोड करने के लिए आईडी टोकन और एक्सेस टोकन प्रदान करता है।
- आपका लोड बैलेंसर किसी उपयोगकर्ता को सफलतापूर्वक प्रमाणित करने के बाद, यह अमेज़ॅन कॉग्निटो उपयोगकर्ता जानकारी समापन बिंदु पर पहुंच टोकन भेजता है और उपयोगकर्ता के दावे प्राप्त करता है। लोड बैलेंसर संकेत करता है और उपयोगकर्ता के दावों को HTTP हेडर में जोड़ता है
x-amzn-oidc-*
JSON वेब टोकन (JWT) अनुरोध प्रारूप में। - लोड बैलेंसर से अनुरोध इस्तियो इनग्रेड गेटवे के पॉड को भेजा जाता है।
- एक दूत फ़िल्टर का उपयोग करते हुए, इस्तियो गेटवे डीकोड करता है
x-amzn-oidc-data
मान, ईमेल फ़ील्ड पुनर्प्राप्त करता है, और कस्टम HTTP शीर्षलेख जोड़ता हैkubeflow-userid
, जिसका उपयोग Kubeflow प्राधिकरण परत द्वारा किया जाता है। - इस्तियो संसाधन-आधारित अभिगम नियंत्रण नीतियां क्यूबफ्लो डैशबोर्ड तक पहुंच को सत्यापित करने के लिए आने वाले अनुरोध पर लागू होती हैं। यदि उनमें से कोई भी उपयोगकर्ता के लिए पहुंच योग्य नहीं है, तो एक त्रुटि प्रतिक्रिया वापस भेजी जाती है। यदि अनुरोध मान्य है, तो इसे उपयुक्त Kubeflow सेवा को अग्रेषित किया जाता है और Kubeflow डैशबोर्ड तक पहुँच प्रदान करता है
अमेज़ॅन आरडीएस और अमेज़ॅन एस 3 के साथ क्यूबफ्लो घटक मेटाडेटा और आर्टिफैक्ट स्टोरेज को कायम रखना
AWS पर Kubeflow साथ एकीकरण प्रदान करता है अमेज़न रिलेशनल डेटाबेस सर्विस (अमेज़ॅन आरडीएस) क्यूबफ्लो पाइपलाइनों और ऑटोएमएल में (कटिब) लगातार मेटाडेटा भंडारण के लिए, और अमेज़ॅन S3 Kubeflow पाइपलाइनों में लगातार विरूपण साक्ष्य भंडारण के लिए। आइए क्यूबफ्लो पाइपलाइनों पर अधिक विस्तार से चर्चा करना जारी रखें।
Kubeflow पाइपलाइन पोर्टेबल, स्केलेबल ML वर्कफ़्लोज़ के निर्माण और परिनियोजन के लिए एक प्लेटफ़ॉर्म है। ये वर्कफ़्लोज़ बिल्ट-इन और कस्टम क्यूबफ़्लो घटकों का उपयोग करके जटिल एमएल पाइपलाइनों को स्वचालित करने में मदद कर सकते हैं। क्यूबफ्लो पाइपलाइन में पायथन एसडीके, एक डीएसएल कंपाइलर शामिल है जो पायथन कोड को एक स्थिर कॉन्फ़िगरेशन में परिवर्तित करता है, एक पाइपलाइन सेवा जो स्थिर कॉन्फ़िगरेशन से पाइपलाइन चलाती है, और पाइपलाइन को पूरा करने के लिए आवश्यक कुबेरनेट्स पॉड्स के भीतर कंटेनरों को चलाने के लिए नियंत्रकों का एक सेट शामिल है।
पाइपलाइन प्रयोगों और रन के लिए क्यूबफ़्लो पाइपलाइन मेटाडेटा को MySQL में संग्रहीत किया जाता है, और पाइपलाइन पैकेज और मीट्रिक सहित कलाकृतियों को मिनिओ में संग्रहीत किया जाता है।
जैसा कि निम्नलिखित आरेख में दिखाया गया है, AWS पर Kubeflow आपको AWS प्रबंधित सेवाओं के साथ निम्नलिखित घटकों को संग्रहीत करने देता है:
- Amazon RDS में पाइपलाइन मेटाडेटा - अमेज़ॅन आरडीएस एक स्केलेबल, अत्यधिक उपलब्ध और विश्वसनीय मल्टी-एजेड परिनियोजन आर्किटेक्चर प्रदान करता है जिसमें एक अंतर्निहित स्वचालित विफलता तंत्र और MySQL जैसे उद्योग-मानक रिलेशनल डेटाबेस के लिए आकार बदलने योग्य क्षमता है। यह बुनियादी ढांचे के प्रावधान या सॉफ्टवेयर को बनाए रखने की आवश्यकता के बिना सामान्य डेटाबेस प्रशासन कार्यों का प्रबंधन करता है।
- Amazon S3 में पाइपलाइन कलाकृतियां - Amazon S3 उद्योग की अग्रणी मापनीयता, डेटा उपलब्धता, सुरक्षा और प्रदर्शन प्रदान करता है, और इसका उपयोग आपकी आवश्यकताओं को पूरा करने के लिए किया जा सकता है अनुपालन आवश्यकताएं.
ये एकीकरण मेटाडेटा और आर्टिफैक्ट स्टोरेज के प्रबंधन और रखरखाव को स्व-प्रबंधित Kubeflow से AWS प्रबंधित सेवाओं में ऑफ़लोड करने में मदद करते हैं, जो कि सेट अप, संचालित और स्केल करना आसान है।
Amazon EFS और Amazon FSx के साथ वितरित फ़ाइल सिस्टम के लिए समर्थन
Kubeflow Kubernetes पर बनाता है, जो बड़े पैमाने पर वितरित डेटा प्रोसेसिंग के लिए एक बुनियादी ढांचा प्रदान करता है, जिसमें लाखों या अरबों मापदंडों के साथ एक गहरे नेटवर्क के साथ बड़े मॉडल का प्रशिक्षण और ट्यूनिंग शामिल है। ऐसे वितरित डेटा प्रोसेसिंग एमएल सिस्टम का समर्थन करने के लिए, एडब्ल्यूएस पर क्यूबफ्लो निम्नलिखित भंडारण सेवाओं के साथ एकीकरण प्रदान करता है:
- अमेज़ॅन ईएफएस - एक उच्च-प्रदर्शन, क्लाउड-नेटिव, वितरित फ़ाइल सिस्टम, जिसे आप एक . के माध्यम से प्रबंधित कर सकते हैं अमेज़ॅन ईएफएस सीएसआई ड्राइवर. अमेज़ॅन ईएफएस प्रदान करता है
ReadWriteMany
एक्सेस मोड, और अब आप इसका उपयोग क्यूबफ़्लो डेटा प्लेन में चल रहे पॉड्स (जुपिटर, मॉडल ट्रेनिंग, मॉडल ट्यूनिंग) में माउंट करने के लिए कर सकते हैं ताकि एक स्थायी, स्केलेबल और साझा करने योग्य कार्यक्षेत्र प्रदान किया जा सके जो आपके द्वारा फ़ाइलों को जोड़ने और हटाने के साथ स्वचालित रूप से बढ़ता और सिकुड़ता है। प्रबंधन की कोई आवश्यकता नहीं है। - चमक के लिए अमेज़न FSx - उच्च-प्रदर्शन कंप्यूटिंग और एमएल जैसे कंप्यूट-इंटेंसिव वर्कलोड के लिए एक अनुकूलित फाइल सिस्टम, जिसे आप इसके माध्यम से प्रबंधित कर सकते हैं Amazon FSx CSI ड्राइवर. चमक के लिए FSx प्रदान करता है
ReadWriteMany
एक्सेस मोड भी है, और आप इसका उपयोग बैकिंग स्टोर के रूप में Amazon S3 से सीधे कनेक्टिविटी के साथ प्रशिक्षण डेटा को कैश करने के लिए कर सकते हैं, जिसका उपयोग आप Jupyter नोटबुक सर्वर या Kubeflow डेटा प्लेन में चल रहे वितरित प्रशिक्षण का समर्थन करने के लिए कर सकते हैं। इस कॉन्फ़िगरेशन के साथ, आपको वॉल्यूम का उपयोग करने से पहले डेटा को फ़ाइल सिस्टम में स्थानांतरित करने की आवश्यकता नहीं है। लस्टर के लिए FSx लगातार सबमिलीसेकंड लेटेंसी और उच्च संगामिति प्रदान करता है, और TB/s थ्रूपुट और लाखों IOPS तक स्केल कर सकता है।
क्यूबफ़्लो परिनियोजन विकल्प
AWS विभिन्न Kubeflow परिनियोजन विकल्प प्रदान करता है:
- Amazon Cognito . के साथ परिनियोजन
- Amazon RDS और Amazon S3 के साथ परिनियोजन
- Amazon Cognito, Amazon RDS, और Amazon S3 के साथ परिनियोजन
- वेनिला परिनियोजन
इनमें से प्रत्येक विकल्प के लिए सेवा एकीकरण और उपलब्ध ऐड-ऑन के विवरण के लिए, देखें परिनियोजन विकल्प. आप उस विकल्प को फिट कर सकते हैं जो आपके उपयोग के मामले में सबसे उपयुक्त हो।
निम्नलिखित अनुभाग में, हम Amazon EKS पर AWS Kubeflow v1.4 वितरण स्थापित करने के चरणों के माध्यम से चलते हैं। फिर हम एक ऐड-ऑन के रूप में सीक्रेट मैनेजर के साथ Amazon Cognito, Amazon RDS और Amazon S3 के साथ AWS Kubeflow के एकीकरण और उपयोग को प्रदर्शित करने के लिए Kubeflow केंद्रीय UI डैशबोर्ड पर उपलब्ध मौजूदा XGBoost पाइपलाइन उदाहरण का उपयोग करते हैं।
.. पूर्वापेक्षाएँ
इस पूर्वाभ्यास के लिए, आपके पास निम्नलिखित शर्तें होनी चाहिए:
- An AWS खाता.
- एक मौजूदा अमेज़न ईकेएस क्लस्टर। यह Kubernetes संस्करण 1.19 या उच्चतर होना चाहिए। का उपयोग कर स्वचालित क्लस्टर निर्माण के लिए Ectctlदेखते हैं, Amazon EKS क्लस्टर बनाएं और eksctl विकल्प का उपयोग करें।
अपने Kubernetes क्लस्टर तक पहुँचने के लिए उपयोग की जाने वाली क्लाइंट मशीन पर निम्नलिखित उपकरण स्थापित करें। आप उपयोग कर सकते हैं AWS क्लाउड 9, Kubernetes क्लस्टर सेटअप के लिए क्लाउड-आधारित एकीकृत विकास परिवेश (IDE) है।
- AWS कमांड लाइन इंटरफ़ेस (एडब्ल्यूएस सीएलआई) - एडब्ल्यूएस सेवाओं के साथ बातचीत के लिए एक कमांड लाइन उपकरण। स्थापना निर्देशों के लिए, देखें AWS CLI को इंस्टाल करना, अपडेट करना और अनइंस्टॉल करना.
- Ectctl > 0.56 - अमेज़ॅन ईकेएस क्लस्टर के साथ काम करने के लिए एक कमांड लाइन टूल जो कई व्यक्तिगत कार्यों को स्वचालित करता है।
- Kubectl - Kubernetes क्लस्टर के साथ काम करने के लिए एक कमांड लाइन टूल।
- Git - एक वितरित संस्करण नियंत्रण सॉफ्टवेयर।
- अजगर 3.8+ - पायथन प्रोग्रामिंग वातावरण।
- रंज - पायथन के लिए पैकेज मैनेजर।
- संस्करण 3.2.0 . को अनुकूलित करें - एक अनुकूलन फ़ाइल के माध्यम से Kubernetes वस्तुओं को अनुकूलित करने के लिए एक कमांड लाइन उपकरण।
एडब्ल्यूएस पर क्यूबफ्लो स्थापित करें
Kubectl को कॉन्फ़िगर करें ताकि आप Amazon EKS क्लस्टर से जुड़ सकें:
Kubeflow परिनियोजन में विभिन्न नियंत्रक उपयोग करते हैं सेवा खातों के लिए IAM भूमिकाएँ (आईआरएसए)। आपके क्लस्टर के लिए IRSA का उपयोग करने के लिए एक OIDC प्रदाता मौजूद होना चाहिए। यदि आपके क्लस्टर में पहले से एक नहीं है, तो निम्न कमांड चलाकर एक OIDC प्रदाता बनाएं और इसे अपने Amazon EKS क्लस्टर के साथ संबद्ध करें:
क्लोन एडब्ल्यूएस रेपो प्रकट करता है और क्यूबफ्लो रेपो प्रकट करता है, और संबंधित रिलीज शाखाओं को चेकआउट करता है:
इन संस्करणों के बारे में अधिक जानकारी के लिए देखें विज्ञप्ति और संस्करण.
Amazon RDS, Amazon S3 और सीक्रेट मैनेजर सेट करें
Kubeflow मेनिफेस्ट को परिनियोजित करने से पहले आप Amazon RDS और Amazon S3 संसाधन बनाते हैं। हम स्वचालित पायथन स्क्रिप्ट का उपयोग करते हैं जो S3 बकेट, RDS डेटाबेस और सीक्रेट मैनेजर में आवश्यक रहस्यों को बनाने का ध्यान रखते हैं। यह Kubeflow पाइपलाइन और AutoML के लिए आवश्यक कॉन्फ़िगरेशन फ़ाइलों को भी संपादित करता है ताकि Kubeflow स्थापना के दौरान RDS डेटाबेस और S3 बाल्टी के लिए ठीक से कॉन्फ़िगर किया जा सके।
एक IAM उपयोगकर्ता बनाएं अनुमति की अनुमति के साथ GetBucketLocation
और S3 बकेट में वस्तुओं तक पहुंच को पढ़ें और लिखें जहां आप Kubeflow कलाकृतियों को संग्रहीत करना चाहते हैं। उपयोग AWS_ACCESS_KEY_ID
और AWS_SECRET_ACCESS_KEY
निम्नलिखित कोड में IAM उपयोगकर्ता का:
Amazon Cognito को प्रमाणीकरण प्रदाता के रूप में सेट करें
इस खंड में, हम बाहरी ट्रैफ़िक को क्यूबफ़्लो इस्तियो गेटवे तक रूट करने के लिए रूट 53 और एएलबी में एक कस्टम डोमेन बनाते हैं। हम उपयोगकर्ता पूल को बनाए रखने और उपयोगकर्ता प्रमाणीकरण को प्रबंधित करने के लिए ALB और Amazon Cognito पर TLS प्रमाणीकरण सक्षम करने के लिए प्रमाणपत्र बनाने के लिए ACM का उपयोग करते हैं।
निम्नलिखित मानों को में रखें
- मार्ग53.रूटडोमेन.नाम - पंजीकृत डोमेन। आइए मान लें कि यह डोमेन है
example.com
. - मार्ग53.rootDomain.hostedZoneId - यदि आपका डोमेन रूट53 में प्रबंधित है, तो होस्टेड ज़ोन विवरण के अंतर्गत प्राप्त होस्टेड ज़ोन आईडी दर्ज करें। यदि आपका डोमेन किसी अन्य डोमेन प्रदाता द्वारा प्रबंधित किया जाता है, तो इस चरण को छोड़ दें।
- मार्ग53.उपडोमेन.नाम – उप डोमेन का नाम जहां आप Kubeflow को होस्ट करना चाहते हैं (उदाहरण के लिए,
platform.example.com
) उप डोमेन के बारे में अधिक जानकारी के लिए देखें IdP . के रूप में AWS Cognito के साथ Kubeflow परिनियोजित करना. - क्लस्टर.नाम - क्लस्टर का नाम और जहां Kubeflow तैनात है।
- क्लस्टर.क्षेत्र - क्लस्टर क्षेत्र जहां क्यूबफ्लो तैनात है (उदाहरण के लिए,
us-west-2
). - cognitoUserpool.name - Amazon Cognito यूजर पूल का नाम (उदाहरण के लिए,
kubeflow-users
).
कॉन्फ़िगरेशन फ़ाइल निम्न कोड की तरह कुछ दिखती है:
संसाधन बनाने के लिए स्क्रिप्ट चलाएँ:
स्क्रिप्ट अद्यतन करता है config.yaml
इसके द्वारा बनाए गए संसाधन नाम, आईडी और एआरएन के साथ फ़ाइल। यह निम्न कोड जैसा कुछ दिखता है:
मैनिफ़ेस्ट बनाएं और क्यूबफ़्लो को तैनात करें
निम्न आदेश का उपयोग करके Kubeflow परिनियोजित करें:
डोमेन को ALB पते से अपडेट करें
परिनियोजन एक प्रवेश-प्रबंधित AWS एप्लिकेशन लोड बैलेंसर बनाता है। हम लोड बैलेंसर के DNS के साथ रूट 53 में सबडोमेन के लिए DNS प्रविष्टियों को अपडेट करते हैं। लोड बैलेंसर का प्रावधान है या नहीं यह जांचने के लिए निम्न कमांड चलाएँ (इसमें लगभग 3-5 मिनट लगते हैं):
अगर ADDRESS
कुछ मिनटों के बाद फ़ील्ड खाली है, के लॉग की जाँच करें alb-ingress-controller
. निर्देशों के लिए, देखें एएलबी प्रावधान करने में विफल रहता है.
जब लोड बैलेंसर का प्रावधान किया जाता है, तो लोड बैलेंसर के डीएनएस नाम को कॉपी करें और इसके लिए पते को प्रतिस्थापित करें kubeflow.alb.dns
in ${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
. कॉन्फ़िगरेशन फ़ाइल का क्यूबफ़्लो अनुभाग निम्न कोड जैसा दिखता है:
रूट 53 में उप डोमेन के लिए प्रावधान लोड बैलेंसर के DNS के साथ DNS प्रविष्टियों को अद्यतन करने के लिए निम्न स्क्रिप्ट चलाएँ:
समस्या निवारण
यदि आप स्थापना के दौरान किसी समस्या का सामना करते हैं, तो देखें समस्या निवारण सूचना पुस्तक या इस ब्लॉग में "क्लीन अप" अनुभाग का अनुसरण करके नए सिरे से शुरुआत करें।
केस वॉकथ्रू का उपयोग करें
अब जब हमने आवश्यक Kubeflow घटकों को स्थापित करना पूरा कर लिया है, तो आइए डैशबोर्ड पर Kubeflow पाइपलाइन द्वारा प्रदान किए गए मौजूदा उदाहरणों में से एक का उपयोग करके उन्हें क्रिया में देखें।
Amazon Cognito का उपयोग करके Kubeflow डैशबोर्ड एक्सेस करें
आरंभ करने के लिए, आइए Kubeflow डैशबोर्ड तक पहुँचें। चूंकि हमने Amazon Cognito को IdP के रूप में उपयोग किया है, इसलिए इसमें दी गई जानकारी का उपयोग करें आधिकारिक रीडमी फ़ाइल. हम सबसे पहले Amazon Cognito कंसोल पर कुछ यूजर्स बनाते हैं। ये वे उपयोगकर्ता हैं जो केंद्रीय डैशबोर्ड में लॉग इन करेंगे। अगला, एक प्रोफाइल बनाएं आपके द्वारा बनाए गए उपयोगकर्ता के लिए। फिर आप लॉगिन पेज के माध्यम से डैशबोर्ड तक पहुंचने में सक्षम होना चाहिए https://kubeflow.platform.example.com.
निम्न स्क्रीनशॉट हमारे Kubeflow डैशबोर्ड को दिखाता है।
पाइपलाइन चलाएं
Kubeflow डैशबोर्ड पर, चुनें पाइप लाइनें नेविगेशन नाम में। आपको Kubeflow Pipelines द्वारा प्रदान किए गए चार उदाहरण देखने चाहिए जिन्हें आप विभिन्न पाइपलाइन सुविधाओं का पता लगाने के लिए सीधे चला सकते हैं।
इस पोस्ट के लिए, हम [डेमो] XGBoost - Iterative मॉडल प्रशिक्षण नामक XGBoost नमूने का उपयोग करते हैं। आप स्रोत कोड पर पा सकते हैं GitHub. यह एक साधारण पाइपलाइन है जो मौजूदा का उपयोग करती है XGBoost/Train
और XGBoost/Predict
क्यूबफ़्लो पाइपलाइन घटकों को एक मॉडल को पुनरावृत्त रूप से प्रशिक्षित करने के लिए जब तक कि मेट्रिक्स को निर्दिष्ट मेट्रिक्स के आधार पर अच्छा नहीं माना जाता है।
पाइपलाइन चलाने के लिए, निम्नलिखित चरणों को पूरा करें:
- पाइपलाइन का चयन करें और चुनें प्रयोग बनाएं.
- के अंतर्गत प्रयोग विवरण, एक नाम दर्ज करें (इस पद के लिए,
demo-blog
) और वैकल्पिक विवरण। - चुनें अगला.
- के अंतर्गत विवरण चलाएँअपना पाइपलाइन और पाइपलाइन संस्करण चुनें।
- के लिए भागो नाम, नाम डालें।
- के लिए प्रयोग, अपने द्वारा बनाया गया प्रयोग चुनें.
- के लिए रन प्रकार, चुनते हैं एक-बार.
- चुनें प्रारंभ.
पाइपलाइन के चलने के बाद, आपको घटकों को पूरा होते हुए देखना चाहिए (कुछ सेकंड के भीतर)। इस स्तर पर, आप अधिक विवरण देखने के लिए किसी भी पूर्ण घटक को चुन सकते हैं।
Amazon S3 में कलाकृतियों तक पहुंचें
Kubeflow परिनियोजित करते समय, हमने निर्दिष्ट किया कि Kubeflow पाइपलाइन को अपनी कलाकृतियों को संग्रहीत करने के लिए Amazon S3 का उपयोग करना चाहिए। इसमें सभी पाइपलाइन आउटपुट कलाकृतियां, कैश्ड रन और पाइपलाइन ग्राफ़ शामिल हैं—जिनका उपयोग तब समृद्ध विज़ुअलाइज़ेशन और प्रदर्शन मूल्यांकन के लिए किया जा सकता है।
जब पाइपलाइन रन पूरा हो जाता है, तो आपको स्थापना के दौरान आपके द्वारा बनाई गई S3 बाल्टी में कलाकृतियों को देखने में सक्षम होना चाहिए। इसकी पुष्टि करने के लिए, पाइपलाइन के किसी भी पूर्ण घटक को चुनें और जांचें इनपुट / आउटपुट डिफ़ॉल्ट पर अनुभाग ग्राफ टैब। आर्टिफ़ैक्ट URL को उस S3 बकेट की ओर इंगित करना चाहिए जिसे आपने परिनियोजन के दौरान निर्दिष्ट किया था।
यह पुष्टि करने के लिए कि संसाधन Amazon S3 में जोड़े गए थे, हम Amazon S3 कंसोल के माध्यम से अपने AWS खाते में S3 बकेट भी देख सकते हैं।
निम्न स्क्रीनशॉट हमारी फ़ाइलें दिखाता है।
Amazon RDS में ML मेटाडेटा सत्यापित करें
हमने तैनाती के दौरान क्यूबफ्लो पाइपलाइनों को अमेज़ॅन आरडीएस के साथ एकीकृत किया, जिसका अर्थ है कि किसी भी पाइपलाइन मेटाडेटा को अमेज़ॅन आरडीएस में संग्रहीत किया जाना चाहिए। इसमें कोई भी रनटाइम जानकारी शामिल होती है जैसे कि किसी कार्य की स्थिति, कलाकृतियों की उपलब्धता, रन या कलाकृतियों से संबंधित कस्टम गुण, और बहुत कुछ।
अमेज़ॅन आरडीएस एकीकरण को सत्यापित करने के लिए, में दिए गए चरणों का पालन करें आधिकारिक रीडमी फ़ाइल. विशेष रूप से, निम्नलिखित चरणों को पूरा करें:
- स्थापना के दौरान बनाए गए रहस्य से Amazon RDS उपयोगकर्ता नाम और पासवर्ड प्राप्त करें:
- क्लस्टर के भीतर से Amazon RDS से कनेक्ट करने के लिए इन क्रेडेंशियल्स का उपयोग करें:
- जब MySQL प्रॉम्प्ट खुलता है, तो हम इसे सत्यापित कर सकते हैं
mlpipelines
डेटाबेस इस प्रकार है: - अब हम विशिष्ट तालिकाओं की सामग्री को पढ़ सकते हैं, यह सुनिश्चित करने के लिए कि हम पाइपलाइन चलाने वाले प्रयोगों के बारे में मेटाडेटा जानकारी देख सकते हैं:
क्लीन अप
Kubeflow की स्थापना रद्द करने और आपके द्वारा बनाए गए AWS संसाधनों को हटाने के लिए, निम्नलिखित चरणों को पूरा करें:
- निम्न आदेश चलाकर प्रवेश और प्रवेश-प्रबंधित लोड बैलेंसर हटाएं:
- शेष Kubeflow घटकों को हटा दें:
- स्क्रिप्ट द्वारा बनाए गए AWS संसाधन हटाएं:
- Amazon RDS और Amazon S3 एकीकरण के लिए बनाए गए संसाधन। सुनिश्चित करें कि आपके पास स्क्रिप्ट द्वारा बनाई गई कॉन्फ़िगरेशन फ़ाइल है
${kubeflow_manifest_dir}/tests/e2e/utils/rds-s3/metadata.yaml
: - Amazon Cognito एकीकरण के लिए बनाए गए संसाधन। सुनिश्चित करें कि आपके पास स्क्रिप्ट द्वारा बनाई गई कॉन्फ़िगरेशन फ़ाइल है
${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
:
- Amazon RDS और Amazon S3 एकीकरण के लिए बनाए गए संसाधन। सुनिश्चित करें कि आपके पास स्क्रिप्ट द्वारा बनाई गई कॉन्फ़िगरेशन फ़ाइल है
- यदि आपने eksctl का उपयोग करके Kubeflow के लिए एक समर्पित Amazon EKS क्लस्टर बनाया है, तो आप इसे निम्न कमांड से हटा सकते हैं:
सारांश
इस पोस्ट में, हमने AWS पर Kubeflow को सुरक्षित, स्केलेबल और एंटरप्राइज़-तैयार AI और ML वर्कलोड के लिए मूल AWS-प्रबंधित सेवा एकीकरण के माध्यम से प्रदान किए गए मूल्य पर प्रकाश डाला। आप विभिन्न सेवा एकीकरण के साथ AWS पर Kubeflow स्थापित करने के लिए कई परिनियोजन विकल्पों में से चुन सकते हैं। इस पोस्ट में उपयोग के मामले ने Amazon Cognito, Secrets Manager, Amazon RDS और Amazon S3 के साथ Kubeflow एकीकरण का प्रदर्शन किया। AWS पर Kubeflow के साथ आरंभ करने के लिए, उपलब्ध AWS-एकीकृत परिनियोजन विकल्पों को देखें एडब्ल्यूएस पर क्यूबफ्लो.
v1.3 से शुरू करके, आप इसका अनुसरण कर सकते हैं एडब्ल्यूएस लैब्स रिपॉजिटरी Kubeflow में सभी AWS योगदानों को ट्रैक करने के लिए। आप हमें पर भी ढूंढ सकते हैं Kubeflow #AWS स्लैक चैनल; आपकी प्रतिक्रिया हमें Kubeflow परियोजना में योगदान करने के लिए अगली सुविधाओं को प्राथमिकता देने में मदद करेगी।
लेखक के बारे में
कंवलजीत खुर्मी Amazon वेब सर्विसेज में AI/ML स्पेशलिस्ट सॉल्यूशंस आर्किटेक्ट हैं। वह AWS उत्पाद, इंजीनियरिंग और ग्राहकों के साथ मार्गदर्शन और तकनीकी सहायता प्रदान करने के लिए काम करते हैं, जिससे उन्हें AWS का उपयोग करते समय उनके हाइब्रिड ML समाधानों के मूल्य में सुधार करने में मदद मिलती है। कंवलजीत कंटेनरीकृत और मशीन लर्निंग एप्लिकेशन के साथ ग्राहकों की मदद करने में माहिर हैं।
मेघना बैजली एडब्ल्यूएस एआई के साथ एक सॉफ्टवेयर इंजीनियर है, जो उपयोगकर्ताओं के लिए डीप लर्निंग कंटेनर, डीप लर्निंग एएमआई, कुबेरनेट्स के एडब्ल्यूएस कंट्रोलर (एसीके) और एडब्ल्यूएस पर क्यूबफ्लो जैसे एमएल उत्पादों और प्लेटफार्मों का निर्माण करके एडब्ल्यूएस पर अपने मशीन लर्निंग वर्कलोड को ऑनबोर्ड करना आसान बनाता है। . काम के अलावा उसे पढ़ना, घूमना और पेंटिंग करना पसंद है।
सूरज कोटा मशीन लर्निंग इन्फ्रास्ट्रक्चर में विशेषज्ञता वाला एक सॉफ्टवेयर इंजीनियर है। वह आसानी से आरंभ करने के लिए टूल बनाता है और AWS पर मशीन लर्निंग वर्कलोड को स्केल करता है। उन्होंने एडब्ल्यूएस डीप लर्निंग कंटेनर्स, डीप लर्निंग एएमआई, कुबेरनेट्स के लिए सेजमेकर ऑपरेटर्स और क्यूबफ्लो जैसे अन्य ओपन सोर्स इंटीग्रेशन पर काम किया।
- कॉइनस्मार्ट। यूरोप का सर्वश्रेष्ठ बिटकॉइन और क्रिप्टो एक्सचेंज।
- प्लेटोब्लॉकचैन। Web3 मेटावर्स इंटेलिजेंस। ज्ञान प्रवर्धित। नि: शुल्क प्रवेश।
- क्रिप्टोहॉक। Altcoin रडार। मुफ्त परीक्षण।
- स्रोत: https://aws.amazon.com/blogs/machine-learning/build-and-deploy-a-scalable-machine-learning-system-on-kubernetes-with-kubeflow-on-aws/
- "
- 10
- 100
- 420
- 7
- About
- पहुँच
- लेखा
- कार्य
- ऐड ऑन
- पता
- व्यवस्थापक
- प्रशासन
- सहयोगी कंपनियों
- AI
- सब
- पहले ही
- वीरांगना
- अमेज़ॅन वेब सेवा
- अन्य
- आवेदन
- अनुप्रयोगों
- उपयुक्त
- स्थापत्य
- चारों ओर
- सहयोगी
- प्रमाणीकृत
- प्रमाणित करता है
- प्रमाणीकरण
- प्राधिकरण
- को स्वचालित रूप से
- स्वचालित
- ऑटोमेटा
- उपलब्धता
- उपलब्ध
- एडब्ल्यूएस
- बन
- लाभ
- BEST
- अरबों
- ब्लॉग
- सीमा
- निर्माण
- इमारत
- बनाता है
- में निर्मित
- क्षमताओं
- क्षमता
- कौन
- मामलों
- CD
- प्रमाण पत्र
- प्रमाण पत्र
- चुनौतीपूर्ण
- चेक आउट
- चुनें
- का दावा है
- कक्षा
- कोड
- सामान्य
- पूरा
- जटिल
- अंग
- कंप्यूटर
- कंप्यूटिंग
- विन्यास
- जुडिये
- कनेक्टिविटी
- कंसोल
- कंटेनरों
- शामिल हैं
- सामग्री
- जारी रखने के
- योगदान
- नियंत्रण
- नियंत्रक
- Copyright
- सका
- बनाना
- बनाया
- बनाता है
- बनाना
- निर्माण
- साख
- महत्वपूर्ण
- रिवाज
- ग्राहक
- डैशबोर्ड
- तिथि
- डेटा संसाधन
- डेटा विज्ञान
- डाटाबेस
- DDoS
- समर्पित
- मांग
- दिखाना
- साबित
- तैनात
- तैनात
- तैनाती
- तैनाती
- तैनाती
- तैनात
- डिज़ाइन
- विस्तार
- विवरण
- विकास
- डेक्स
- विभिन्न
- प्रत्यक्ष
- सीधे
- चर्चा करना
- वितरित
- वितरण
- DNS
- नहीं करता है
- डोमेन
- आसानी
- आसान करने के लिए उपयोग
- गूंज
- ईमेल
- सक्षम
- एन्क्रिप्शन
- endpoint
- इंजीनियर
- अभियांत्रिकी
- दर्ज
- उद्यम
- वातावरण
- मूल्यांकन
- कार्यक्रम
- उदाहरण
- मौजूदा
- अनुभव
- प्रयोग
- का पता लगाने
- फेसबुक
- विफलता
- विशेषताएं
- प्रतिक्रिया
- वित्तीय
- प्रथम
- फिट
- प्रवाह
- फोकस
- केंद्रित
- का पालन करें
- निम्नलिखित
- प्रारूप
- पाया
- ताजा
- मिल रहा
- जाना
- GitHub
- अच्छा
- गूगल
- आगे बढ़ें
- बढ़ रहा है
- मदद
- मदद
- मदद करता है
- यहाँ उत्पन्न करें
- हाई
- उच्चतर
- हाइलाइट
- अत्यधिक
- होस्टिंग
- HTTPS
- संकर
- पहचान
- प्रभाव
- लागू करने के
- में सुधार
- इंक
- शामिल
- सहित
- वृद्धि हुई
- व्यक्ति
- उद्योग के अग्रणी
- पता
- करें-
- इंफ्रास्ट्रक्चर
- स्थापित
- एकीकृत
- एकीकरण
- एकीकरण
- निवेश करना
- अलगाव
- मुद्दों
- IT
- खुद
- नौकरियां
- रखना
- कुंजी
- लैब्स
- भाषा
- बड़ा
- शुभारंभ
- सीख रहा हूँ
- उत्तोलक
- लाइन
- भार
- स्थानीय
- मशीन
- यंत्र अधिगम
- बनाए रखना
- बनाता है
- निर्माण
- प्रबंधन
- कामयाब
- प्रबंध
- प्रबंधक
- मेट्रिक्स
- लाखों
- ML
- आदर्श
- मॉडल
- निगरानी
- अधिक
- अधिकांश
- नामों
- प्राकृतिक
- पथ प्रदर्शन
- जाल
- नेटवर्क
- नोड्स
- नोटबुक
- संख्या
- ऑफर
- खुला
- खुला स्रोत
- खोलता है
- ऑपरेटरों
- अनुकूलित
- विकल्प
- ऑप्शंस
- अन्य
- अपना
- पासवर्ड
- प्रदर्शन
- मंच
- प्लेटफार्म
- बिन्दु
- नीतियाँ
- पूल
- वर्तमान
- प्राथमिकता
- प्रसंस्करण
- एस्ट्रो मॉल
- उत्पाद
- प्रोग्रामिंग
- परियोजना
- रक्षा करना
- प्रदान करना
- प्रदान करता है
- प्रदान कर
- सार्वजनिक
- जल्दी से
- पहुंच
- पढ़ना
- कारण
- रिकॉर्ड
- पंजीकृत
- और
- का अनुरोध
- अपेक्षित
- आवश्यकताएँ
- संसाधन
- उपयुक्त संसाधन चुनें
- प्रतिक्रिया
- बाकी
- मार्ग
- रन
- दौड़ना
- अनुमापकता
- स्केलेबल
- स्केल
- स्केलिंग
- विज्ञान
- एसडीके
- एसईसी
- सेकंड
- सुरक्षित
- सुरक्षा
- serverless
- सेवा
- सेवाएँ
- सेट
- व्यवस्था
- शेयरों
- लक्षण
- सरल
- आकार
- ढीला
- नींद
- So
- सोशल मीडिया
- सॉफ्टवेयर
- सॉफ्टवेयर इंजीनियर
- ठोस
- समाधान
- समाधान ढूंढे
- कुछ
- कुछ
- स्रोत कोड
- विशेषज्ञ
- विशेषीकृत
- माहिर
- विशेष रूप से
- ट्रेनिंग
- प्रारंभ
- शुरू
- शुरू होता है
- राज्य
- स्थिति
- भंडारण
- की दुकान
- सफलतापूर्वक
- समर्थन
- समर्थन करता है
- प्रणाली
- सिस्टम
- कार्य
- तकनीकी
- स्रोत
- यहाँ
- पहर
- टोकन
- साधन
- उपकरण
- ऊपर का
- ट्रैक
- यातायात
- प्रशिक्षण
- स्थानांतरण
- अनुवाद करें
- परिवहन
- यात्रा का
- ui
- अपडेट
- अपडेट
- us
- उपयोग
- उपयोगकर्ताओं
- मान्य
- मूल्य
- विविधता
- विभिन्न
- सत्यापित
- दृष्टि
- आयतन
- वेब
- वेब सेवाओं
- कौन
- अंदर
- बिना
- काम
- काम किया
- काम कर रहे
- कार्य