Поделиться через


Служба приложений заметки о выпуске Azure Stack Hub 2302

В этих заметках о выпуске описываются улучшения и исправления в службе приложение Azure в Azure Stack Hub 2302 и любых известных проблемах. Известные проблемы можно разделить на проблемы, которые непосредственно относятся к процессу развертывания, обновления, и проблемы со сборкой (после установки).

Внимание

При необходимости обновите Azure Stack Hub до поддерживаемой версии (или разверните последний пакет средств разработки Azure Stack) перед развертыванием или обновлением поставщика ресурсов Служба приложений (RP). Обязательно прочитайте заметки о выпуске RP, чтобы узнать о новых функциональных возможностях, исправлениях и любых известных проблемах, которые могут повлиять на развертывание.

Поддерживаемая минимальная версия Azure Stack Hub версия RP Служба приложений
2301 и более поздней версии Установщик 2302 (заметки о выпуске)

Указание сборки

Номер сборки Azure Stack Hub 2302 Служба приложений — 98.0.1.703

Новые возможности

служба приложение Azure в Azure Stack Hub 2302 заменяет выпуск 2022 H1 и включает исправления для следующих проблем:

  • CVE-2023-21703 приложение Azure служба в Azure Stack Hub с повышением привилегий.

  • Не удается открыть Масштабируемые наборы виртуальных машин пользовательское взаимодействие с пользователем Служба приложений роли на портале администрирования Azure Stack Hub.

  • Все остальные обновления документируются в заметках о выпуске обновления приложение Azure в Azure Stack Hub 2022 H1.

  • По состоянию на обновление приложение Azure в Azure Stack Hub 2022 H1 буква K теперь является зарезервированной буквой SKU. Если у вас есть пользовательский номер SKU, использующий букву K, обратитесь в службу поддержки, чтобы помочь устранить эту ситуацию до обновления.

Необходимые компоненты

Перед началом развертывания ознакомьтесь со статьей Подготовка к работе со службой приложений в Azure Stack.

Перед началом обновления службы приложение Azure в Azure Stack Hub до 2302:

  • Убедитесь, что Azure Stack Hub обновлен до версии 1.2108.2.127 или 1.2206.2.52.

  • Убедитесь, что все роли готовы к администрированию службы приложение Azure на портале администрирования Azure Stack Hub.

  • Резервное копирование Служба приложений секретов с помощью администрирования Служба приложений на портале администрирования Azure Stack Hub.

  • Создайте резервную копию основных баз данных Служба приложений и SQL Server:

    • AppService_Hosting;
    • AppService_Metering;
    • master.
  • Выполните резервное копирование общей папки с содержимым приложения клиента.

    Внимание

    Облачные операторы отвечают за обслуживание и эксплуатацию файлового сервера и SQL Server. Поставщик ресурсов не управляет этими ресурсами. Оператор облака отвечает за резервное копирование баз данных Службы приложений и общей папки содержимого арендатора.

  • Синдикат расширение пользовательского скрипта версии 1.9.3 из Marketplace.

Этапы предварительного обновления

Примечание.

Если вы ранее развернули службу приложение Azure в Azure Stack Hub 2022 H1 в метке Azure Stack Hub, этот выпуск является незначительным обновлением до 2022 H1, которое устраняет две проблемы.

служба приложение Azure в Azure Stack Hub 2302 является значительным обновлением, которое займет несколько часов. Все развертывание будет обновлено, а все роли воссоздаются с ос Windows Server 2022 Datacenter. Поэтому перед применением обновления рекомендуется информировать конечных клиентов о запланированном обновлении.

  • По состоянию на обновление приложение Azure в Azure Stack Hub 2022 H1 буква K теперь является зарезервированной буквой SKU. Если у вас есть пользовательский номер SKU, использующий букву K, обратитесь в службу поддержки, чтобы помочь устранить эту ситуацию до обновления.

Просмотрите известные проблемы, связанные с обновлением , и выполните все указанные действия.

Действия, выполняемые после развертывания

Внимание

Если у вас есть поставщик ресурсов Служба приложений с экземпляром Sql AlwaysOn, необходимо добавить appservice_hosting и appservice_metering базы данных в группу доступности и синхронизировать базы данных, чтобы предотвратить потерю службы в случае отработки отказа базы данных.

Известные проблемы (обновление)

  • В ситуациях, когда вы преобразовали appservice_hosting и appservice_metering базы данных в содержащиеся базы данных, обновление может завершиться ошибкой, если имена входа не были успешно перенесены на содержащихся пользователей.

    Если вы преобразовали appservice_hosting и appservice_metering базы данных в автономное развертывание базы данных после развертывания и не успешно переносили имена входа базы данных в содержащихся пользователей, может возникнуть сбои обновления.

    Перед обновлением службы приложение Azure в Azure Stack Hub до 2020 Q3 необходимо выполнить следующий сценарий для размещения appservice_hosting и appservice_metering. Этот скрипт безопасен для системы, а его выполнение не приведет к простою.

    Этот скрипт должен выполняться в следующих условиях:

    • Пользователь с правами системного администратора, например учетная запись SA SQL.
    • При использовании SQL Always on убедитесь, что сценарий выполняется из экземпляра SQL, содержащего все Служба приложений имена входа в форме:
      • 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;
      • Все имена входа WebWorker , которые находятся в форме WebWorker_< ip-адрес>
          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
    
  • Приложения клиента не могут привязать сертификаты к приложениям после обновления.

    Причина этой проблемы связана с отсутствием функции во внешних интерфейсах после обновления до Windows Server 2022. Операторы должны следовать этой процедуре, чтобы устранить проблему.

    1. На портале администрирования Azure Stack Hub перейдите к группам безопасности сети и просмотрите группу безопасности сети ControllersNSG .

    2. По умолчанию удаленный рабочий стол отключен для всех ролей инфраструктуры Служба приложений. Измените действие правила Inbound_Rdp_3389 , чтобы разрешить доступ.

    3. Перейдите к группе ресурсов, содержащей развертывание поставщика ресурсов Служба приложений, по умолчанию — AppService.<регион> и подключение к CN0-VM.

    4. Вернитесь к сеансу удаленного рабочего стола CN0-VM .

    5. В сеансе PowerShell администратора выполните следующие действия:

      Внимание

      Во время выполнения этого скрипта будет приостановлено для каждого экземпляра в интерфейсном масштабируемом наборе. Если установлено сообщение, указывающее, что компонент установлен, этот экземпляр будет перезагружен. Используйте паузу в скрипте для поддержания доступности внешнего интерфейса. Операторы должны обеспечить по крайней мере один внешний экземпляр "Готово" в любое время, чтобы гарантировать, что клиентские приложения могут получать трафик, а не работать с простоем.

      $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. На портале администрирования Azure Stack вернитесь к группе безопасности сети ControllersNSG .

    7. Измените правило Inbound_Rdp_3389 , чтобы запретить доступ.

