برنامه ASP.NET را روی Windows Server در Compute Engine قرار دهید

۱. مرور کلی

ASP.NET یک چارچوب وب متن‌باز برای ساخت برنامه‌ها و سرویس‌های وب مدرن با .NET است. ASP.NET وب‌سایت‌هایی مبتنی بر HTML5، CSS و جاوا اسکریپت ایجاد می‌کند که ساده و سریع هستند و می‌توانند میلیون‌ها کاربر را پوشش دهند.

در این آزمایش، شما یک برنامه ساده ASP.NET را روی ویندوز سرور که روی Compute Engine اجرا می‌شود، مستقر می‌کنید. این آزمایشگاه کد بر اساس آزمایشگاه کد Deploy Windows Server with ASP.NET Framework to Compute Engine ساخته شده است. شاید بهتر باشد ابتدا آن آزمایش را انجام دهید.

علاوه بر این، برای نوشتن برنامه ASP.NET و استقرار آن در Compute Engine به Visual Studio 2013 یا بالاتر نیاز خواهید داشت.

آنچه یاد خواهید گرفت

  • چگونه یک برنامه ساده ASP.NET ایجاد کنیم؟
  • نحوه اجرای برنامه ASP.NET به صورت محلی در ویژوال استودیو.
  • نحوه استقرار و اجرای برنامه ASP.NET خود در ویندوز سرور با استفاده از Compute Engine.

آنچه نیاز دارید

چگونه از این آموزش استفاده خواهید کرد؟

فقط تا انتها بخوانید آن را بخوانید و تمرین‌ها را انجام دهید

تجربه خود را با پلتفرم ابری گوگل چگونه ارزیابی می‌کنید؟

تازه کار متوسط ماهر

۲. تنظیمات و الزامات

تنظیم محیط خودتنظیم

شما باید پروژه پلتفرم ابری گوگل خود را از آزمایشگاه قبلی داشته باشید، بنابراین نیازی به ایجاد یک پروژه جدید نیست. وارد کنسول پلتفرم ابری گوگل ( console.cloud.google.com ) شوید و پروژه را از آزمایشگاه قبلی انتخاب کنید.

۳. برنامه ASP.NET را دانلود کنید

نمونه را به صورت فایل زیپ دانلود کنید و آن را از حالت فشرده خارج کنید.

از طرف دیگر، می‌توانید مخزن git آن را کلون کنید.

git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git

در هر صورت، شما باید یک پوشه getting-started-dotnet با محتویات زیر داشته باشید.

1acce2c66bc3b8aa.png

۴. برنامه را به صورت محلی اجرا کنید

aspnet\1-hello-world\hello-world.sln دوبار کلیک کنید. این کار solution را در Visual Studio باز می‌کند.

8a699ba7495ab79e.png

به WebApiConfig.cs نگاهی بیندازید . این فایل شامل یک کنترل‌کننده HTTP ساده HelloWorld است.

public class HelloWorldHandler : HttpMessageHandler
{
  protected override Task<HttpResponseMessage> SendAsync(
       HttpRequestMessage request,
       CancellationToken cancellationToken)
  {
    return Task.FromResult(new HttpResponseMessage()
    {
      Content = new ByteArrayContent(Encoding.UTF8.GetBytes("Hello World."))
    });
  }
};

در ویژوال استودیو، برای ساخت و اجرای برنامه، کلید F5 را فشار دهید. پس از اینکه ویژوال استودیو وابستگی‌های NuGet را دانلود کرد و برنامه را ساخت، باید پیام Hello World را در مرورگر خود مشاهده کنید.

77768b92a41434c2.png

وقتی مطمئن شدید که برنامه به صورت محلی اجرا می‌شود، Shift + F5 را فشار دهید تا برنامه متوقف شود.

۵. ویندوز سرور را با چارچوب ASP.NET مستقر کنید

در این بخش، یاد خواهیم گرفت که چگونه یک نمونه ماشین مجازی جدید Google Compute Engine با ویندوز سرور و ASP.NET Framework نصب شده با استفاده از Cloud Marketplace از Google Cloud Console ایجاد کنیم.

وارد کنسول ابری گوگل شوید

از یک تب یا پنجره مرورگر دیگر، به آدرس https://console.cloud.google.com به کنسول ابری گوگل بروید. از اطلاعات ورود به سیستمی که هنگام ثبت نام در پلتفرم ابری گوگل تنظیم کرده‌اید یا از اطلاعاتی که توسط ناظر آزمایشگاه به شما داده شده است، استفاده کنید.

