۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

ساخت Azure Kubernetes هوشمندتر برای توسعه دهندگان

مایکروسافت به توسعه سرویس Azure Kubernetes خود ادامه می دهد. برندن برنز، یکی از خالقان Kubernetes، به ما می‌گوید که در آینده به کجا می‌رود.

مایکروسافت به توسعه سرویس Azure Kubernetes خود ادامه می دهد. برندن برنز، یکی از خالقان Kubernetes، به ما می‌گوید که در آینده به کجا می‌رود.

با برگزاری KubeCon Europe در این هفته، مایکروسافت انبوهی از اعلامیه های Azure Kubernetes را ارائه کرده است. مایکروسافت علاوه بر چارچوبی جدید برای اجرای بارهای کاری یادگیری ماشینی، قابلیت‌های جدید برنامه‌ریزی حجم کار، حفاظت‌های جدید استقرار، و بهبودهای امنیتی و مقیاس‌پذیری، تاکید زیادی بر بهره‌وری توسعه‌دهنده‌ها داشته و برای بهبود تجربه توسعه‌دهندگان و کمک به کاهش خطرات خطا تلاش می‌کند. .

قبل از رویداد، من با برندان برنز، یکی از خالقان Kubernetes، و اکنون CVP، منبع باز Azure و Cloud-Native در مایکروسافت نشستم. ما در مورد آنچه مایکروسافت در KubeCon Europe اعلام کرد، اهداف مایکروسافت برای Kubernetes و اهمیت Kubernetes برای مایکروسافت به عنوان ارائه دهنده و کاربر سیستم مدیریت کانتینر صحبت کردیم. Burns همچنین به‌روزرسانی‌هایی را درباره پیشرفت مایکروسافت در ارائه نسخه پشتیبانی طولانی‌مدت Kubernetes ارائه کرد.

این زمان جالبی برای Kubernetes است، زیرا از یک فناوری پیشرفته به یک پلتفرم بالغ تبدیل می‌شود. این یک تغییر اساسی است که هر فناوری باید از آن عبور کند، اما برای یک پروژه منبع باز که توسط بسیاری از ارائه دهندگان ابری مختلف و بسیاری از توسعه دهندگان برنامه های کاربردی بیشتر به آن متکی است، سخت تر است.

Kaito: استقرار مدل‌های استنتاج هوش مصنوعی در Kubernetes

بسیاری از کارهایی که مایکروسافت در حال حاضر در مورد سرویس Azure Kubernetes خود (AKS) و سرویس کانتینر Azure (ACS) انجام می دهد، بر ارائه آن پلتفرم بالغ و قابل اعتماد ضرب المثلی با برنامه پشتیبانی طولانی مدت خود متمرکز است. که فراتر از چرخه زندگی فعلی Kubernetes است. این شرکت همچنین در حال کار بر روی ابزارهایی است که به پشتیبانی از حجم کاری که توسعه‌دهندگان می‌بیند هم در داخل مایکروسافت و هم در سرویس‌های ابری عمومی آن، پشتیبانی می‌کند.

بنابراین تعجب آور نبود که مکالمه ما به سرعت به هوش مصنوعی تبدیل شود، و ابزارهای مورد نیاز برای پشتیبانی از حجم کار در مقیاس انبوه در AKS.

یکی از ابزارهای جدیدی که Burns درباره آن صحبت کرد، هوش مصنوعی Kubernetes بود. اپراتور زنجیره ابزار برای AKS. این ابزاری برای اجرای بارهای کاری بزرگ در خوشه های عظیم Kubernetes است. اگر مخازن Azure GitHub را زیر نظر داشته باشید، این را به عنوان باز تشخیص خواهید داد. -source پروژه Kaito که مایکروسافت از آن برای مدیریت پروژه‌ها و خدمات LLM استفاده می‌کند، که بسیاری از آنها در نمونه‌های Azure Kubernetes میزبانی می‌شوند. این برای کار با مدل‌های استنتاج منبع باز بزرگ طراحی شده است.

اجرای برنامه های دات نت بدون سرور در AWS Lambda

