در حال توسعه با Cloud Code

1. اهداف

در این آزمایشگاه شما:

  • پلاگین های Cloud Code را کاوش کنید
  • مستقر در خوشه Kubernetes
  • استریم گزارش‌های kubernetes
  • از بارگذاری مجدد داغ تغییرات استفاده کنید
  • اشکال زدایی برنامه های Kubernetes زنده

2. آماده سازی فضای کاری

برنامه را کلون کنید

برای شبیه سازی مخزن و باز کردن آن در محیط توسعه خود:

  1. ویرایشگر Cloud Shell را با مراجعه به آدرس زیر باز کنید

https://ide.cloud.google.com

  1. در پنجره ترمینال، منبع برنامه را با دستور زیر کلون کنید:

git clone https://github.com/viglesiasce/sample-app.git -b golden-path

  1. به دایرکتوری تغییر دهید و فضای کاری IDE را روی ریشه مخزن تنظیم کنید

cd sample-app && cloudshell workspace .

Minikube را شروع کنید

در این بخش، با استفاده از یک نسخه محلی از kubernetes به نام Minikube، برنامه خود را می سازید، آزمایش می کنید، استقرار می دهید و به آن دسترسی پیدا می کنید.

  1. در ترمینال، minikube را با اجرای زیر شروع کنید:

minikube start

Minikube یک خوشه محلی Kubernetes را در Cloud Shell شما راه‌اندازی می‌کند، این راه‌اندازی چند دقیقه طول می‌کشد. در حالی که شروع می شود، چند لحظه وقت بگذارید و در مرحله بعد رابط های مختلف ارائه شده توسط Cloud Code را مرور کنید.

3. کاوش پلاگین Cloud Code

Cloud Code پشتیبانی IDE را برای چرخه توسعه کامل برنامه های Kubernetes و Cloud Run، از ایجاد یک برنامه از یک الگوی موجود گرفته تا نظارت بر منابع برنامه مستقر شما، ارائه می دهد. شما از دستورات و نماهای مختلف ارائه شده توسط Cloud Code استفاده خواهید کرد. در این مرحله با رابط های اصلی آشنا می شوید.

نماهای کاوشگر را از نوار فعالیت مرور کنید

چندین پنل رابط کاربری از نوار Activity قابل دسترسی هستند. برای آشنایی اجمالی با نماهای مختلف روی نمادهای هر نما کلیک کنید

API Explorer:

  • روی نماد Cloud Code - Cloud APIs Cloud Code  از نوار فعالیت کلیک کنید. جزئیات بیشتر برای کار در این نما در مستندات موجود است.

ded1723c524edd72.png

کاوشگر مدیر مخفی:

  • روی نمای Secret Manager  در نوار فعالیت کلیک کنید. جزئیات بیشتر برای کار در این نما در مستندات موجود است

89f88159bcf79fa9.png

Cloud Run Explorer:

  • با استفاده از نماد Cloud Run در نوار Activity در سمت چپ، به Cloud Run Explorer بروید. جزئیات بیشتر برای کار در این نما در مستندات موجود است

a1d583fd06413011.png

کاوشگر Kubernetes:

  • با استفاده از نماد موجود در نوار فعالیت در سمت چپ  به Kubernetes Explorer بروید. جزئیات بیشتر برای کار در این نما در مستندات موجود است

b2b8ab3975c5b0c9.png

دستورات نوار وضعیت را مرور کنید

از طریق نشانگر موجود در نوار وضعیت می توان به دستورات پرکاربرد به سرعت دسترسی پیدا کرد.

  • نشانگر برنامه افزودنی Cloud Code را در نوار وضعیت پیدا کنید d61e85cf23a32a40.png  و روی آن کلیک کنید.
  • دستورات مختلف موجود برای اجرا و اشکال زدایی در CloudRun و Kubernetes را مرور کنید
  • برای جزئیات بیشتر و نمونه فعالیت ها بر روی Open Welcome Page کلیک کنید