f6cb1591046097da.png

در کنسول گوگل کلود، روی آیکون منو برای محصولات و خدمات در سمت چپ بالای صفحه کلیک کنید:

۳۲۱۵۲۶۲۴d۸۷۸d۹f۸.png

سپس به بازار ابری بروید

6c08c9a31e3a9c6c.png

جستجوی چارچوب ASP.NET

برای جستجوی ASP.NET Framework عبارت ASP.NET را تایپ کنید و سپس روی کادر نتایج زیر کلیک کنید.

d64d04962212c3c1.png

راه‌اندازی روی موتور محاسباتی

در صفحه بعد، روی Launch on Compute Engine کلیک کنید.

پارامترهای زیادی وجود دارد که می‌توانید هنگام ایجاد یک نمونه جدید پیکربندی کنید. بیایید از موارد زیر استفاده کنیم:

نام

gcelab

نام استقرار

windows-aspnet-instance

منطقه

europe-west1-d برای اطلاعات بیشتر در مورد مناطق، به مستندات مناطق و نواحی مراجعه کنید.

نوع دستگاه

1 vCPU (n1-standard-1) پردازنده n1-standard-1 با ۱ هسته و ۳.۷۵ گیگابایت رم برای وب‌سایت ASP.NET ما کاملاً کافی است. با این حال، می‌توانید ماشین‌های کوچک‌تر یا بزرگ‌تری را انتخاب کنید و تا ۳۲ هسته / ۲۰۸ گیگابایت رم را انتخاب کنید. برای کسب اطلاعات بیشتر در مورد این و انواع ماشین‌های سفارشی، به مستندات Machine Types مراجعه کنید. توجه : یک پروژه جدید دارای سهمیه منابع پیش‌فرض است که ممکن است تعداد هسته‌های CPU را محدود کند. می‌توانید برای پروژه‌های خود درخواست بیشتری کنید.

نسخه سیستم عامل ویندوز سرور

2016

نوع دیسک بوت

Standard persistent disk توجه: شما می‌توانید به صورت اختیاری یک درایو دیسک حالت جامد (SSD) با عملکرد بالاتر را انتخاب کنید. به گزینه‌های ذخیره‌سازی مراجعه کنید.

حجم دیسک به گیگابایت

ما از مقدار پیش‌فرض ۱۰۰ گیگابایت استفاده می‌کنیم، اما شما می‌توانید بسته به نیاز خود آن را کم یا زیاد کنید.

فایروال

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP traffic مقادیر پیش‌فرض را که قوانین فایروال را برای اجازه دادن به ترافیک HTTP، HTTPS به همراه ترافیک WebDeploy و RDF ایجاد می‌کنند، نگه دارید.

برای ایجاد نمونه ماشین مجازی جدید با ویندوز سرور و ASP.NET Framework روی Deploy کلیک کنید! این شما را به صفحه جدیدی می‌برد که می‌توانید پیشرفت کار را در آن مشاهده کنید.

۳۲۷۶c۶d۳۶۴۷fd۳۶.png

پس از اتمام، از منوی سمت چپ به Compute Engine بروید و سپس VM Instances را انتخاب کنید. باید ماشین مجازی جدید را در لیست VM Instances مشاهده کنید.

f50b1cfd8b1f4b3.png

اگر روی External IP کلیک کنید، باید وب‌سایت پیش‌فرض IIS که از نمونه ارائه می‌شود را نیز مشاهده کنید.

iis.PNG

توجه داشته باشید که می‌توانید از طریق ریموت دسکتاپ (RDP) به دستگاه متصل شوید، اما ابتدا باید یک کاربر ویندوز و رمز عبور ایجاد کنیم.

۶. یک کاربر و رمز عبور ویندوز ایجاد کنید

برای ایجاد کاربر و رمز عبور ویندوز، گزینه Create or reset Windows password را انتخاب کنید.

cf9b67269c4fa290.png

این یک پنجره جدید باز می‌کند که می‌توانید در آن یک کاربر ایجاد کنید. پیش‌فرض را نگه دارید و تنظیم را انتخاب کنید. پس از چند ثانیه، باید یک پنجره رمز عبور جدید ویندوز با رمز عبور تازه ایجاد شده داشته باشید. رمز عبور را یادداشت کنید، زیرا در بخش بعدی به آن نیاز خواهید داشت.

