एमएलफ्लो प्रमाणीकरण की स्थापना

Ema Elaphlo Pramanikarana Ki Sthapana



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

सर्वर पर एमएलफ़्लो प्रमाणीकरण कैसे सक्षम करें

MLflow प्रमाणीकरण को सक्षम करने के लिए निम्नलिखित कमांड का उपयोग करके MLflow UI लॉन्च करें:

एमएलफ्लो सर्वर--एप-नाम बेसिक-ऑथ

ऐप-नाम विकल्प के बिना सर्वर को पुनरारंभ करके, एमएलफ़्लो सर्वर व्यवस्थापक जब चाहें इस सुविधा को अक्षम करना चुन सकते हैं। यहां कमांड का एक स्क्रीनशॉट है क्योंकि यह विंडोज ऑपरेटिंग सिस्टम के कमांड लाइन टर्मिनल पर प्रदर्शित होता है (चेतावनी पर ध्यान न दें):









एमएलफ़्लो सर्वर को अब ब्राउज़र के माध्यम से प्रवेश करके सर्वर प्रयोगों और कलाकृतियों तक पहुंचने के लिए एक उपयोगकर्ता नाम और पासवर्ड की आवश्यकता होती है http://127.0.0.1:5000 यूआरएल के रूप में.







MLflow पर प्रमाणीकरण कैसे सेटअप करें

निर्देशों, आदेशों और कॉन्फ़िगरेशन फ़ाइल नामों में कुछ मामूली संशोधनों के साथ, विंडोज़ पर एमएलफ्लो प्रमाणीकरण स्थापित करना लिनक्स पर इसे स्थापित करने के समान है।

यहां 'htpasswd' और Nginx को रिवर्स प्रॉक्सी के रूप में उपयोग करके विंडोज़ पर MLflow प्रमाणीकरण को कॉन्फ़िगर करने के लिए एक ट्यूटोरियल है। याद रखें कि यह कॉन्फ़िगरेशन सरल प्रमाणीकरण सक्षम करता है, और अनधिकृत पहुंच से बचने के लिए एमएलफ्लो और नेग्नेक्स चलाने वाले कंप्यूटर की पर्याप्त सुरक्षा करना महत्वपूर्ण है। उत्पादन परिवेश या अधिक कठोर सुरक्षा आवश्यकताओं के लिए OAuth का उपयोग करने या MLflow को बाहरी पहचान प्रदाताओं के साथ जोड़ने पर विचार करें।



इस ट्यूटोरियल में, हम उपयोगकर्ता/पासवर्ड प्रबंधन के लिए 'htpasswd' और रिवर्स प्रॉक्सी के रूप में Nginx का उपयोग करके बुनियादी प्रमाणीकरण स्थापित करने के बारे में जानेंगे।

चरण 1: Htpasswd स्थापित करें

हालाँकि 'htpasswd' एक मूल विंडोज़ एप्लिकेशन नहीं है, हम एक तृतीय-पक्ष टूल का उपयोग करते हैं जिसे यहां अपाचे लाउंज की htpasswd उपयोगिता के रूप में जाना जाता है। इसे अपाचे लाउंज की आधिकारिक वेबसाइट से डाउनलोड करें। यहां एक स्क्रीनशॉट है जो दर्शाता है कि ज़िप फ़ाइल डाउनलोड करने और इसे हमारी कार्यशील निर्देशिका में निकालने के बाद अपाचे की बिन निर्देशिका में हमारे पास 'htpasswd.exe' है:

किसी भी कमांड प्रॉम्प्ट से 'htpasswd.exe' का उपयोग करने के लिए, इसे अभी पर्यावरण चर में अपने सिस्टम के PATH में किसी स्थान पर कॉपी करें।

चरण 2: एक पासवर्ड फ़ाइल बनाएं

पासवर्ड फ़ाइल जनरेट करने के लिए, कमांड प्रॉम्प्ट खोलें और उचित स्थान पर जाएँ। नई पासवर्ड फ़ाइल बनाने या सेट करने या उपयोगकर्ताओं को वर्तमान में जोड़ने के लिए 'htpasswd' का उपयोग करें। फ़ाइल की प्रत्येक पंक्ति में एक एन्क्रिप्टेड उपयोगकर्ता नाम और पासवर्ड होना आवश्यक है। उपयोगकर्ता के लिए नए क्रेडेंशियल जोड़ने या मौजूदा उपयोगकर्ता का पासवर्ड अपडेट करने के लिए निम्नलिखित कमांड का उपयोग करें:

htpasswd -c /path/to/PASSWORD_FILE_NAME उपयोगकर्ता नाम

पायथन फ़ोल्डर (इस मामले में, कार्यशील निर्देशिका) पर जाएं और टर्मिनल या प्रॉम्प्ट विंडो में उपरोक्त कमांड टाइप करें जैसा कि निम्नलिखित स्निपेट में दिखाया गया है। पासवर्ड फ़ाइल, mlflow-authfile, बनाई गई है।

