Azure Bulut Hizmeti (klasik) rollerinin geri dönüştürülmesine neden olan yaygın sorunlar

Önemli

Cloud Services (klasik) artık yeni müşteriler için kullanımdan kaldırılmıştır ve tüm müşteriler için 31 Ağustos 2024'te kullanımdan kaldırılacaktır. Yeni dağıtımlarda yeni Azure Resource Manager tabanlı dağıtım modeli Azure Cloud Services (genişletilmiş destek) kullanılmalıdır.

Bu makalede dağıtım sorunlarının yaygın nedenlerinden bazıları ele alınmaktadır ve bu sorunları çözmenize yardımcı olacak sorun giderme ipuçları sağlanmaktadır. Uygulamayla ilgili bir sorunun olduğunun bir göstergesi, rol örneğinin başlatılaamaması veya başlatma, meşgul ve durdurma durumları arasında döngüye girmesine neden olur.

Azure sorununuz bu makalede ele alınmıyorsa Microsoft Q & A ve Stack Overflow'daki Azure forumlarını ziyaret edin. Sorununuzu bu forumlara gönderebilir veya Twitter'da @AzureSupport gönderebilirsiniz. Ayrıca bir Azure desteği isteği gönderebilirsiniz. Destek isteği göndermek için Azure desteği sayfasında Destek al'ı seçin.

Eksik çalışma zamanı bağımlılıkları

Uygulamanızdaki bir rol, .NET Framework veya Azure yönetilen kitaplığının parçası olmayan herhangi bir derlemeyi kullanıyorsa, bu derlemeyi uygulama paketine açıkça eklemeniz gerekir. Azure’da varsayılan olarak diğer Microsoft çerçevelerinin kullanılamadığını unutmayın. Rolünüz böyle bir çerçeveyi kullanıyorsa ilgili derlemeleri uygulama paketine eklemeniz gerekir.

Uygulamanızı derlemeden ve paketlemeden önce aşağıdakileri doğrulayın:

  • Visual Studio kullanıyorsanız, Projenizde Azure SDK veya .NET Framework'ün parçası olmayan başvuruda bulunılan her derleme için Yereli Kopyala özelliğinin True olarak ayarlandığından emin olun.
  • web.config dosyasının derleme öğesindeki kullanılmayan derlemelere başvurmadığından emin olun.
  • Her .cshtml dosyasının Derleme Eylemi İçerik olarak ayarlanır. Bu, dosyaların pakette doğru görünmesini sağlar ve başvuru yapılan diğer dosyaların pakette görünmesine olanak tanır.

Derleme yanlış platformu hedefliyor

Azure, 64 bit bir ortamdır. Bu nedenle 32 bit hedefler için derlenen .NET derlemeleri Azure’da çalışmaz.

Rol başlatılırken veya durdurulduğu sırada işlenmeyen özel durumlar oluşturur

OnStart, OnStop ve Run yöntemlerini içeren RoleEntryPoint sınıfının yöntemleri tarafından oluşan özel durumlar işlenmeyen özel durumlardır. Bu yöntemlerden birinde işlenmeyen bir özel durum oluşursa rol geri dönüştürülecektir. Rol tekrar tekrar geri dönüştürüliyorsa, her başlamaya çalıştığında işlenmeyen bir özel durum oluşturmuş olabilir.

Run yönteminden rol döndürülüyor

Run yöntemi süresiz olarak çalışacak şekilde tasarlanmıştır. Kodunuz Run yöntemini geçersiz kılarsa süresiz olarak uyku moduna almalıdır. Run yöntemi döndürülüyorsa rol geri dönüşüme döner.

Yanlış Tanılama Bağlan ionString ayarı

Uygulama Azure Tanılama kullanıyorsa, hizmet yapılandırma dosyanız yapılandırma ayarını belirtmelidirDiagnosticsConnectionString. Bu ayar, Azure'da depolama hesabınıza yönelik bir HTTPS bağlantısı belirtmelidir.

Uygulama paketinizi Azure'a dağıtmadan önce ayarınızın DiagnosticsConnectionString doğru olduğundan emin olmak için aşağıdakileri doğrulayın:

  • Bu DiagnosticsConnectionString ayar, Azure'da geçerli bir depolama hesabını gösterir.
    Varsayılan olarak, bu ayar öykünülmüş depolama hesabına işaret eder, bu nedenle uygulama paketinizi dağıtmadan önce bu ayarı açıkça değiştirmeniz gerekir. Bu ayarı değiştirmezseniz, rol örneği tanılama izleyicisini başlatmaya çalıştığında bir özel durum oluşur. Bu, rol örneğinin süresiz olarak geri dönüştürülmesine neden olabilir.
  • bağlantı dizesi aşağıdaki biçimde belirtilir. (Protokol HTTPS olarak belirtilmelidir.) MyAccountName değerini depolama hesabınızın adıyla, MyAccountKey değerini ise erişim anahtarınızla değiştirin:
DefaultEndpointsProtocol=https;AccountName=MyAccountName;AccountKey=MyAccountKey

Uygulamanızı Microsoft Visual Studio için Azure Araçları'nı kullanarak geliştiriyorsanız, bu değeri ayarlamak için özellik sayfalarını kullanabilirsiniz.

Dışarı aktarılan sertifika özel anahtar içermiyor

TLS altında bir web rolü çalıştırmak için, dışarı aktarılan yönetim sertifikanızın özel anahtarı içerdiğinden emin olmanız gerekir. Sertifikayı dışarı aktarmak için Windows Sertifika Yöneticisi'ni kullanıyorsanız, Özel anahtarı dışarı aktar seçeneği için Evet'i seçtiğinizden emin olun. Sertifika, şu anda desteklenen tek biçim olan PFX biçiminde dışarı aktarılmalıdır.

Sonraki adımlar

Bulut hizmetleri için diğer sorun giderme makalelerini görüntüleyin.

Kevin Williamson'ın blog serisinde daha fazla rol geri dönüşüm senaryosu görüntüleyin.