Compute Engine'de Windows Server'a ASP.NET uygulamasını dağıtma

1. Genel Bakış

ASP.NET, .NET ile modern web uygulamaları ve hizmetleri oluşturmaya yönelik açık kaynaklı bir web çerçevesidir. ASP.NET, HTML5, CSS ve JavaScript'e dayalı olarak basit, hızlı ve milyonlarca kullanıcıya ölçeklenebilen web siteleri oluşturur.

Bu laboratuvarda, Compute Engine'de çalışan Windows Server'a basit bir ASP.NET uygulaması dağıtacaksınız. Bu codelab, ASP.NET Framework ile Windows Server'ı Compute Engine'e Dağıtma adlı codelab'e dayanmaktadır. Önce bu laboratuvarı tamamlamanız önerilir.

Ayrıca, ASP.NET uygulamanızı yazmak ve Compute Engine'e dağıtmak için Visual Studio 2013 veya sonraki bir sürümü kullanmanız gerekir.

Neler öğreneceksiniz?

  • Basit bir ASP.NET uygulaması oluşturma
  • ASP.NET uygulamasını Visual Studio'da yerel olarak çalıştırma
  • ASP.NET uygulamanızı Compute Engine'deki bir Windows Server'a dağıtma ve çalıştırma

İhtiyacınız olanlar

Bu eğitimi nasıl kullanacaksınız?

Yalnızca okuyun Okuyun ve alıştırmaları tamamlayın

Google Cloud Platform deneyiminizi nasıl değerlendirirsiniz?

Başlangıç Orta İleri

2. Kurulum ve Gereksinimler

Yönlendirmesiz ortam kurulumu

Önceki laboratuvardan Google Cloud Platform projeniz zaten olmalıdır. Bu nedenle yeni bir proje oluşturmanız gerekmez. Google Cloud Platform Console'da ( console.cloud.google.com) oturum açın ve önceki laboratuvardaki projeyi seçin.

3. ASP.NET uygulamasını indirme

Örneği ZIP dosyası olarak indirip ayıklayın.

Alternatif olarak, git deposunu klonlayabilirsiniz.

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

Her iki durumda da aşağıdaki içeriklerin bulunduğu bir getting-started-dotnet klasörünüz olmalıdır.

1acce2c66bc3b8aa.png

4. Uygulamayı yerel olarak çalıştırma

aspnet\1-hello-world\hello-world.sln simgesini çift tıklayın. Bu işlem, çözümü Visual Studio'da açar.

8a699ba7495ab79e.png

WebApiConfig.cs. örneğine göz atın. Bu örnekte basit bir HelloWorld HTTP işleyicisi yer alır.

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."))
    });
  }
};

Visual Studio'da uygulamayı oluşturup çalıştırmak için F5 tuşuna basın. Visual Studio, NuGet bağımlılıklarını indirip uygulamayı oluşturduktan sonra tarayıcınızda "Hello World" mesajının görünmesi gerekir.

77768b92a41434c2.png

Uygulamanın yerel olarak çalıştığından emin olduktan sonra uygulamayı durdurmak için Üst Karakter + F5 tuşlarına basın.

5. ASP.NET Framework ile Windows Server'ı dağıtma

Bu bölümde, Google Cloud Console'dan Cloud Marketplace'i kullanarak Windows Server ve ASP.NET Framework'ün yüklü olduğu yeni bir Google Compute Engine sanal makine örneği oluşturmayı öğreneceğiz.

Google Cloud Console'a giriş yapma

Başka bir tarayıcı sekmesinden veya penceresinden https://console.cloud.google.com adresine giderek Google Cloud Console'a gidin. Google Cloud Platform'a kaydolduğunuzda ayarladığınız veya laboratuvar yöneticisi tarafından size verilen oturum açma kimlik bilgilerini kullanın.

f6cb1591046097da.png

Google Cloud Console'da ekranın sol üst kısmındaki Ürünler ve hizmetler için Menü simgesini tıklayın:

32152624d878d9f8.png

Ardından Cloud Marketplace'e gidin.