دستورات پالت فرمان را مرور کنید

دستورات اضافی از پالت فرمان در دسترس هستند. لیست دستوراتی را که می توانید به آنها دسترسی داشته باشید مرور کنید.

  • پالت فرمان را باز کنید (Ctrl/Cmd+Shift+P را فشار دهید) و سپس کد Cloud را تایپ کنید تا دستورات موجود فیلتر شود.
  • از کلیدهای جهت دار خود برای چرخش در لیست دستورات استفاده کنید.

4. استقرار در خوشه Kubernetes

در این بخش، برنامه خود را می سازید، آزمایش می کنید، استقرار می دهید و به آن دسترسی دارید.

مراحل زیر ساخت کد منبع را شروع کرده و سپس تست ها را اجرا کنید. ساخت و آزمایش چند دقیقه طول می کشد تا اجرا شود. این تست ها شامل تست های واحد و یک مرحله اعتبار سنجی است که قوانین تنظیم شده برای محیط استقرار را بررسی می کند. این مرحله اعتبار سنجی قبلاً پیکربندی شده است، و تضمین می کند که شما در مورد مشکلات استقرار هشدار دریافت می کنید، حتی زمانی که هنوز در محیط توسعه خود کار می کنید.

  1. در قسمت پایین Cloud Shell Editor، Cloud Code  را انتخاب کنید d61e85cf23a32a40.png .
  2. در پنلی که در بالا ظاهر می شود، Run on Kubernetes را انتخاب کنید. اگر از شما خواسته شد، بله را برای استفاده از زمینه minikube Kubernetes انتخاب کنید.
  3. تب Output را در قسمت پایینی انتخاب کنید 4866761cb9c691e2.png برای مشاهده پیشرفت و اعلان ها
  4. "Kubernetes: Run/Debug - Detailed" را در منوی کشویی در سمت راست انتخاب کنید c5e31091d464dbcf.png برای مشاهده جزئیات بیشتر و سیاهههای مربوط به جریان مستقیم از کانتینرها

