Aracılığıyla paylaş


Öğretici: Azure SRE Aracısı Önizlemesi'ni kullanarak App Service uygulamasında sorun giderme

Uyarı

Azure SRE Aracı aktif durumda. SRE Aracısı'nı kullanarak , Microsoft Azure'lar için ürüne özgü Ek Kullanım Koşulları'nı kabul etmiş olursunuz.

Site güvenilirlik mühendisliği (SRE), otomasyon ve proaktif yönetim aracılığıyla güvenilir, ölçeklenebilir sistemler oluşturmaya odaklanır. Azure SRE Aracısı yapay zeka destekli izleme, sorun giderme ve düzeltme özellikleri sağlayarak bu ilkeleri bulut ortamınıza getirir.

SRE Aracısı, rutin operasyonel görevleri otomatikleştirir ve el ile müdahaleyi azaltırken uygulama güvenilirliğini korumanıza yardımcı olacak makul içgörüler sağlar. SRE Agent bir sohbet botu olarak kullanılabilir, böylece soru sorabilir ve uygulama ve hizmetlerinizin bakımını yapmak için doğal dil komutları verebilirsiniz. Doğruluğu ve denetimi sağlamak için, bir aracının sizin yerinize gerçekleştirilen tüm eylemler için onayınız gerekir.

Bu öğreticideki örnek uygulama, HTTP 500 hatalarını denetimli bir şekilde benzeterek hata algılamayı gösterir. Çeşitli uygulama yapılandırmalarını yan yana çalıştırmak için Azure App Service dağıtım yuvalarını kullanarak bu senaryoları güvenle test edebilirsiniz.

INJECT_ERROR uygulama ayarını 1 olarak ayarlayarak hata simülasyonunu etkinleştirirsiniz. Bu ayar etkinleştirildiğinde, düğmeyi birkaç kez seçtikten sonra uygulama bir HTTP 500 hatası oluşturur. Ardından SRE Aracısı'nın uygulama hatalarına nasıl yanıt verdiğini görebilirsiniz.

Bu eğitimde, siz:

  • Azure portalını kullanarak bir App Service uygulaması oluşturun.
  • GitHub'dan örnek bir uygulama dağıtın.
  • Uygulamayı bir başlangıç komutunu ayarlayın ve kaydetme özelliğini etkinleştirin.
  • Hata simülasyonu yapmak için bir dağıtım yuvası oluşturun.
  • Uygulamayı izlemek için bir aracı ayarlayın.
  • Bozuk yuvaya geçiş yaparak bir hata tetikleyin.
  • Değiştirme işlemini geri alarak sorunu tanılamak ve çözmek için yapay zeka temelli bir sohbet kullanın.

Önkoşullar

Aracı oluşturmak için aracınıza doğru izinleri vermeniz, doğru ayarları yapılandırmanız ve doğru kaynaklara erişim vermeniz gerekir:

  • Azure hesabı: Etkin aboneliği olan bir Azure hesabına ihtiyacınız vardır. Henüz bir hesabınız yoksa ücretsiz olarak bir hesap oluşturabilirsiniz.

  • Güvenlik bağlamı: Kullanıcı hesabınızın Microsoft.Authorization/roleAssignments/write veya Kullanıcı Erişim Yöneticisi izinlerine sahip olduğundan emin olun.

  • Güvenlik duvarı ayarları: Güvenlik duvarı ayarlarınızda izin verilenler listesine ekleyin *.azuresre.ai . Bazı ağ profilleri, varsayılan olarak *.azuresre.ai etki alanına erişimi engelleyebilir.

1. App Service uygulaması oluşturma