6c08c9a31e3a9c6c.png

ASP.NET Framework'ü arama

ASP.NET Framework'ü aramak için ASP.NET yazın ve ardından aşağıdaki sonuç kutusunu tıklayın.

d64d04962212c3c1.png

Compute Engine'de başlatma

Sonraki ekranda Launch on Compute Engine'i (Compute Engine'de başlat) tıklayın.

Yeni bir örnek oluştururken yapılandırabileceğiniz birçok parametre vardır. Aşağıdakileri kullanalım:

Ad

gcelab

Dağıtım adı

windows-aspnet-instance

Alt Bölge

europe-west1-dAlt bölgeler hakkında daha fazla bilgiyi Bölgeler ve Alt Bölgeler dokümanında bulabilirsiniz.

Makine Türü

1 vCPU (n1-standard-1)1 çekirdek ve 3,75 GiB RAM ile n1-standard-1, ASP.NET web sitemiz için fazlasıyla yeterli. Ancak 32 çekirdekli / 208 GiB RAM'e kadar daha küçük veya daha büyük makineler seçebilirsiniz. Bu ve özel makine türleri hakkında daha fazla bilgiyi Makine Türleri dokümanında bulabilirsiniz. Not: Yeni projeler için varsayılan bir kaynak kotası bulunmaktadır. Bu kota nedeniyle CPU çekirdeği sayısı sınırlanabilir. Projeleriniz için daha fazla CPU çekirdeği isteğinde bulunabilirsiniz.

Windows Server İşletim Sistemi Sürümü

2016

Önyükleme Diski Türü

Standard persistent diskNot: İsteğe bağlı olarak daha yüksek performanslı bir katı hal disk sürücüsü (SSD) seçebilirsiniz. Depolama alanı seçenekleri başlıklı makaleye bakın.

Disk boyutu (GB)

100GBVarsayılan olarak 100 GB kullanıyoruz ancak ihtiyaçlarınıza göre bu değeri artırabilir veya azaltabilirsiniz.

Güvenlik Duvarı

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP trafficHTTP, HTTPS trafiğinin yanı sıra WebDeploy ve RDF trafiğine izin veren güvenlik duvarı kuralları oluşturacak varsayılan ayarları koruyun.

Windows Server ve ASP.NET Framework ile yeni sanal makine örneğini oluşturmak için Dağıt'ı tıklayın. Bu işlem sizi ilerlemeyi görebileceğiniz yeni bir sayfaya yönlendirir.

3276c6d3647fd36.png

İşlem tamamlandıktan sonra soldaki menüden Compute Engine'a gidin ve VM Instances'ı (Sanal Makine Örnekleri) seçin. Yeni sanal makineyi Sanal Makine Örnekleri listesinde görmeniz gerekir.

fc50b1cfd8b1f4b3.png

Harici IP'yi tıkladığınızda, örnekten sunulan varsayılan IIS web sitesini de görmeniz gerekir.

iis.PNG

Makineye Uzaktan Masaüstü (RDP) ile de erişebileceğinizi ancak önce bir Windows kullanıcı adı ve şifresi oluşturmamız gerektiğini unutmayın.

6. Windows kullanıcısı ve şifresi oluşturma

Windows kullanıcı adı ve şifresi oluşturmak için Windows şifresi oluştur veya sıfırla'yı seçin.

cf9b67269c4fa290.png

Bu işlem, kullanıcı oluşturabileceğiniz yeni bir pencere açar. Varsayılanı koruyun ve Ayarla'yı seçin. Birkaç saniye sonra, yeni oluşturulan şifrenin yer aldığı Yeni Windows şifresi iletişim kutusunu görürsünüz. Bir sonraki bölümde ihtiyacınız olacağından şifreyi not edin.

7. Uygulamayı Compute Engine'deki Windows Server'ınıza dağıtma

Artık uygulamanızı bir Compute Engine örneğinde çalışan Windows Server'a dağıtma zamanı.