وقتی ساخت و آزمایش انجام شد، برگه Output می گوید: Resource deployment/sample-app-dev status completed successfully و دو URL لیست شده است.

  1. در ترمینال Cloud Code، ماوس را روی اولین URL در خروجی نگه دارید (http://localhost:8080) و سپس در نکته ابزار ظاهر شده Open Web Preview را انتخاب کنید.

نسخه محلی برنامه در مرورگر شما باز می شود. این نسخه از برنامه در خوشه Kubernetes minikube در حال اجرا است.

  1. در مرورگر خود، صفحه را بازخوانی کنید. عدد کنار شمارنده افزایش می‌یابد و نشان می‌دهد که برنامه به تازه‌سازی شما پاسخ می‌دهد.

در مرورگر خود، این صفحه را باز نگه دارید تا بتوانید هنگام ایجاد هر گونه تغییر در محیط محلی خود، برنامه را مشاهده کنید.

5. از بارگذاری مجدد داغ تغییرات استفاده کنید

در این بخش، تغییری در برنامه ایجاد می‌کنید و تغییر را در زمانی که برنامه در کلاستر محلی Kubernetes اجرا می‌شود، مشاهده می‌کنید. در برگه خروجی کانال Kubernetes: Run/Debug، علاوه بر url های برنامه، خروجی نیز می گوید Watching for changes. این به این معنی است که حالت تماشا فعال است. در حالی که Cloud Code در حالت تماشا است، Cloud Code هر گونه تغییر ذخیره شده در مخزن شما را شناسایی می کند و به طور خودکار برنامه را با آخرین تغییرات بازسازی و دوباره اجرا می کند.

  1. در Cloud Shell Editor، به فایل main.go بروید.
  2. در این فایل main.go در خط 23 رنگ را از سبز به آبی تغییر دهید.
  3. فایل را ذخیره کنید.

Cloud Code تشخیص می دهد که تغییر در برنامه ذخیره شده است و تغییر را به طور خودکار مجدداً اجرا می کند. برگه خروجی نشان می دهد که به روز رسانی آغاز شد. اجرای این تغییر مکان چند دقیقه طول می کشد.

این بازسازی خودکار شبیه بارگذاری مجدد کد داغ است که یک ویژگی برای برخی از انواع برنامه ها و فریم ورک ها است.

  1. وقتی ساخت تمام شد، به مرورگر خود بروید، جایی که برنامه را باز کرده اید و صفحه را بازخوانی کنید.

وقتی تازه می کنید، رنگ بالای جدول از آبی به سبز تغییر می کند.

این تنظیمات به شما این بارگذاری مجدد خودکار را برای هر معماری، با هر مؤلفه ای می دهد. هنگام استفاده از Cloud Code و minikube، هر چیزی که در Kubernetes در حال اجرا است این قابلیت بارگیری مجدد کد داغ را دارد.

6. اشکال زدایی برنامه های Kubernetes زنده

شما برنامه را اجرا کرده اید، تغییری ایجاد کرده اید و برنامه در حال اجرا را مشاهده کرده اید. در این بخش، برنامه را اشکال زدایی می کنید تا مطمئن شوید که آماده بازگشت به مخزن اصلی است.

برای این مثال اشکال زدایی، ما بر روی بخش کد مربوط به صفحه شمارنده تمرکز خواهیم کرد.

  1. در Cloud Shell Editor، فایل main.go را باز کنید
  2. با کلیک بر روی شماره سمت چپ خط 82 (اگر اشتباه است != صفر {) یک نقطه شکست در برنامه تعیین کنید.
  3. در پنجره آبی در پایین Cloud Shell Editor، Cloud Code را انتخاب کنید d61e85cf23a32a40.png .
  4. در پنلی که در بالا ظاهر می شود، Debug on Kubernetes را انتخاب کنید.

Cloud Code اجرا می‌شود و اشکال‌زدایی‌کننده‌ها را متصل می‌کند تا بتوانید به وضعیت حافظه برنامه دسترسی داشته باشید، نه فقط به رفتار کاربر در مواجهه با برنامه.

  1. در پایان فرآیند استقرار، یک اعلان در بالای پنجره ظاهر می شود که از شما می خواهد دایرکتوری موجود در ظرفی را که برنامه در آن مستقر شده است تأیید کنید. f96e9a814edb44f4.png

بررسی کنید که مقدار روی /go/src/app تنظیم شده است و برای پذیرش مقدار، اینتر را فشار دهید

  1. منتظر بمانید تا دیباگر استقرار را تمام کند. وقتی نوار وضعیت نارنجی شد و خروجی "Attached debugger to container "sample-app-dev-..." successfully ، می‌دانید که کامل شده است.
  2. در ترمینال Cloud Code، ماوس را روی اولین URL در خروجی نگه دارید (http://localhost:8081) و سپس در نکته ابزار ظاهر شده Open Web Preview را انتخاب کنید. صفحه به پایان نمی رسد که مورد انتظار است.
  3. به IDE که اکنون اشکال زدا ظاهر می شود، برگردید. کد در تب ظاهر می شود و پشته تماس را می بینید که چه متغیرهایی در آن قسمت از کد موجود است. می توانید متغیرها - محلی را گسترش دهید تا در اینجا مقدار متغیر شمارنده فعلی را ببینید.
  4. برای اجازه دادن به صفحه برای ادامه بارگذاری، نماد "ادامه" را در پنجره اشکال زدایی انتخاب کنید 8f395391c4828528.png
  5. پس از اتمام اشکال زدایی، روی دکمه توقف کلیک کنید تا هر یک از موضوعات در حال اجرا خاتمه یابد. 81d142a9e1a2c01b.png