Известные проблемы (после установки)

  • Рабочие роли не могут связаться с файловым сервером при развертывании Служба приложений в существующей виртуальной сети, а файловый сервер доступен только в частной сети, как показано в документации по развертыванию приложение Azure в Службе Azure Stack.

    Если вы решили выполнить развертывание в существующей виртуальной сети с использованием внутреннего IP-адреса для подключения к файловому серверу, необходимо добавить правило безопасности для исходящего трафика, разрешающее передачу трафика SMB между подсетью рабочей роли и файловым сервером. Для этого перейдите к группе безопасности сети WorkersNsg на портале администрирования и добавьте правило безопасности для исходящего трафика со следующими свойствами.

    • Источник: Любой
    • Диапазон исходных портов: *.
    • Назначение: "IP-адреса".
    • Диапазон IP-адресов назначения: диапазон IP-адресов вашего файлового сервера.
    • Диапазон конечных портов: 445.
    • Протокол: TCP
    • Действие: Allow
    • Приоритет: 700.
    • Имя: Outbound_Allow_SMB445.
  • Чтобы удалить задержку при обмене данными с файловыми серверами, мы также рекомендуем добавить следующее правило в группу безопасности рабочей группы безопасности, чтобы разрешить исходящий трафик LDAP и Kerberos контроллерам Active Directory при защите файлового сервера с помощью Active Directory; Например, если вы использовали шаблон быстрого запуска для развертывания файлового сервера высокого уровня доступности и SQL Server.

    Для этого перейдите к группе безопасности сети WorkersNsg на портале администрирования и добавьте правило безопасности для исходящего трафика со следующими свойствами.

    • Источник: Любой
    • Диапазон исходных портов: *.
    • Назначение: "IP-адреса".
    • Диапазон IP-адресов назначения: диапазон IP-адресов для серверов AD, например с шаблоном быстрого запуска 10.0.0.100, 10.0.0.101
    • Диапазон портов назначения: 389 88
    • Протокол: Любой
    • Действие: Разрешить
    • Приоритет: 710
    • Имя: Outbound_Allow_LDAP_and_Kerberos_to_Domain_Controllers
  • Приложения клиента не могут привязать сертификаты к приложениям после обновления.

    Причина этой проблемы связана с отсутствием функции на переднем интерфейсе после обновления до Windows Server 2022. Операторы должны следовать этой процедуре, чтобы устранить проблему:

    1. На портале администрирования Azure Stack Hub перейдите к группам безопасности сети и просмотрите группу безопасности сети ControllersNSG .

    2. По умолчанию удаленный рабочий стол отключен для всех ролей инфраструктуры Служба приложений. Измените действие правила Inbound_Rdp_3389 , чтобы разрешить доступ.

    3. Перейдите к группе ресурсов, содержащей развертывание поставщика ресурсов Служба приложений, по умолчанию — AppService.<регион> и подключение к CN0-VM.

    4. Вернитесь к сеансу удаленного рабочего стола CN0-VM .

    5. В сеансе PowerShell администратора выполните следующие действия:

      Внимание

      Во время выполнения этого скрипта будет приостановлено для каждого экземпляра в интерфейсном масштабируемом наборе. Если установлено сообщение, указывающее, что компонент установлен, этот экземпляр будет перезагружен. Используйте паузу в скрипте для поддержания доступности внешнего интерфейса. Операторы должны обеспечить по крайней мере один внешний экземпляр "Готово" в любое время, чтобы гарантировать, что клиентские приложения могут получать трафик, а не работать с простоем.

      $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. На портале администрирования Azure Stack вернитесь к группе безопасности сети ControllersNSG .

    7. Измените правило Inbound_Rdp_3389 , чтобы запретить доступ.

Известные проблемы для облачных администраторов, работающих со службой приложений Azure в Azure Stack

  • Пользовательские домены не поддерживаются в отключенных средах.

    Служба приложений выполняет проверку владения доменом для общедоступных конечных точек DNS. В результате пользовательские домены не поддерживаются в отключенных сценариях.

  • виртуальная сеть интеграция для веб-приложений и функций не поддерживается.

    Возможность добавления интеграции виртуальной сети в веб-приложения и приложения-функции отображается на портале Azure Stack Hub, и если клиент пытается настроить, они получают внутреннюю ошибку сервера. Эта функция не поддерживается в службе приложение Azure в Azure Stack Hub.

Следующие шаги