ایم ایل فلو توثیق کو ترتیب دینا

Aym Ayl Flw Twthyq Kw Trtyb Dyna



MLflow سرور پر تجربات، ماڈلز اور نمونے تک رسائی کو محفوظ بنانے کے لیے توثیق کو کنفیگر کیا جانا چاہیے۔ ایک بار فعال ہونے کے بعد، ہر وہ صارف جو MLflow سرور کے ذریعہ میزبانی کردہ کسی بھی وسائل تک رسائی حاصل کرنا چاہتا ہے اسے سائن ان کرنا ہوگا۔ تصدیق کی تکنیک.

سرور پر ایم ایل فلو توثیق کو کیسے فعال کریں۔

MLflow کی توثیق کو فعال کرنے کے لیے بعد والی کمانڈ کا استعمال کرتے ہوئے MLflow UI لانچ کریں:

mlflow سرور --app-name basic-auth

ایپ کے نام کے آپشن کے بغیر سرور کو دوبارہ شروع کرنے سے، ایم ایل فلو سرور ایڈمنسٹریٹر جب چاہیں اس خصوصیت کو غیر فعال کرنے کا انتخاب کر سکتے ہیں۔ یہاں کمانڈ کا اسکرین شاٹ ہے کیونکہ یہ ونڈوز آپریٹنگ سسٹم کے کمانڈ لائن ٹرمینل پر ظاہر ہوتا ہے (انتباہ کو نظر انداز کریں):









MLflow سرور کو سرور کے تجربات اور نمونے تک رسائی حاصل کرنے کے لیے اب صارف نام اور پاس ورڈ کی ضرورت ہوتی ہے جب براؤزر کے ذریعے رسائی حاصل کی جاتی ہے۔ http://127.0.0.1:5000 URL کے طور پر.







ایم ایل فلو پر توثیق کیسے ترتیب دی جائے۔

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

یہاں 'htpasswd' اور Nginx کو ریورس پراکسی کے طور پر استعمال کرتے ہوئے ونڈوز پر MLflow کی توثیق کو ترتیب دینے کے لیے ایک ٹیوٹوریل ہے۔ یاد رکھیں کہ یہ ترتیب سادہ توثیق کو قابل بناتی ہے، اور غیر مجاز رسائی سے بچنے کے لیے MLflow اور Nginx کو چلانے والے کمپیوٹر کو مناسب طریقے سے تحفظ فراہم کرنا بہت ضروری ہے۔ پیداواری ماحول یا زیادہ سخت حفاظتی تقاضوں کے لیے OAuth استعمال کرنے یا MLflow کو بیرونی شناخت فراہم کنندگان کے ساتھ منسلک کرنے پر غور کریں۔



اس ٹیوٹوریل میں، ہم صارف/پاس ورڈ کے انتظام کے لیے 'htpasswd' کا استعمال کرتے ہوئے بنیادی توثیق اور Nginx کو ریورس پراکسی کے طور پر ترتیب دیں گے۔

مرحلہ 1: Htpasswd انسٹال کریں۔

اگرچہ 'htpasswd' مقامی ونڈوز ایپلیکیشن نہیں ہے، لیکن ہم ایک فریق ثالث کا ٹول استعمال کرتے ہیں جسے یہاں Apache Lounge کی htpasswd یوٹیلیٹی کے نام سے جانا جاتا ہے۔ اسے اپاچی لاؤنج کی آفیشل ویب سائٹ سے ڈاؤن لوڈ کریں۔ یہاں ایک اسکرین شاٹ ہے جو ظاہر کرتا ہے کہ ہمارے پاس زپ فائل کو ڈاؤن لوڈ کرنے اور اسے اپنی ورکنگ ڈائرکٹری میں نکالنے کے بعد اپاچی کی بن ڈائرکٹری میں 'htpasswd.exe' موجود ہے:

