Compartir a través de


App Service en las notas de la versión de Azure Stack Hub 2302

En estas notas de la versión se describen las mejoras y correcciones de Azure App Service en Azure Stack Hub 2302 y los problemas conocidos. Los problemas conocidos se dividen en aquellos que están relacionados directamente con el proceso de actualización y aquellos que están relacionados con la compilación (posteriores a la instalación).

Importante

Actualice Azure Stack Hub a una versión compatible (o implemente la versión más reciente del Kit de desarrollo de Azure Stack) si es necesario, antes de implementar o actualizar el proveedor de recursos de App Service. No olvide leer también las notas de la versión del proveedor de recursos para conocer las nuevas funcionalidades, correcciones y problemas conocidos que podrían afectar a la implementación.

Versión mínima admitida de Azure Stack Hub Versión del proveedor de recursos de App Service
2301 y versiones posteriores Instalador de 2302 (notas de la versión)

Referencia de compilación

El número de compilación de App Service en Azure Stack Hub 2302 es 98.0.1.703

Novedades

Azure App Service en la versión 2302 de Azure Stack Hub reemplaza la versión 2022 H1 e incluye correcciones para los siguientes problemas:

Prerrequisitos

Remítase a la documentación de introducción antes de comenzar la implementación.

Antes de comenzar la actualización de Azure App Service en Azure Stack Hub a 2302:

  • Asegúrese de que Azure Stack Hub está actualizado a la versión 1.2108.2.127 o 1.2206.2.52.

  • Asegúrese de que todos los roles están listos en la administración de Azure App Service en el portal de administración de Azure Stack Hub.

  • Realice una copia de seguridad de App Service secretos mediante la administración de App Service en el portal de administración de Azure Stack Hub.

  • Realice una copia de seguridad de las bases de datos maestras de App Service y SQL Server:

    • AppService_Hosting;
    • AppService_Metering;
    • Master
  • Realice una copia de seguridad del recurso compartido de archivos del contenido de la aplicación inquilina.

    Importante

    Los operadores en la nube son responsables del mantenimiento y el funcionamiento del servidor de archivos y SQL Server. El proveedor de recursos no administra estos recursos. El operador de la nube es responsable de realizar copias de seguridad de las bases de datos y los recursos compartidos de archivos del contenido del inquilino de App Service.

  • Distribuya la extensión de script personalizadoversión 1.9.3 desde Marketplace.

Pasos previos a la actualización

Nota

Si ha implementado previamente Azure App Service en Azure Stack Hub 2022 H1 en la marca de Azure Stack Hub, esta versión es una actualización secundaria a 2022 H1 que soluciona dos problemas.

Azure App Service en Azure Stack Hub 2302 es una actualización significativa que tardará varias horas en completarse. Toda la implementación se actualizará y todos los roles se volverán a crear con el sistema operativo Windows Server 2022 Datacenter. Por lo tanto, se recomienda informar a los clientes finales de una actualización planeada antes de aplicar la actualización.

  • A partir de la Azure App Service en la actualización de Azure Stack Hub 2022 H1, la letra K es ahora una letra de SKU reservada. Si tiene una SKU personalizada definida que usa la letra K, póngase en contacto con el soporte técnico para ayudar a resolver esta situación antes de la actualización.

Revise los problemas conocidos de actualización y realice las acciones indicadas.

Pasos posteriores a la implementación

Importante

Si ha proporcionado el proveedor de recursos App Service con una instancia de SQL Always On, debe agregar las bases de datos appservice_hosting y appservice_metering a un grupo de disponibilidad y sincronizar las bases de datos para evitar la pérdida de servicio en caso de una conmutación por error de base de datos.

Problemas conocidos (actualización)

  • En situaciones en las que ha convertido las bases de datos de appservice_hosting y appservice_metering en bases de datos independientes, la actualización puede producir un error si los inicios de sesión no se han migrado correctamente a usuarios contenidos.

    Si convirtió las bases de datos de appservice_hosting y appservice_metering en bases de datos independientes después de la implementación y no ha migrado correctamente los inicios de sesión de la base de datos a usuarios contenidos, es posible que experimente errores de actualización.

    Debe ejecutar el siguiente script en el SQL Server appservice_hosting de hospedaje y appservice_metering antes de actualizar el Azure App Service en la instalación de Azure Stack Hub a 2020 Q3. Este script no es destructivo y no provocará tiempo de inactividad.

    Este script debe ejecutarse en las condiciones siguientes:

    • Por un usuario que tiene el privilegio de administrador del sistema, por ejemplo, la cuenta de SA de SQL.
    • Si usa grupos de disponibilidad Always On de SQL, asegúrese de que el script se ejecuta desde la instancia de SQL que contiene todos los inicios de sesión de App Service de la forma siguiente:
      • 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
      • Todos los inicios de sesión de WebWorker, que tienen el formato WebWorker_<dirección IP de la instancia>
          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
    
  • Las aplicaciones de inquilino no pueden enlazar certificados a aplicaciones después de la actualización.

    La causa de este problema se debe a que falta una característica en front-end después de la actualización a Windows Server 2022. Los operadores deben seguir este procedimiento para resolver el problema.

    1. En el portal de administración de Azure Stack Hub, vaya a Grupos de seguridad de red y vea el grupo de seguridad de red ControllersNSG .

    2. De forma predeterminada, el escritorio remoto está deshabilitado para todos los roles de infraestructura de App Service. Modifique la acción de regla Inbound_Rdp_3389 para permitir el acceso.

    3. Vaya al grupo de recursos que contiene la implementación del proveedor de recursos de App Service, de forma predeterminada, el nombre es AppService.<región> y conexión a CN0-VM.

    4. Vuelva a la sesión de escritorio remoto CN0-VM .

    5. En una sesión de PowerShell de administrador, ejecute:

      Importante

      Durante la ejecución de este script, habrá una pausa para cada instancia del conjunto de escalado front-end. Si hay un mensaje que indica que la característica se está instalando, esa instancia se reiniciará. Use la pausa en el script para mantener la disponibilidad de front-end. Los operadores deben asegurarse de que al menos una instancia de front-end esté "Lista" en todo momento para asegurarse de que las aplicaciones de inquilino pueden recibir tráfico y no experimentar tiempo de inactividad.

      $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. En el portal de administración de Azure Stack, vuelva al grupo de seguridad de red ControllersNSG .

    7. Modifique la regla de Inbound_Rdp_3389 para denegar el acceso.