'एडमिन' उपयोगकर्ता नाम जोड़ने और 'एंटर' कुंजी दबाने के बाद, सिस्टम पासवर्ड मांगता है। प्रॉम्प्ट पर उसी पासवर्ड को दोबारा टाइप करने के बाद, उपयोगकर्ता सफलतापूर्वक बन जाता है, और यह दिखाता है कि उपयोगकर्ता को आवश्यक पासवर्ड के साथ जोड़ा गया है:

यहां एक स्क्रीनशॉट है जो उस निर्देशिका को दिखाता है जहां आवश्यक पासवर्ड फ़ाइल बनाई गई है:

फ़ाइल की प्रत्येक पंक्ति पर 'उपयोगकर्ता नाम: पासवर्ड' प्रारूप में एक उपयोगकर्ता नाम और एन्क्रिप्टेड पासवर्ड दिखाई देना चाहिए।

चरण 3: Nginx को स्थापित और कॉन्फ़िगर करें

आधिकारिक वेबसाइट से Nginx की विंडोज़ बायनेरिज़ प्राप्त करें। डाउनलोड की गई फ़ाइल को Nginx फ़ोल्डर में कार्यशील निर्देशिका में निकालें:

Nginx में एक नया MLFlow सर्वर ब्लॉक बनाएं। Nginx निर्देशिका में कमांड प्रॉम्प्ट खोलकर 'mlflow-site' निर्देशिका बनाएं:

अभी MLflow कॉन्फ़िगरेशन के लिए एक नई फ़ाइल बनाने का समय आ गया है। सर्वर के डोमेन नाम या आईपी पते को लोकलहोस्ट से बदलें। इसके अलावा, पथ में फ़ॉरवर्ड स्लैश का उपयोग करके बदलें डी:/कार्य/पायथन/एमएलफ़्लो-ऑथ पहले बनाई गई पासवर्ड फ़ाइल के सटीक पथ के साथ। प्रॉक्सी_पास का मान एमएलफ्लो सर्वर के यूआरआई में बदलें। पोर्ट आवश्यक पोर्ट नंबरों के अनुसार समायोज्य हैं।

बदलने के लिए कोड का स्निपेट यहां दिया गया है:

IP पता खोजने के लिए कमांड प्रॉम्प्ट पर 'ipconfig' कमांड दर्ज करें:

चरण 4: Nginx सर्वर ब्लॉक को सक्षम करें

Nginx सर्वर ब्लॉक को सक्रिय करने के लिए, कमांड प्रॉम्प्ट पर निम्नलिखित कमांड का उपयोग करके एक प्रतीकात्मक लिंक बनाएं:

सीडी D:\Work\nginx\conf\mlflow- साइट

mklink mlflow D:\Work\nginx\conf\mlflow- साइट \mlप्रवाह

चरण 5: Nginx प्रारंभ करें

'nginx.exe' कमांड दर्ज करें और कमांड प्रॉम्प्ट से Nginx लॉन्च करने के लिए Nginx निर्देशिका पर नेविगेट करें:

चरण 6: एमएलफ़्लो सर्वर प्रारंभ करें

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

एमएलफ्लो सर्वर शुरू करने का आदेश:

एमएलफ़्लो सर्वर --होस्ट 127.0.0.1 --पोर्ट 5000 --बैकएंड-स्टोर-यूरी डी:/वर्क/पायथन/स्टोरेज

यदि, उपरोक्त आदेश को निष्पादित करने के बाद, आपको निम्न त्रुटि दिखाई देती है, तो चिंता न करें; समस्या को ठीक करने के लिए बस निम्नलिखित आदेश निष्पादित करें:

त्रुटि को हल करने के लिए स्थानीय फ़ाइल सिस्टम पर मॉडल रजिस्ट्री डेटा को संग्रहीत करने के लिए यूआरआई योजना बदलें:

एमएलफ़्लो सर्वर --होस्ट 127.0.0.1 --पोर्ट 5000 --बैकएंड-स्टोर-यूरी फ़ाइल :///D:/कार्य/पायथन/भंडारण

चरण 7: प्रमाणीकरण के साथ एमएलफ्लो तक पहुंचें

अब, जब कोई डोमेन या आईपी पते के माध्यम से एमएलफ्लो तक पहुंचता है तो Nginx एमएलफ्लो सर्वर और इसकी कलाकृतियों तक पहुंच प्रदान करने से पहले एक उपयोगकर्ता नाम और पासवर्ड का अनुरोध करेगा। अब, एमएलफ्लो के यूआई और एपीआई तक पहुंचने के लिए, एमएलफ्लो तक पहुंचने के लिए वेब ब्राउज़र का उपयोग करते समय आपको पहले एक लॉगिन उपयोगकर्ता नाम और पासवर्ड प्रदान करना होगा।

निष्कर्ष

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

अंतिम लेकिन महत्वपूर्ण बात, यह सुनिश्चित करने के लिए कि आप नवीनतम और सुरक्षित प्रथाओं का पालन कर रहे हैं, एमएलफ़्लो और नेग्नेक्स के लिए नवीनतम दस्तावेज़ और संसाधनों से परामर्श करना हमेशा महत्वपूर्ण होता है।