Заметки о выпуске обновления 3 для Службы приложений Azure в Azure Stack Hub

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

Важно!

Прежде чем развертывать Службу приложений Azure 1.3, примените обновление 1807 к интегрированной системе Azure Stack Hub или разверните последнюю версию Пакета средств разработки Azure Stack (ASDK).

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

Номер сборки обновления 3 для Службы приложений Azure в Azure Stack Hub — 74.0.13698.31.

Предварительные требования

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

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

Состояние роли службы приложений

Новые функции и исправления

Обновление 3 для Службы приложений Azure в Azure Stack Hub включает приведенные ниже улучшения и исправления.

  • Возможность использования SQL Server Always On для базы данных поставщика ресурсов Службы приложений Azure.

  • Добавлен новый параметр среды во вспомогательный скрипт Create-AADIdentityApp, упрощающий выбор регионов Azure AD.

  • Обновления для клиента, администратора службы приложений, портала функций и средств Kudu. Они согласованы с версией пакета SDK для портала Azure Stack Hub.

  • Обновления среды выполнения Функций Azure до версии v1.0.11820.

  • Обновления основной службы для повышения надежности и отображения сообщений об ошибках упрощают диагностику распространенных проблем.

  • Реализованы обновления следующих исполняющих сред и инструментов:

    • Добавлено ASP.NET Core 2.1.2
    • Добавлено NodeJS 10.0.0
    • Добавлено Zulu OpenJDK 8.30.0.1
    • Добавлены Tomcat 8.5.31 и 9.0.8
    • Добавлены PHP версии:
      • 5.6.36
      • 7.0.30
      • 7.1.17
      • 7.2.5
    • Добавлено Wincache 2.0.0.8
    • Обновлено Git для Windows для версии 2.17.1.2
    • Обновлено Kudu до 74.10611.3437
  • Обновления базовой операционной системы всех ролей.

Инструкция после обновления (необязательно)

Клиенты, желающие перейти на автономную базу данных существующей Службы приложений Azure в развернутой инфраструктуре Azure Stack Hub, должны выполнить приведенные ниже действия после завершения обновления Службы приложений Azure в Azure Stack Hub 1.3.

Важно!

Эта процедура занимает примерно 5–10 минут. Эта процедура включает в себя завершение существующих сеансов входа в базу данных. Спланируйте время простоя, чтобы перенести Службу приложений Azure и проверить ее на основе Azure Stack Hub после миграции

  1. Добавьте базы данных Службы приложений (appservice_hosting и appservice_metering) в группу доступности.

  2. Включите автономную базу данных.

    
        sp_configure 'contained database authentication', 1;
        GO
        RECONFIGURE;
            GO
    
  3. Преобразуйте базу данных в частично автономную. Этот шаг приведет к простою, так как все активные сеансы будут завершены.

        /******** [appservice_metering] Migration Start********/
            USE [master];
    
            -- kill all active sessions
            DECLARE @kill varchar(8000) = '';  
            SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
            FROM sys.dm_exec_sessions
            WHERE database_id  = db_id('appservice_metering')
    
            EXEC(@kill);
    
            USE [master]  
            GO  
            ALTER DATABASE [appservice_metering] SET CONTAINMENT = PARTIAL  
            GO  
    
        /********[appservice_metering] Migration End********/
    
        /********[appservice_hosting] Migration Start********/
    
            -- kill all active sessions
            USE [master];
    
            DECLARE @kill varchar(8000) = '';  
            SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
            FROM sys.dm_exec_sessions
            WHERE database_id  = db_id('appservice_hosting')
    
            EXEC(@kill);
    
            -- Convert database to contained
            USE [master]  
            GO  
            ALTER DATABASE [appservice_hosting] SET CONTAINMENT = PARTIAL  
            GO  
    
            /********[appservice_hosting] Migration End********/
    
  4. Перенос учетных данных в пользователи автономной базы данных.

        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
    

Проверка

  1. Проверьте, включен ли для SQL Server автономный режим.

        sp_configure  @configname='contained database authentication'
    
  2. Проверьте текущий автономный режим работы.

        SELECT containment FROM sys.databases WHERE NAME LIKE (SELECT DB_NAME())
    

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

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

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

  • Источник: Любой
  • Диапазон исходных портов: *.
  • Назначение: IP-адреса
  • Диапазон конечных IP-адресов: диапазон IP-адресов для файлового сервера
  • Диапазон конечных портов: 445
  • Протокол: TCP
  • Действие: Allow
  • Приоритет: 700
  • Имя: Outbound_Allow_SMB445

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

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

Дальнейшие действия

  • Общие сведения о Службе Приложений Azure в Azure Stack Hub см. в этой статье.
  • Дополнительные сведения о том, как подготовиться к развертыванию Службы приложений Azure в Azure Stack Hub, см. в этой статье.