کسی بھی کمانڈ پرامپٹ سے 'htpasswd.exe' استعمال کرنے کے لیے، اسے ابھی اپنے سسٹم کے PATH میں ماحولیات کے متغیر میں کسی مقام پر کاپی کریں۔

مرحلہ 2: ایک پاس ورڈ فائل بنائیں

پاس ورڈ فائل بنانے کے لیے، کمانڈ پرامپٹ کھولیں اور مناسب جگہ پر جائیں۔ نئی پاس ورڈ فائل بنانے یا سیٹ کرنے یا موجودہ فائل میں صارفین کو شامل کرنے کے لیے 'htpasswd' کا استعمال کریں۔ فائل میں ہر لائن میں ایک خفیہ کردہ صارف نام اور پاس ورڈ ہونا ضروری ہے۔ صارف کے لیے نئی اسناد شامل کرنے یا موجودہ صارف کا پاس ورڈ اپ ڈیٹ کرنے کے لیے درج ذیل کمانڈ کا استعمال کریں:

htpasswd -c /path/to/PASSWORD_FILE_NAME USERNAME

Python فولڈر میں جائیں (اس معاملے میں، ورکنگ ڈائرکٹری) اور ٹرمینل یا پرامپٹ ونڈو میں مذکورہ کمانڈ ٹائپ کریں جیسا کہ درج ذیل ٹکڑوں میں دکھایا گیا ہے۔ پاس ورڈ فائل، mlflow-authfile، بنائی گئی ہے۔

'ایڈمن' صارف نام شامل کرنے اور 'انٹر' کی کو دبانے کے بعد، سسٹم پاس ورڈ مانگتا ہے۔ پرامپٹ پر وہی پاس ورڈ دوبارہ ٹائپ کرنے کے بعد، صارف کامیابی کے ساتھ بن جاتا ہے، اور یہ ظاہر کرتا ہے کہ صارف کو مطلوبہ پاس ورڈ کے ساتھ شامل کیا گیا ہے:

یہاں ایک اسکرین شاٹ ہے جس میں ڈائرکٹری دکھائی دیتی ہے جہاں ضروری پاس ورڈ فائل بنائی گئی ہے۔

'صارف نام: پاس ورڈ' فارمیٹ میں ایک صارف نام اور خفیہ کردہ پاس ورڈ فائل کی ہر لائن پر ظاہر ہونا چاہئے۔

مرحلہ 3: Nginx انسٹال اور کنفیگر کریں۔

سرکاری ویب سائٹ سے Nginx کی ونڈوز بائنریز حاصل کریں۔ ڈاؤن لوڈ فائل کو Nginx فولڈر میں ورکنگ ڈائرکٹری میں نکالیں:

Nginx میں ایک نیا MLFlow سرور بلاک بنائیں۔ Nginx ڈائریکٹری میں کمانڈ پرامپٹ کھول کر 'mlflow-site' ڈائریکٹری بنائیں:

ابھی MLflow کنفیگریشن کے لیے ایک نئی فائل بنانے کا وقت آگیا ہے۔ سرور کے ڈومین نام یا IP ایڈریس کو لوکل ہوسٹ سے بدل دیں۔ اس کے علاوہ، راستے میں فارورڈ سلیشس کا استعمال کرتے ہوئے، تبدیل کریں۔ D:/Work/Python/mlflow-auth پاس ورڈ فائل کے عین مطابق راستے کے ساتھ جو پہلے بنائی گئی ہے۔ proxy_pass کی قدر کو MLflow سرور کے URI میں تبدیل کریں۔ بندرگاہیں ضروری پورٹ نمبروں کے ساتھ ایڈجسٹ ہوتی ہیں۔

تبدیل کرنے کے لیے کوڈ کا ٹکڑا یہ ہے:

آئی پی ایڈریس تلاش کرنے کے لیے کمانڈ پرامپٹ پر 'ipconfig' کمانڈ درج کریں:

مرحلہ 4: Nginx سرور بلاک کو فعال کریں۔

