Bagikan melalui


App Service pada catatan rilis Azure Stack Hub 2302

Catatan rilis ini menjelaskan peningkatan dan perbaikan dalam Azure App Service di Azure Stack Hub 2302, dan masalah yang diketahui. Masalah yang diketahui dibagi menjadi masalah yang terkait langsung dengan penyebaran, proses pembaruan, dan masalah dengan build (pasca-pemasangan).

Penting

Perbarui Azure Stack Hub ke versi yang didukung (atau sebarkan Azure Stack Development Kit terbaru) apabila diperlukan, sebelum menyebarkan atau memperbarui penyedia sumber (RP) App Service. Pastikan untuk membaca catatan rilis RP untuk mempelajari masalah yang diketahui, perbaikan, dan fungsionalitas baru yang dapat memengaruhi penyebaran Anda.

Versi Azure Stack Hub Minimum yang Didukung Layanan RP App Service
2301 dan yang lebih baru Penginstal 2302 (catatan rilis)

Referensi build

Nomor build App Service di Azure Stack Hub 2302 adalah 98.0.1.703

Apa yang baru?

Azure App Service pada rilis Azure Stack Hub 2302 menggantikan rilis H1 2022 dan menyertakan perbaikan untuk masalah berikut:

Prasyarat

Baca dokumentasi Sebelum Anda Mulai sebelum memulai penyebaran.

Sebelum Anda memulai peningkatan Azure App Service di Azure Stack Hub ke 2302:

  • Pastikan Azure Stack Hub Anda diperbarui ke 1.2108.2.127 atau 1.2206.2.52.

  • Pastikan semua peran siap dalam administrasi Azure App Service di portal admin Azure Stack Hub.

  • Cadangkan rahasia App Service menggunakan administrasi App Service di portal admin Azure Stack Hub.

  • Cadangkan database master App Service dan SQL Server:

    • AppService_Hosting;
    • AppService_Metering;
    • Master
  • Mencadangkan berbagi file konten aplikasi penyewa.

    Penting

    Operator cloud bertanggung jawab atas pemeliharaan dan pengoperasian server file dan SQL Server. Penyedia sumber daya tidak mengelola sumber daya ini. Operator cloud bertanggung jawab untuk mencadangkan database App Service dan berbagi konten penyewa.

  • Sindikasikan Custom Script Extension versi 1.9.3 dari Marketplace.

Langkah-langkah pra-pembaruan

Catatan

Jika sebelumnya Anda telah menyebarkan Azure App Service di Azure Stack Hub 2022 H1 ke stempel Azure Stack Hub Anda, rilis ini adalah peningkatan kecil ke H1 2022 yang mengatasi dua masalah.

Azure App Service di Azure Stack Hub 2302 adalah pembaruan signifikan yang akan memakan waktu beberapa jam untuk diselesaikan. Seluruh penyebaran akan diperbarui dan semua peran dibuat ulang dengan OS Pusat Data Windows Server 2022. Oleh karena itu, sebaiknya informasikan kepada pelanggan akhir tentang pembaruan yang direncanakan sebelum menerapkan pembaruan.

  • Pada Azure App Service pada pembaruan Azure Stack Hub 2022 H1, huruf K sekarang menjadi surat SKU yang dicadangkan. Jika Anda memiliki SKU kustom yang ditentukan yang menggunakan huruf K, hubungi dukungan untuk membantu menyelesaikan situasi ini sebelum peningkatan.

Tinjau masalah yang diketahui untuk pembaruan dan lakukan tindakan apa pun yang ditentukan.

Langkah-langkah pasca-penyebaran

Penting

Jika Anda telah menyediakan penyedia sumber daya App Service dengan instans SQL Always On, Anda harus menambahkan database appservice_hosting dan appservice_metering ke grup ketersediaan dan menyinkronkan database untuk mencegah hilangnya layanan jika terjadi kegagalan database.