شما با تعریف یک فضای کاری که شامل الزامات GPU مدل شما است، شروع می‌کنید. سپس Kaito تصاویر مدل را از مخازن شما در گره های GPU ارائه شده مستقر می کند. همانطور که با پیکربندی های از پیش تعیین شده کار می کنید، Kaito تصاویر مدل را در جایی قرار می دهد که بدون تنظیم اضافی اجرا شوند. تنها کاری که باید انجام دهید این است که با استفاده از یک SKU میزبان Azure با یک GPU پشتیبانی شده، یک پیکربندی nodepool اولیه را تنظیم کنید. به عنوان بخشی از راه‌اندازی گره‌ها با استفاده از Kaito، AKS به طور خودکار درایورهای صحیح و سایر پیش نیازهای ضروری را پیکربندی می‌کند.

داشتن Kaito در AKS یک پیشرفت مهم برای استقرار برنامه‌های کاربردی مبتنی بر مدل‌های از پیش آموزش‌دیده شده AI منبع باز است. و ساخت بر روی پروژه منبع باز موجود با میزبانی GitHub به جامعه گسترده تر اجازه می دهد تا به شکل گیری جهت آینده آن کمک کند.

ناوگان: مدیریت Kubernetes در مقیاس عظیم

مدیریت حجم کاری برای بسیاری از سازمان‌هایی که به معماری برنامه‌های ابر بومی نقل مکان کرده‌اند، مشکل بزرگی است. همانطور که برنامه ها و خدمات بیشتری به Kubernetes منتقل می شوند، اندازه و تعداد خوشه ها مشکل ساز می شود. در جایی که ممکن است آزمایش‌ها شامل مدیریت یک یا دو خوشه AKS باشد، اکنون باید با صدها یا حتی هزاران نفر کار کنیم و آن خوشه‌ها را در سراسر جهان مدیریت کنیم.

در حالی که می توانید ابزارهای خود را برای مدیریت این سطح از ارکستراسیون بسازید، مسائل پیچیده ای برای قرار دادن حجم کاری وجود دارد که باید در نظر گرفته شوند. AKS ابزارهای مدیریت ناوگان را به عنوان زمانبندی سطح بالاتر بالای سرویس های پایه Kubernetes توسعه داده است. این به شما امکان می‌دهد تا با استفاده از مجموعه‌ای از اکتشافی‌های متفاوت، بارهای کاری را مدیریت کنید، برای مثال، با استفاده از معیارهایی مانند هزینه محاسبه یا در دسترس بودن کلی منابع در یک منطقه Azure.

Microsoft .NET 6 همراه با لینوکس اوبونتو

Azure Kubernetes Fleet Manager برای کمک به شما طراحی شده است بیشترین بهره را از منابع Kubernetes شما می‌برد، به خوشه‌ها اجازه می‌دهد تا در صورت لزوم به یک ناوگان بپیوندند و آن را ترک کنند، با یک هواپیمای کنترل مرکزی برای پشتیبانی از ارکستراسیون حجم کار. می‌توانید Fleet را راهی برای برنامه‌ریزی و سازماندهی گروه‌های برنامه‌های کاربردی در نظر بگیرید، در حالی که Kubernetes برنامه‌هایی را که حجم کاری را تشکیل می‌دهند مدیریت می‌کند. مایکروسافت به اندازه هر شرکت دیگری به ابزاری مانند این نیاز دارد، زیرا بسیاری از برنامه ها و سرویس های خود را در Kubernetes اجرا می کند.

با استفاده از Microsoft 365 در کانتینرهای میزبان AKS، مایکروسافت انگیزه اقتصادی قوی برای به دست آوردن بیشترین ارزش از منابع خود دارد تا با اطمینان از استفاده بهینه از منابع خود، سود را به حداکثر برساند. مانند Kaito، Fleet بر روی یک پروژه منبع باز ساخته شده است که در یکی از مخازن GitHub Azure میزبانی می شود. این رویکرد همچنین به مایکروسافت اجازه می‌دهد تا اندازه‌های موجود برای خوشه‌های AKS را افزایش دهد، اکنون تا ۵۰۰۰ گره و ۱۰۰۰۰۰ پاد.

برنز به من گفت که این فلسفه پشت بسیاری از کارهایی است که مایکروسافت با Kubernetes در Azure انجام می دهد: “شروع با یک پروژه منبع باز، اما سپس وارد کردن آن به عنوان بخشی پشتیبانی شده از سرویس Azure Kubernetes. و سپس، بدیهی است که متعهد به استفاده از این فناوری و آسان و در دسترس ساختن آن برای همه است.”