Nginx سرور بلاک کو چالو کرنے کے لیے، کمانڈ پرامپٹ پر درج ذیل کمانڈ کا استعمال کرتے ہوئے ایک علامتی لنک بنائیں:

سی ڈی D:\Work\nginx\conf\mlflow- سائٹ

mklink mlflow D:\Work\nginx\conf\mlflow- سائٹ \mlflow

مرحلہ 5: Nginx شروع کریں۔

'nginx.exe' کمانڈ درج کریں اور کمانڈ پرامپٹ سے Nginx کو لانچ کرنے کے لیے Nginx ڈائریکٹری پر جائیں:

مرحلہ 6: ایم ایل فلو سرور شروع کریں۔

درج ذیل کمانڈ کی مدد سے، جس میں ایم ایل فلو سرور کا بیک اینڈ اسٹوریج پاتھ شامل ہے، آپ ایم ایل فلو سرور کو نئی ٹرمینل ونڈو یا کمانڈ پرامپٹ میں شروع یا دوبارہ شروع کر سکتے ہیں۔ تجربات، تلاشوں اور دیگر کارروائیوں کے نتائج اس راستے پر محفوظ کیے جاتے ہیں:

ایم ایل فلو سرور کو شروع کرنے کا حکم:

ایم ایل فلو سرور -- ہوسٹ 127.0.0.1 --پورٹ 5000 --backend-store-uri D:/Work/Python/Storage

اگر، مذکورہ کمانڈ پر عمل کرنے کے بعد، آپ کو درج ذیل خرابی نظر آتی ہے، فکر نہ کریں؛ مسئلے کو حل کرنے کے لیے صرف درج ذیل کمانڈ پر عمل کریں:

خرابی کو حل کرنے کے لیے ماڈل رجسٹری ڈیٹا کو مقامی فائل سسٹم پر اسٹور کرنے کے لیے URI اسکیم کو تبدیل کریں:

ایم ایل فلو سرور -- ہوسٹ 127.0.0.1 --پورٹ 5000 --backend-store-uri فائل :///D:/Work/Python/Storage

مرحلہ 7: توثیق کے ساتھ MLflow تک رسائی حاصل کریں۔

اب، Nginx MLflow سرور اور اس کے نمونے تک رسائی دینے سے پہلے صارف نام اور پاس ورڈ کی درخواست کرے گا جب کوئی ڈومین یا IP ایڈریس کے ذریعے MLflow تک رسائی حاصل کرتا ہے۔ اب، MLflow کے UI اور API تک رسائی حاصل کرنے کے لیے، آپ کو MLflow تک رسائی کے لیے ویب براؤزر کا استعمال کرتے وقت پہلے لاگ ان صارف نام اور پاس ورڈ فراہم کرنا ہوگا۔

نتیجہ

ونڈوز پر MLflow کی توثیق کے لیے MLflow کو توثیق آن ہونے کے ساتھ ریورس پراکسی کے پیچھے انجام دینے کی ضرورت ہوتی ہے۔ اس مثال میں، Nginx ریورس پراکسی کے طور پر کام کرتا ہے، صارف کے براؤزر اور ایم ایل فلو سرور کے درمیان ایک مڈل مین کے طور پر کام کرتا ہے۔ صارفین سے درخواست کی جاتی ہے کہ وہ MLflow کے لیے صارف انٹرفیس اور API تک رسائی سے پہلے ایک صارف کا نام اور پاس ورڈ درج کریں تاکہ بنیادی تصدیق کو نافذ کرنے کے لیے Nginx کو ترتیب دیا جائے۔

آخری لیکن کم از کم، یہ یقینی بنانے کے لیے کہ آپ تازہ ترین اور محفوظ طریقوں پر عمل پیرا ہیں، MLflow اور Nginx کے لیے تازہ ترین دستاویزات اور وسائل سے مشورہ کرنا ہمیشہ ضروری ہے۔