Masalah yang diketahui (pembaruan)

  • Dalam situasi di mana Anda telah mengonversi database appservice_hosting dan appservice_metering ke database mandiri, peningkatan mungkin gagal jika login belum berhasil dimigrasikan ke pengguna mandiri.

    Jika Anda mengonversi database appservice_hosting dan appservice_metering ke penyebaran posting database mandiri, dan belum berhasil memigrasikan login database ke pengguna mandiri, Anda mungkin mengalami kegagalan peningkatan.

    Anda harus menjalankan skrip berikut terhadap appservice_hosting hosting SQL Server dan appservice_metering sebelum meningkatkan Azure App Service Anda di penginstalan Azure Stack Hub ke 2020 Q3. Skrip ini tidak merusak serta tidak akan menyebabkan downtime.

    Skrip ini harus dijalankan dalam kondisi berikut:

    • Oleh pengguna yang memiliki hak istimewa administrator sistem, misalnya Akun SQL SA.
    • Jika menggunakan SQL Always on, pastikan skrip dijalankan dari instans SQL yang berisi semua login App Service dalam formulir:
      • appservice_hosting_FileServer
      • appservice_hosting_HostingAdmin
      • appservice_hosting_LoadBalancer
      • appservice_hosting_Operations
      • appservice_hosting_Publisher
      • appservice_hosting_SecurePublisher
      • appservice_hosting_WebWorkerManager
      • appservice_metering_Common
      • appservice_metering_Operations
      • Semua login WebWorker - dalam bentuk WebWorker_<alamat ip instans>
          USE appservice_hosting
          IF EXISTS(SELECT * FROM sys.databases WHERE Name=DB_NAME() AND containment = 1)
          BEGIN
          DECLARE @username sysname ;  
          DECLARE user_cursor CURSOR  
          FOR
              SELECT dp.name
              FROM sys.database_principals AS dp  
              JOIN sys.server_principals AS sp
                  ON dp.sid = sp.sid  
                  WHERE dp.authentication_type = 1 AND dp.name NOT IN ('dbo','sys','guest','INFORMATION_SCHEMA');
              OPEN user_cursor  
              FETCH NEXT FROM user_cursor INTO @username  
                  WHILE @@FETCH_STATUS = 0  
                  BEGIN  
                      EXECUTE sp_migrate_user_to_contained
                      @username = @username,  
                      @rename = N'copy_login_name',  
                      @disablelogin = N'do_not_disable_login';  
                  FETCH NEXT FROM user_cursor INTO @username  
              END  
              CLOSE user_cursor ;  
              DEALLOCATE user_cursor ;
              END
          GO
    
          USE appservice_metering
          IF EXISTS(SELECT * FROM sys.databases WHERE Name=DB_NAME() AND containment = 1)
          BEGIN
          DECLARE @username sysname ;  
          DECLARE user_cursor CURSOR  
          FOR
              SELECT dp.name
              FROM sys.database_principals AS dp  
              JOIN sys.server_principals AS sp
                  ON dp.sid = sp.sid  
                  WHERE dp.authentication_type = 1 AND dp.name NOT IN ('dbo','sys','guest','INFORMATION_SCHEMA');
              OPEN user_cursor  
              FETCH NEXT FROM user_cursor INTO @username  
                  WHILE @@FETCH_STATUS = 0  
                  BEGIN  
                      EXECUTE sp_migrate_user_to_contained
                      @username = @username,  
                      @rename = N'copy_login_name',  
                      @disablelogin = N'do_not_disable_login';  
                  FETCH NEXT FROM user_cursor INTO @username  
              END  
              CLOSE user_cursor ;  
              DEALLOCATE user_cursor ;
              END
          GO
    
  • Aplikasi Penyewa tidak dapat mengikat sertifikat ke aplikasi setelah peningkatan.

    Penyebab masalah ini disebabkan oleh fitur yang hilang di ujung depan setelah peningkatan ke Windows Server 2022. Operator harus mengikuti prosedur ini untuk mengatasi masalah tersebut.

    1. Di portal admin Azure Stack Hub, navigasikan ke Grup Keamanan Jaringan dan lihat Grup Keamanan Jaringan ControllersNSG .

    2. Secara default, desktop jarak jauh dinonaktifkan ke semua peran infrastruktur App Service. Ubah tindakan aturan Inbound_Rdp_3389 untuk Mengizinkan akses.

    3. Navigasikan ke grup sumber daya yang berisi penyebaran App Service Resource Provider, secara default namanya adalah AppService.<wilayah> dan sambungkan ke CN0-VM.

    4. Kembali ke sesi desktop jarak jauh CN0-VM .

    5. Dalam sesi PowerShell administrator, jalankan:

      Penting

      Selama eksekusi skrip ini akan ada jeda untuk setiap instans di set skala front end. Jika ada pesan yang menunjukkan fitur sedang diinstal, instans tersebut akan di-boot ulang. Gunakan jeda dalam skrip untuk mempertahankan ketersediaan front end. Operator harus memastikan setidaknya satu instans front end "Siap" setiap saat untuk memastikan aplikasi penyewa dapat menerima lalu lintas dan tidak mengalami waktu henti.

      $c = Get-AppServiceConfig -Type Credential -CredentialName FrontEndCredential
      $spwd = ConvertTo-SecureString -String $c.Password -AsPlainText -Force
      $cred = New-Object System.Management.Automation.PsCredential ($c.UserName, $spwd)
      
      Get-AppServiceServer -ServerType LoadBalancer | ForEach-Object {
          $lb = $_
          $session = New-PSSession -ComputerName $lb.Name -Credential $cred
      
          Invoke-Command -Session $session {
            $f = Get-WindowsFeature -Name Web-CertProvider
            if (-not $f.Installed) {
                Write-Host Install feature on $env:COMPUTERNAME
                Install-WindowsFeature -Name Web-CertProvider
      
                Shutdown /t 5 /r /f 
            }
         }
      }
      
      Remove-PSSession -Session $session
      
      Read-Host -Prompt "If installing the feature, the machine will reboot. Wait until there's enough frontend availability, then press ENTER to continue"
      
    6. Di portal admin Azure Stack, navigasikan kembali ke Grup Keamanan Jaringan ControllersNSG .

    7. Ubah aturan Inbound_Rdp_3389 untuk menolak akses.