۷. برنامه را روی ویندوز سرور خود روی Compute Engine مستقر کنید

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

ابتدا، باید IP خارجی نمونه Compute Engine را که در Deploy Windows Server with ASP.NET Framework to Compute Engine مستقر کرده‌اید، پیدا کنید. در Cloud Console، به Compute > VM Instances بروید، نمونه خود را پیدا کنید و آدرس IP خارجی آن را یادداشت کنید.

8163b495fda4a4c5.png

حالا به نام کاربری و رمز عبور ویندوز که در مرحله قبل ایجاد کردید نیاز خواهید داشت.

در Visual Studio Solution Explorer ، روی پروژه خود کلیک راست کرده و از منوی زمینه، گزینه Publish را انتخاب کنید.

31dc67741553583e.png

در پنجره‌ی «انتشار وب» ، «سفارشی» را به عنوان هدف انتشار خود انتخاب کنید.

در پنجره‌ی «New Custom Profile» ، نامی برای پروفایل استقرار انتخاب کنید و روی «OK» کلیک کنید.

مشخصات خود را به شرح زیر پر کنید.

سرور

The external IP address of your Compute Engine instance. This address can be found on the صفحه‌ی نمونه‌های ماشین مجازی in the Cloud Console. The IP address is موقت است , which is sufficient for our purposes.

نام سایت

Default Web Site توجه : نام سایتی که در اینجا وارد می‌کنید باید با نامی که در IIS Manager روی نمونه Compute Engine شما نمایش داده می‌شود، مطابقت داشته باشد.

نام کاربری

The username of the Windows user account you created on your Compute Engine instance.

رمز عبور

The password of the Windows user account you created on your Compute Engine instance.

آدرس اینترنتی مقصد

http:// نکته : آدرس اینترنتی مقصد، آدرسی است که صفحه شما پس از استقرار، در آن قابل دسترسی خواهد بود.

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

5587e66e1f61acd6.png

از آنجا که نصب Microsoft IIS در استقرار شما به طور پیش‌فرض از یک گواهی خودامضا استفاده می‌کند، در طول فرآیند اعتبارسنجی با خطای Certificate Error مواجه خواهید شد. کادر Save this certificate for future sessions of Visual Studio را علامت بزنید و برای پذیرش گواهی، روی Accept کلیک کنید.

e7cc4bdef3064b9b.png

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

۱۰۱۴۵۵۴۴۸۵ba6720.png

برای انتشار برنامه، روی انتشار کلیک کنید. پس از اتمام انتشار، ویژوال استودیو برنامه را در مرورگر وب پیش‌فرض شما باز می‌کند.

feab07f5ac573240.png

۸. پاکسازی

همین! حالا وقت آن رسیده که منابعی را که استفاده کرده‌اید، پاکسازی کنید (برای صرفه‌جویی در هزینه و اینکه شهروند ابری خوبی باشید).

شما می‌توانید موارد را حذف کنید یا به سادگی آنها را متوقف کنید، اگرچه به خاطر داشته باشید که موارد متوقف شده هنوز هم می‌توانند هزینه‌های مربوط به ذخیره‌سازی را متحمل شوند.

a3152ac7b76cdd4e.png

البته، می‌توانید کل پروژه را نیز حذف کنید، اما هرگونه تنظیمات صورتحسابی که انجام داده‌اید را از دست خواهید داد (غیرفعال کردن صورتحساب پروژه ابتدا الزامی است). علاوه بر این، حذف یک پروژه فقط پس از پایان چرخه صورتحساب فعلی، از صدور صورتحساب آن جلوگیری می‌کند.

۹. تبریک می‌گویم!

موتور محاسباتی گوگل (Google Compute Engine) پایه و اساس زیرساخت به عنوان سرویس (Infrastructure-as-a-Service) پلتفرم ابری گوگل است. همانطور که مشاهده کردید، استقرار یک برنامه ASP.NET در ویندوز سرور با استفاده از موتور محاسباتی (Compute Engine) بسیار آسان است.

آنچه ما پوشش داده‌ایم

  • چگونه یک برنامه ساده ASP.NET ایجاد کنیم؟
  • نحوه اجرای برنامه ASP.NET به صورت محلی در ویژوال استودیو.
  • نحوه استقرار و اجرای برنامه ASP.NET خود در ویندوز سرور با استفاده از Compute Engine.

مراحل بعدی

مجوز

این اثر تحت مجوز عمومی Creative Commons Attribution 2.0 منتشر شده است.

/