Problemas conocidos (posteriores a la instalación)

  • Los trabajos no pueden acceder al servidor de archivos cuando se implementa App Service en una red virtual existente y el servidor de archivos solo está disponible en la red privada, como se indica en la documentación de implementación de Azure App Service en Azure Stack.

    Si decide realizar una implementación en una red virtual existente y en una dirección IP interna para conectarse al servidor de archivos, debe agregar una regla de seguridad de salida. De ese modo, permite que exista tráfico SMB entre la subred del rol de trabajo y el servidor de archivos. Vaya a WorkersNsg en el portal de administración y agregue una regla de seguridad de salida con las siguientes propiedades:

    • Origen: Any
    • Intervalo de puertos de origen: *
    • Destino: Direcciones IP
    • Intervalo de direcciones IP de destino: Intervalo de direcciones IP del servidor de archivos
    • Intervalo de puertos de destino: 445
    • Protocolo: TCP
    • Acción: Allow
    • Prioridad: 700
    • Nombre: Outbound_Allow_SMB445
  • Para quitar la latencia cuando los trabajos se comunican con el servidor de archivos, también se recomienda agregar la siguiente regla al grupo de seguridad de red de trabajo para permitir el tráfico LDAP saliente y Kerberos a los controladores de Active Directory si protege el servidor de archivos mediante Active Directory; por ejemplo, si ha usado la plantilla de inicio rápido para implementar un servidor de archivos de alta disponibilidad y SQL Server.

    Vaya a WorkersNsg en el portal de administración y agregue una regla de seguridad de salida con las siguientes propiedades:

    • Origen: Any
    • Intervalo de puertos de origen: *
    • Destino: Direcciones IP
    • Intervalo de direcciones IP de destino: intervalo de direcciones IP de los servidores de AD, por ejemplo, con la plantilla de inicio rápido 10.0.0.100, 10.0.0.101
    • Intervalo de puertos de destino: 389,88
    • Protocolo: Cualquiera
    • Acción: Allow
    • Prioridad: 710
    • Nombre: Outbound_Allow_LDAP_and_Kerberos_to_Domain_Controllers
  • Las aplicaciones de inquilino no pueden enlazar certificados a aplicaciones después de la actualización.

    La causa de este problema se debe a que falta una característica en front-end después de la actualización a Windows Server 2022. Los operadores deben seguir este procedimiento para resolver el problema:

    1. En el portal de administración de Azure Stack Hub, vaya a Grupos de seguridad de red y vea el grupo de seguridad de red ControllersNSG .

    2. De forma predeterminada, el escritorio remoto está deshabilitado para todos los roles de infraestructura de App Service. Modifique la acción de regla Inbound_Rdp_3389 para permitir el acceso.

    3. Vaya al grupo de recursos que contiene la implementación del proveedor de recursos de App Service, de forma predeterminada, el nombre es AppService.<región> y conexión a CN0-VM.

    4. Vuelva a la sesión de escritorio remoto CN0-VM .

    5. En una sesión de PowerShell de administrador, ejecute:

      Importante

      Durante la ejecución de este script, habrá una pausa para cada instancia del conjunto de escalado front-end. Si hay un mensaje que indica que la característica se está instalando, esa instancia se reiniciará. Use la pausa en el script para mantener la disponibilidad de front-end. Los operadores deben asegurarse de que al menos una instancia de front-end esté "Lista" en todo momento para asegurarse de que las aplicaciones de inquilino pueden recibir tráfico y no experimentar tiempo de inactividad.

      $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. En el portal de administración de Azure Stack, vuelva al grupo de seguridad de red ControllersNSG .

    7. Modifique la regla de Inbound_Rdp_3389 para denegar el acceso.

Problemas conocidos para los administradores en la nube que trabajan con Azure App Service en Azure Stack

  • Los dominios personalizados no se admiten en entornos desconectados.

    App Service realiza la comprobación de la propiedad del dominio en los puntos de conexión DNS públicos. Como resultado, los dominios personalizados no se admiten en escenarios desconectados.

  • no se admite la integración de Virtual Network para aplicaciones web y de funciones.

    La capacidad de agregar integración de red virtual a aplicaciones web y de funciones se muestra en el portal de Azure Stack Hub y, si un inquilino intenta configurarlo, recibe un error interno del servidor. Esta característica no se admite en Azure App Service en Azure Stack Hub.

Pasos siguientes