این نکته در مورد “آسان کردن” در قلب بسیاری از چیزهایی است که مایکروسافت در KubeCon Europe اعلام کرد و بر اساس خدمات و ویژگی های موجود است. به عنوان مثال، برنز به پشتیبانی از AKS در Azure Copilot اشاره کرد، جایی که به جای استفاده از ابزارهای پیچیده، می‌توانید به سادگی سؤال کنید.

“با استفاده از یک مدل زبان طبیعی، شما همچنین می توانید بفهمید که در خوشه شما چه می گذرد – لازم نیست در دسته ای از صفحات مختلف و دسته ای از فایل های YAML مختلف جستجو کنید تا بفهمید مشکل کجاست، برنز گفت. “مدل به شما می گوید و مشکلات را در خوشه ای که دارید شناسایی می کند.”

کاهش ریسک استقرار با سیاست

یک ابزار جدید AKS با هدف کاهش خطرات مرتبط با استقرار Kubernetes است. ضمانت‌های استقرار AKS مبتنی بر تجربه مایکروسافت در اجرای خود و خود برنامه های Kubernetes مشتریان این درس‌ها در مجموعه‌ای از بهترین روش‌ها جمع‌آوری شده‌اند که برای کمک به جلوگیری از خطاهای رایج پیکربندی استفاده می‌شوند.

نحوه استفاده از binding پارامتر در حداقل API در ASP.NET Core

ضمانت‌های حفاظتی استقرار AKS فایل‌های پیکربندی را قبل از استقرار برنامه‌ها اسکن می‌کند و گزینه‌هایی برای “هشدار” یا “اجرا” در اختیار شما قرار می‌دهد. هشدارها اطلاعاتی درباره مشکلات ارائه می‌کنند، اما استقرار را متوقف نمی‌کنند، در حالی که اجرای خطاها را از استقرار مسدود می‌کند و خطرات کدهای خارج از کنترل را کاهش می‌دهد.

برنز خاطرنشان کرد: «سرویس Kubernetes در این مرحله به مدت هفت سال در Azure وجود دارد. و، می‌دانید، ما اشتباهات زیادی را دیده‌ایم – اشتباهاتی که می‌توانید مرتکب شوید که برنامه شما را کمتر قابل اعتماد کند، اما همچنین اشتباهاتی که می‌توانید مرتکب شوید که برنامه شما را ناامن می‌کند.» دانش جمعی حاصل از تیم های مهندسی Azure، از جمله مهندسان میدانی که با مشتریان و مهندسان گروه محصول Azure Kubernetes کار می کنند، برای ساخت این ریل های محافظ استفاده شده است. ورودی های دیگر از تیم امنیتی Azure آمده است.

در قلب پادمان‌های استقرار یک موتور خط مشی است که در خوشه‌های مدیریت شده نصب شده است. این برای تأیید پیکربندی‌ها استفاده می‌شود، و فعالانه آن‌هایی را که از بهترین شیوه‌ها پیروی نمی‌کنند، رد می‌کند. در حال حاضر خط‌مشی‌ها عمومی هستند، اما پیشرفت‌های آینده ممکن است به شما امکان دهد سیاست‌هایی را برای انواع برنامه‌های خاص، بر اساس توضیحات کاربر از کدشان، هدف‌گیری کنید.

Burns قطعاً نسبت به آینده Kubernetes در Azure و نقش آن در پشتیبانی از نسل فعلی و آینده برنامه های هوش مصنوعی خوش بین است. ما همچنان به دنبال این هستیم که ببینیم چگونه می‌توانیم به رهبری جامعه Kubernetes با نحوه تفکر آنها در مورد هوش مصنوعی کمک کنیم. و من فکر می کنم، این نوع پروژه آغاز آن است. اما بخش‌های زیادی وجود دارد که چگونه هوش مصنوعی را در بالای Kubernetes به خوبی انجام می‌دهید. و من فکر می‌کنم که هم به‌عنوان ارائه‌دهنده Kubernetes و هم به‌عنوان یک کاربر سنگین Kubernetes برای هوش مصنوعی در موقعیتی کاملاً منحصربه‌فرد هستیم تا در این بحث مشارکت کنیم.»