SRE Aracısı'nın izleyebildiği bir web uygulaması oluşturarak başlayın:

  1. Azure portalınaoturum açın.

  2. Arama çubuğunda App Services'i arayın ve sonuçlardan seçin.

  3. +Web Uygulaması Oluştur'u> seçin.

  4. Temel Bilgiler sekmesinde aşağıdaki ayrıntıları sağlayın.

    Proje ayrıntıları için şu değerleri girin:

    Ayarlar Değer
    Subscription Azure aboneliğiniz
    Kaynak Grubu Yeni> oluşturmy-app-service-group

    Örnek ayrıntıları için şu değerleri girin:

    Ayarlar Değer
    İsim my-sre-app
    Yayınlamak Kod
    Çalışma zamanı yığını .NET 9 (STS)
    İşletim Sistemi Windows
    Bölge Size yakın bir bölge
  5. Dağıtım sekmesini seçin.

  6. Kimlik doğrulama ayarları'nın altında Temel kimlik doğrulamasını etkinleştirin.

    Uyarı

    Temel kimlik doğrulaması daha sonra GitHub'dan tek seferlik dağıtım için kullanılır. Üretimde temel kimlik doğrulamayı devre dışı bırakın.

  7. Gözden geçir ve oluştur'u seçin ve doğrulama başarılı olduğunda oluştur'u seçin.

    Dağıtım tamamlandığında Dağıtımınız tamamlandı iletisi görüntülenir.

2. Örnek uygulamayı dağıtma

App Service uygulamanız oluşturulduğuna göre örnek uygulamayı GitHub'dan dağıtın:

  1. Azure portalında Kaynağa git'i seçerek yeni oluşturduğunuz App Service uygulamasına gidin.

  2. Soldaki menüde, Dağıtım bölümünde Dağıtım Merkezi'ni seçin.

  3. Ayarlar sekmesinde şu değerleri yapılandırın:

    Mülkiyet Değer
    Kaynak Dış Git
    Depo https://github.com/Azure-Samples/app-service-dotnet-agent-tutorial
    Şube ana
  4. Dağıtım ayarlarını uygulamak için Kaydet'i seçin.

3. Örnek uygulamayı doğrulayın

Dağıtımdan sonra örnek uygulamanın beklendiği gibi çalıştığını onaylayın:

  1. App Service uygulamanızın sol menüsünde Genel Bakış'ı seçin.

  2. Uygulamayı yeni bir tarayıcı sekmesinde açmak için Gözat'ı seçin. (Yüklenmesi bir dakika sürebilir.)

  3. Uygulama büyük bir sayaç ve iki düğme görüntüler.

    Birincil yuvadaki .NET örneğinin ekran görüntüsü.

    Sayaç artışını gözlemlemek için Artım düğmesini birkaç kez seçin.

4. Hata simülasyonu için bir dağıtım yuvası ayarlayın

Uygulama hatası senaryosu benzetimi yapmak için ikincil dağıtım yuvası ekleyin:

  1. App Service uygulamanızın sol menüsünde, Dağıtım bölümünde Dağıtım yuvaları'nı seçin.

  2. Bölme ekle'yi seçin.

  3. Aşağıdaki değerleri girin:

    Mülkiyet Değer Açıklamalar
    İsim bozuk Hata senaryosu bu yuvada tetikleniyor.
    Ayarları kopyalama my-sre-app Bu özellik yapılandırmayı ana uygulamadan kopyalar.
  4. Bölmenin en altına kaydırın ve Ekle'yi seçin. Yuva oluşturma işleminin tamamlanması bir dakika sürebilir.

Örnek uygulamayı yuvaya dağıtma

  1. Yuva oluşturulduktan sonra listeden bozuk yuvayı seçin.

  2. Soldaki menüde, Dağıtım bölümünde Dağıtım Merkezi'ni seçin.

  3. Ayarlar sekmesinde şu değerleri yapılandırın:

    Mülkiyet Değer
    Kaynak Dış Git
    Depo https://github.com/Azure-Samples/app-service-dotnet-agent-tutorial
    Şube ana
  4. Dağıtım ayarlarını uygulamak için Kaydet'i seçin.

Hata benzetimi etkinleştirmek için uygulama ayarı ekleme