Masalah yang diketahui (pasca-penginstalan)

  • Pekerja tidak dapat menjangkau server file ketika App Service disebarkan di jaringan virtual yang ada dan server file hanya tersedia di jaringan privat, seperti yang disebutkan dalam Azure App Service pada dokumentasi penyebaran Azure Stack.

    Jika Anda memilih untuk menyebarkan ke jaringan virtual yang ada dan alamat IP internal tersambung ke server file Anda, Anda harus menambahkan aturan keamanan keluar, mengaktifkan lalu lintas SMB antara subnet pekerja dan server file. Buka WorkersNsg di portal admin dan tambahkan aturan keamanan keluar dengan properti berikut:

    • Sumber: Semua
    • Rentang port sumber: *
    • Tujuan: Alamat IP
    • Rentang alamat IP tujuan: Rentang IP untuk server file Anda
    • Rentang port tujuan: 445
    • Protokol: TCP
    • Tindakan: Izinkan
    • Prioritas: 700
    • Nama: Outbound_Allow_SMB445
  • Untuk menghapus latensi saat pekerja berkomunikasi dengan server file, kami juga menyarankan untuk menambahkan aturan berikut ke NSG Pekerja untuk mengizinkan lalu lintas LDAP dan Kerberos keluar ke pengontrol Direktori Aktif Anda jika mengamankan server file menggunakan Direktori Aktif; misalnya, jika Anda telah menggunakan templat Mulai Cepat untuk menyebarkan server file HA dan SQL Server.

    Buka WorkersNsg di portal admin dan tambahkan aturan keamanan keluar dengan properti berikut:

    • Sumber: Semua
    • Rentang port sumber: *
    • Tujuan: Alamat IP
    • Rentang alamat IP tujuan: Rentang IP untuk Server AD Anda, contohnya dengan templat Mulai Cepat 10.0.0.100, 10.0.0.101
    • Rentang port tujuan: 389,88
    • Protokol: Semua
    • Tindakan: Izinkan
    • Prioritas: 710
    • Nama: Outbound_Allow_LDAP_and_Kerberos_to_Domain_Controllers
  • Aplikasi penyewa tidak dapat mengikat sertifikat ke aplikasi setelah peningkatan.

    Penyebab masalah ini adalah karena fitur yang hilang di ujung depan setelah peningkatan ke Windows Server 2022. Operator harus mengikuti prosedur ini untuk mengatasi masalah ini:

    1. Di portal admin Azure Stack Hub, navigasikan ke Grup Keamanan Jaringan dan lihat Grup Keamanan Jaringan ControllersNSG .

    2. Secara default, desktop jarak jauh dinonaktifkan ke semua peran infrastruktur App Service. Ubah tindakan aturan Inbound_Rdp_3389 ke Izinkan akses.

    3. Navigasikan ke grup sumber daya yang berisi penyebaran penyedia sumber daya App Service, secara default namanya adalah AppService.<wilayah> dan sambungkan ke CN0-VM.

    4. Kembali ke sesi desktop jarak jauh CN0-VM .

    5. Dalam sesi Administrator PowerShell, jalankan:

      Penting

      Selama eksekusi skrip ini akan ada jeda untuk setiap instans di set skala front end. Jika ada pesan yang menunjukkan fitur sedang diinstal, instans tersebut akan di-boot ulang. Gunakan jeda dalam skrip untuk mempertahankan ketersediaan front end. Operator harus memastikan setidaknya satu instans front end "Siap" setiap saat untuk memastikan aplikasi penyewa dapat menerima lalu lintas dan tidak mengalami waktu henti.

      $c = Get-AppServiceConfig -Type Credential -CredentialName FrontEndCredential
      $spwd = ConvertTo-SecureString -String $c.Password -AsPlainText -Force
      $cred = New-Object System.Management.Automation.PsCredential ($c.UserName, $spwd)
      
      Get-AppServiceServer -ServerType LoadBalancer | ForEach-Object {
          $lb = $_
          $session = New-PSSession -ComputerName $lb.Name -Credential $cred
      
          Invoke-Command -Session $session {
            $f = Get-WindowsFeature -Name Web-CertProvider
            if (-not $f.Installed) {
                Write-Host Install feature on $env:COMPUTERNAME
                Install-WindowsFeature -Name Web-CertProvider
      
                Read-Host -Prompt "If installing the feature, the machine will reboot. Wait until there's enough frontend availability, then press ENTER to continue"
                Shutdown /t 5 /r /f 
            }
         }
      }
      
      Remove-PSSession -Session $session      
      
    6. Di portal admin Azure Stack, navigasikan kembali ke Grup Keamanan Jaringan ControllersNSG .

    7. Ubah aturan Inbound_Rdp_3389 untuk menolak akses.

Masalah yang diketahui untuk Admin Cloud yang mengoperasikan Azure App Service di Azure Stack

  • Domain kustom tidak didukung di lingkungan yang terputus.

    App Service melakukan verifikasi kepemilikan domain terhadap titik akhir DNS publik. Akibatnya, domain kustom tidak didukung dalam skenario terputus.

  • integrasi Virtual Network untuk aplikasi Web dan Fungsi tidak didukung.

    Kemampuan untuk menambahkan integrasi jaringan virtual ke aplikasi Web dan Fungsi ditampilkan di portal Azure Stack Hub dan jika penyewa mencoba mengonfigurasi, mereka menerima kesalahan server internal. Fitur ini tidak didukung di Azure App Service di Azure Stack Hub.

Langkah berikutnya