Öncelikle ASP.NET Framework ile Windows Server'ı Compute Engine'e dağıtma bölümünde dağıttığınız Compute Engine örneğinin harici IP'sini bulmanız gerekir. Cloud Console'da Compute > VM Instances'a (Sanal Makine Örnekleri) gidin, örneğinizi bulun ve harici IP adresini not edin.

8163b495fda4a4c5.png

Şimdi, önceki adımda oluşturduğunuz Windows kullanıcı adı ve şifresine ihtiyacınız olacak.

Visual Studio Çözüm Gezgini'nde projenizi sağ tıklayın ve bağlam menüsünde Yayınla'yı seçin.

31dc67741553583e.png

Web'de Yayınla iletişim kutusunda yayın hedefiniz olarak Özel'i seçin.

Yeni Özel Profil iletişim kutusunda dağıtım profili için bir ad girin ve Tamam'ı tıklayın.

Profilinizi aşağıdaki gibi doldurun.

Sunucu

The external IP address of your Compute Engine instance. This address can be found on the Sanal makine örnekleri sayfası in the Cloud Console. The IP address is geçici, which is sufficient for our purposes.

Site Adı

Default Web SiteNot: Burada sağladığınız site adı, Compute Engine örneğinizdeki IIS Yöneticisi'nde görünen adla eşleşmelidir.

Kullanıcı Adı

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

Şifre

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

Hedef URL

http://Not: Hedef URL, sayfanız dağıtıldıktan sonra erişilebileceği adrestir.

Mülklerin doğru olduğundan emin olmak için Bağlantıyı Doğrula'yı tıklayın.

5587e66e1f61acd6.png

Dağıtımınızdaki Microsoft IIS yüklemesi varsayılan olarak kendinden imzalı bir sertifika kullandığından doğrulama işlemi sırasında Sertifika Hatası görürsünüz. Bu sertifikayı gelecekteki Visual Studio oturumları için kaydet kutusunu işaretleyin ve sertifikayı kabul etmek için Kabul et'i tıklayın.

e7cc4bdef3064b9b.png

Yapılandırmanız geçerliyse Ayarlar'ı tıklayın. Dosya Yayınlama Seçenekleri'ni tıklayın ve Hedefteki ek dosyaları kaldır'ı işaretleyin. Bu, daha sonra aynı Compute Engine örneğinde yeni web siteleri yayınladığınızda önemlidir.

1014554485ba6720.png

Uygulamayı dağıtmak için Yayınla'yı tıklayın. Yayınlama işlemi tamamlandıktan sonra Visual Studio, uygulamayı varsayılan web tarayıcınızda açar.

feab07f5ac573240.png

8. Temizleme

İşte bu kadar. Şimdi kullandığınız kaynakları temizleme zamanı (maliyetten tasarruf etmek ve iyi bir bulut kullanıcısı olmak için).

Örnekleri silebilir veya durdurabilirsiniz. Ancak durdurulan örneklerin depolamayla ilgili maliyetlere neden olabileceğini unutmayın.

a3152ac7b76cdd4e.png

Elbette projenin tamamını da silebilirsiniz ancak yaptığınız tüm faturalandırma ayarlarını kaybedersiniz (önce proje faturalandırmasını devre dışı bırakmanız gerekir). Ayrıca, bir projenin silinmesi yalnızca mevcut faturalandırma dönemi sona erdiğinde projenin faturalandırılmasını durdurur.

9. Tebrikler!

Google Compute Engine, Google Cloud Platform'un Hizmet Olarak Altyapı'sının temelini oluşturur. Gördüğünüz gibi, ASP.NET uygulamasını Compute Engine'deki Windows Server'a dağıtmak oldukça kolaydır.

İşlediğimiz konular

  • Basit bir ASP.NET uygulaması oluşturma
  • ASP.NET uygulamasını Visual Studio'da yerel olarak çalıştırma
  • ASP.NET uygulamanızı Compute Engine'deki bir Windows Server'a dağıtma ve çalıştırma

Sonraki Adımlar

Lisans

Bu çalışma, Creative Commons Attribution 2.0 Genel Amaçlı Lisans ile lisans altına alınmıştır.

/