Hata benzetimi denetlemek için, uygulamanızın çalışma zamanında denetleyebilen bir uygulama ayarını yapılandırın:

  1. App Service uygulamanızın sol menüsünde, Ayarlar bölümünde Ortam değişkenleri'ni seçin.

  2. Üst kısımda doğru yuvanın seçili olduğundan emin olun (örneğin, bozuk).

  3. Uygulama ayarları sekmesinde + Ekle'yi seçin.

  4. Aşağıdaki değerleri girin:

    Mülkiyet Değer Açıklamalar
    İsim INJECT_ERROR Tam olarak INJECT_ERROR olmalıdır (tüm büyük harfler, boşluk yok)
    Değer 1 Uygulamada hata benzetimi etkinleştirir
  5. Dağıtım yuvası ayar kutusunun seçili olmadığından emin olun.

  6. Ayarı eklemek için Uygula'yı seçin.

  7. Ortam değişkenleri sayfasının en altında Uygula'yı seçerek değişiklikleri uygulayın.

  8. İstendiğinde, seçilen yuvada uygulamayı onaylamak ve yeniden başlatmak için Onayla'yı seçin.

5. Aracı oluşturma

Şimdi App Service uygulamanızı izlemek için bir aracı oluşturun:

  1. Azure portalında SRE Aracısı'na erişmek için ekleme e-postanızda sağlanan bağlantıyı izleyin.

  2. +Oluştur'u seçin.

  3. Aracı oluştur bölmesinde şu değerleri girin:

    Mülkiyet Değer Açıklamalar
    Subscription Azure aboneliğiniz
    Kaynak Grubu my-sre-agent-group Aracı için yeni grup.
    İsim my-sre-agent
    Bölge Doğu ABD 2
  4. Kaynak gruplarını seç'i seçin.

  5. İzlenecek kaynak grupları bölmesindemy-app-service-group öğesinin yanındaki onay kutusunu seçin.

  6. Kaydetseçeneğini seçin.

  7. Aracı oluştur bölmesine dönüp Oluştur'u seçin. Aracı oluşturma işleminin tamamlanması birkaç dakika sürer.

6. Temsilcinizle sohbet edin

Aracınız dağıtıldıktan ve kaynak grubunuza bağlandıktan sonra uygulamanızı izlemek ve sorunlarını gidermek için doğal dil kullanarak aracıyla etkileşim kurabilirsiniz:

  1. Azure portalında Azure SRE Aracısı'nı arayın ve seçin.

  2. Aracılar listesinde my-app-service-sre-agent öğesini seçin.

  3. Müşteri temsilcisiyle sohbet et seç.

  4. Sohbet kutusuna aşağıdaki komutu girin:

    List my App Service apps
    
  5. Aracı, my-app-service-group kaynak grubunda dağıtılan App Service uygulamalarının listesiyle yanıt verir.

Artık aracı uygulamanızı görebildiğine göre, bir hatanın benzetimini yapmaya hazırsınız ve aracının sorunu çözmenize yardımcı olmasına izin verin.

7. Uygulamayı kesme

Bozuk dağıtım yuvasına geçiş yaparak bir hata senaryosunun benzetimini alın:

  1. App Service uygulamanızın sol menüsünde, Dağıtım bölümünde Dağıtım yuvaları'nı seçin.

  2. Değiştir'i seçin.

  3. Değiştir bölmesinde şu değerleri yapılandırın:

    Mülkiyet Değer Açıklamalar
    Kaynak my-sre-app-broken Hatalı sürüme sahip yuva
    Hedef my-sre-app Üretim dilimi
  4. Ekranı en alta kaydırın ve Değişimi Başlat'ı seçin. Değiştirme işleminin tamamlanması bir dakika sürebilir.

  5. Değiştirme işlemi tamamlandıktan sonra uygulamanın URL'sine göz atın.

    Bozuk yuvadaki .NET örneğinin ekran görüntüsü.

  6. Artım düğmesini altı kez seçin.

  7. Uygulama başarısız olmalı ve http 500 hatası döndürmelidir.

  8. Daha fazla HTTP 500 hatası oluşturmak için sayfayı birkaç kez yenileyin (Command+R veya F5 tuşlarına basarak). Bu hatalar SRE Aracısı'nın sorunu algılamasını ve tanılamasını sağlar.

