مایکروسافت ابزار شروع سریع Kubernetes Deis Labs را احیا می کند تا به شما کمک کند کدهای موجود را برای سرویس Azure Kubernetes بسته بندی کنید.
توسعه
توسعه بومی ابری آنطور که میتوانست آسان نیست. پلتفرمهایی مانند Kubernetes فرآیند اجرای مجموعهای از سرویسهای مقیاسپذیر را ساده میکنند، اما همچنان باید برنامهای را که در حال اجرا در ابر هستید ایجاد کنید. موضوع این نیست که کد خود را در یک ظرف قرار دهید و تنظیماتی را بنویسید YAML. برای داشتن یک بیلد که بتوان آن را در هر مکان و هر زمان مستقر کرد، به چیزهای بیشتری نیاز دارید.
پنج سال پیش، مایکروسافت تیم آزمایشگاههای Deis را خریداری کرد تا به آنها اجازه دهد به ساخت ابزارهای منبع باز Kubernetes ادامه دهند. این یکی از موفق ترین خریدها بوده است. این تیم بهروزرسانیهای عمدهای را برای ابزارهای بستهبندی Helm Kubernetes و سیستم گردش کار مبتنی بر رویداد Brigade، و همچنین WebAssembly در Kubernetes با Krustlets و استفاده از درایورهای دستگاه لینوکس برای نمایش سختافزار لبه در معرض Kubernetes در Akri، ارائه کرده است.
نخستین نسخه پس از اکتساب، Draft بود، مجموعه ای از ابزارهای خط فرمان که به شما کمک می کند تا به سرعت نمونه اولیه برنامه های کاربردی کانتینری بسازید، و داربست را برای توسعه کد بر روی رایانه شخصی خود قبل از فشار دادن آن به یک نمونه Kubernetes این یک آزمایش جالب بود، اما متأسفانه استقبال لازم از سوی جامعه برای انجام آن بیشتر از نسخه اولیه انجام نشد. اگر به لیست پروژههای Deis بروید، بهعنوان بایگانی شده علامتگذاری میشود، بدون برنامهریزی کاری. با این حال، به وضوح نشان خود را بر روی کسانی که از آن استفاده کردند، با Deis به طور مرتب از آنها پرسیده می شود که آیا آنها پیش نویس را بیشتر می کنند.
پیش نویس بازگشته است
مایکروسافت مطمئناً متوجه علاقه مداوم به Draft به عنوان یک ابزار شد، زیرا بیلد ۲۰۲۲ شاهد راهاندازی تیم Azure نسخه به روز شده، پیش نویس ۲، برای استفاده با Azure Kubernetes مدیریت شده خود Azure سرویس (AKS).
مانند نسخه اصلی، Draft 2 یک ابزار خط فرمان برای ساخت سریع برنامه Kubernetes است. برخلاف نسخه اصلی، در نظر گرفته شده است که کد موجود را گرفته و آن را برای استفاده در AKS بسته بندی کند، ظرف و فایل های مانیفست را برای اجرای برنامه شما در Kubernetes به همراه اسکریپت ها و گردش های کاری مورد نیاز برای استقرار آن از GitHub در Kubernetes بسازد. AKS.
شباهتهای زیادی بین دو نسخه Draft وجود دارد، اما بزرگترین تغییر تغییر از یک ابزار توسعه محلی به ابزاری مبتنی بر Azure CLI و کار مستقیم با ابر است. این مدلی است که با نحوه تکامل مایکروسافت محیط AKS مطابقت دارد و آن را برای سیستمهای داخلی از طریق Azure Stack HCI یا استفاده از Azure Arc در سرورهای خود ارائه میدهد. با Visual Studio Code که ابزارهای توسعه از راه دور را برای Azure ارائه می دهد، از جمله Azure CLI، و با GitHub Codespaces که راهی برای ارائه یک تجربه کامل توسعه دهنده بومی ابری به دسکتاپ شما است، از زمان انتشار پیش نویس اصلی، جهان به طور قابل توجهی تغییر کرده است.
ابزار Draft 2 روی Azure، GitHub و AKS متمرکز است، اما یک پروژه منبع باز باقی می ماند، بنابراین این گزینه وجود دارد که فورک خود را برای محیط Kubernetes انتخابی خود ایجاد کنید، خواه خود میزبان باشد یا در AWS یا GCP اجرا شود. . مانند اکثر ابزارهای Kubernetes، در Go نوشته شده است، با گردش کار در YAML. برای ایجاد نصب Draft 2 خود، مخزن GitHub آن را کلون کنید. با نصب Go 1.118 یا بهتر، قبل از افزودن آن به مسیر سیستم خود، از make آشنا برای ساخت باینری Draft استفاده کنید.
استفاده از پیش نویس ۲ با Azure
نسخه اولیه Draft 2 بخشی از aks-preview است گسترش به Azure CLI. می توانید Azure CLI را به صورت محلی یا در Azure به عنوان بخشی از محیط توسعه و مدیریت Cloud Shell اجرا کنید. این بدان معناست که بر روی BL-Delridge داخلی مبتنی بر دبیان مایکروسافت که میزبان پوسته ابری Azure است، اجرا می شود. این باید تضمین کند که Draft 2 روی هر لینوکس مشتق شده از دبیان با حداقل کار اجرا می شود، زیرا تنها تفاوت بین CBL-Delridge و Debian این است که مایکروسافت تمام بسته ها را خودش به دلایل امنیتی کامپایل می کند.
پیشنیازهای زیادی برای استفاده از Draft 2 وجود ندارد. تنها چیزی که نیاز دارید Azure CLI، یک خوشه AKS و یک نمونه Azure Container Registry است. هنگامی که افزونه aks-preview را نصب کردید، ابزارهای مورد نیاز و مکانی را برای ذخیره و اجرای کانتینرهای برنامه در اختیار شما قرار می دهد. نصب برنامه افزودنی با استفاده از دستور زیر به اندازه کافی ساده است: az extension add —name aks-preview
. از بهروزرسانی برنامه افزودنی az —name aks-preview
استفاده کنید تا مطمئن شوید آخرین نسخه را دارید.
با Azure CLI که برای استفاده از Draft 2 پیکربندی شده است، می توانید یک برنامه موجود را بگیرید و آن را به یک برنامه Kubernetes تبدیل کنید. از فهرست برنامه خود، Azure CLI و Draft را فراخوانی کنید: az aks draft create
. اگر ترجیح می دهید، می توانید از پرچم مقصد Draft برای هدف قرار دادن یک فهرست خاص استفاده کنید. این فایلهای مورد نیاز برای ساخت برنامه شما، از جمله Dockerfile لازم را تولید میکند.
خودکار کردن پیش نویس با اقدامات GitHub
جایی که Draft 2 با نسخه اصلی تفاوت دارد، ادغام آن با بخشهای کلیدی گردش کار استقرار Azure و GitHub است. اکنون میتوانید به سرعت یک اقدام GitHub بسازید که فرآیند انتقال مصنوعات کد از GitHub به AKS را خودکار میکند. اکنون پیش نویس دارای یک فرمان draft setup-gh
است که با استفاده از OpenID Connect در حساب GitHub شما ثبت می شود و آن را به رجیستری کانتینر Azure شما پیوند می دهد. هنگامی که آن پیوند برقرار شد، شما آماده هستید تا گردش کار استقرار خود را ایجاد کنید، از کلون محلی برنامه خود شروع کنید. از az aks draft generate-workflow
برای ساخت اکشن استفاده کنید.
هنگامی که یک اکشن ساخته شد، به git نیاز دارید تا آن را به مخزن برنامه خود در GitHub برگرداند و از طریق ابزار Actions آماده استفاده باشد. سپس میتوانید کد را بهصورت محلی با استفاده از ابزارهایی مانند Visual Studio Code ویرایش کنید، و با استفاده از افزونه VS Code GitHub از طریق درخواستهای کششی، آن را به یک شاخه مناسب ذخیره کنید. اگر اقدام خود را خودکار کرده باشید، یک درخواست pull یک ساخت را راهاندازی میکند و برنامه شما را برای آزمایش به AKS تحویل میدهد.
مایکروسافت میانبری برای استفاده از Draft با یک برنامه جدید در یک مخزن کلون شده جدید ارائه کرده است. با استفاده از دستور draft up
، اجازه دسترسی را می دهید و یک عمل را در یک خط ایجاد می کنید. اگر نیاز به تغییر یک اقدام دارید، دوباره از generate-workflow
استفاده کنید. در نهایت، میتوانید از دستور بهروزرسانی پیشنویس برای فعال کردن مسیریابی برنامه وب AKS استفاده کنید. یک کنترلر ورودی مبتنی بر Nginx دسترسی اینترنت را به برنامه شما اضافه می کند و از ابزار Open Service Mesh در AKS برای کمک به ایمن سازی کد شما پشتیبانی می کند.
خوب است که میبینیم مایکروسافت درفت را برمیگرداند. ابزارهایی مانند این یک گام اساسی برای هرگونه مهاجرت بومی ابری، گرفتن کد و خودکارسازی فرآیند ساخت اسکریپت ها و مانیفست های مورد نیاز برای اجرای آن در Kubernetes هستند. همچنین دیدن یکی دیگر از ابزارهای Azure که به ویژگی GitHub وابسته است، جالب است، رویکردی که احتمالاً در آینده با همکاری فزاینده این دو سازمان روی پروژهها، رواج بیشتری خواهد یافت.
پست های مرتبط
Microsoft Azure توسعه Kubernetes را با یک پیش نویس جدید آسان می کند
Microsoft Azure توسعه Kubernetes را با یک پیش نویس جدید آسان می کند
Microsoft Azure توسعه Kubernetes را با یک پیش نویس جدید آسان می کند