8. Uygulamayı düzeltme

Uygulama hatalarla karşılaştığına göre sorunu tanılamak ve çözmek için SRE Aracısı'nı kullanın:

  1. Azure portalında Azure SRE Aracısı'nı arayın ve seçin.

  2. Aracılar listesinde my-app-service-sre-agent öğesini seçin.

  3. Müşteri temsilcisiyle sohbet et seç.

  4. Sohbet kutusuna aşağıdaki komutu girin:

    What's wrong with my-sre-app?
    
  5. Aracı, uygulamanın durumunu analiz etmeye başlar. Kullanılabilirlik, CPU ve bellek kullanımı ve son yuva değişimiyle ilgili tanılama iletilerini görmeniz gerekir.

    Her oturum farklılık gösterebilir, ancak aşağıdaki örneğe benzer bir ileti görünmelidir:

    Şimdi uygulamayı iyi durumda kurtarmak için yuvaları değiştirerek my-sre-app için azaltma gerçekleştiriyorum. Yuvaları geri değiştirme işleminin her zaman sağlığı hemen geri yüklemeyebileceğini lütfen unutmayın. Sizi ilerleme konusunda haberdar ederim.

  6. Bir duraklamadan sonra aracı sizden geri alma işlemini onaylamanızı ister:

    my-sre-app'in uygulama kullanılabilirliğini geri yüklemek için yuva değiştirme geri alma işlemi yapılıyor

    [Onayla][Reddet]

  7. Geri almayı başlatmak için Onayla'yı seçin.

  8. Geri alma işlemi tamamlandıktan sonra aracı şunları onaylar:

    my-sre-app için slot değişimi başarıyla tamamlandı (zaman damgası). Üretim zaman dilimi geri yüklendi. Şimdi azaltma sonrası adımlarla devam ediyorum:

    Değiştirmeyle ilgili kapalı kalma süresiyle ilgili bir sorun ortaya çıkarabilmek için sizden doğru GitHub deposu URL'sini isteyeceğim.Uygulamayı izleyeceğim ve 5 dakika içinde bir kullanılabilirlik güncelleştirmesi sağlayacağım.

    Lütfen sorunun ortaya çıkarılmasını istediğiniz GitHub deposu URL'sini belirtin.

9. Düzeltmeyi doğrulayın

SRE Aracısı yuva değişimini geri aldıktan sonra uygulamanızın düzgün çalıştığını onaylayın:

  1. Genel Bakış sayfasında Gözat'ı seçerek App Service uygulamanızı tarayıcıda açın.

  2. Hata EKLEME ETKİn metninin artık görünmediğini ve uygulamanın özgün durumuna geri döndüğünü onaylayın.

  3. Hata görünmediğinden emin olmak için Artım düğmesini altı kez seçin.

Kaynakları temizle

Bu öğreticide oluşturduğunuz uygulamaya ve aracıya artık ihtiyacınız yoksa ücret yansıtılmasını önlemek için ilişkili kaynak gruplarını silebilirsiniz.

Bu öğreticide aşağıdaki kaynak gruplarını oluşturdunuz:

  • my-app-service-group (App Service kaynak grubu)
  • my-sre-agent-group (SRE Aracısı kaynak grubu)

Her kaynak grubu için aşağıdaki adımları kullanın:

  1. Azure portalında Kaynak grupları'na gidin.

  2. Silmek istediğiniz kaynak grubunu seçin.

  3. Genel Bakış sekmesinde Kaynak grubunu sil'i seçin.

  4. Onay iletişim kutusunda kaynak grubunun adını girin.

  5. 'ı seçin,'i silin. Silme işleminin tamamlanması birkaç dakika sürer.