Развертывание поставщика ресурсов SQL Server в Azure Stack Hub

Важно!

Начиная со сборки Azure Stack Hub 2108 поставщики ресурсов SQL и MySQL предлагаются для подписок, которым предоставлен доступ. Если вы хотите начать использовать эту функцию или вам нужно выполнить обновление с предыдущей версии, отправьте обращение в службу поддержки , и наши специалисты по поддержке проведут процесс развертывания или обновления.

Используйте поставщик ресурсов SQL Server Azure Stack Hub, чтобы предоставлять доступ к базам данных SQL в качестве службы Azure Stack Hub.

Поставщик ресурсов SQL выполняется как служба на виртуальной машине Windows Server 2016 Server Core.

Поставщик ресурсов SQL выполняется как служба на специальном сервере надстройки Windows Server.

Важно!

Только поставщик ресурсов должен создавать элементы на серверах, на которых размещаются SQL или MySQL. Элементы, созданные на сервере узла, не созданные поставщиком ресурсов, не поддерживаются и могут привести к несоответствию состояния.

Важно!

Поставщик ресурсов SQL/MySQL версии 2.x использует механизм установки поставщика ресурсов развертывания (DRP), который не поддерживается в ASDK. Таким образом, поставщик ресурсов SQL/MySQL версии 2.x не поддерживается в ASDK.

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

Если вы уже установили поставщик ресурсов, вы, вероятно, выполнили указанные далее предварительные требования и можете пропустить этот раздел. В противном случае выполните следующие действия, прежде чем продолжить:

  1. Зарегистрируйте экземпляр Azure Stack Hub в Azure, если вы еще этого не сделали. Этот шаг необходим, так как вы будете скачивать элементы в marketplace из Azure и подключаться к ним.

  2. Если вам не знакома возможность Marketplace Management (Управление Marketplace) на портале администрирования Azure Stack Hub, ознакомьтесь со статьей Скачивание элементов marketplace из Azure и их публикация в Azure Stack Hub. В этой статье описывается скачивание элементов из Azure в Azure Stack Hub marketplace. В ней рассматриваются сценарии с подключением к Интернету и без него. Если экземпляр концентратора Azure Stack Hub не подключен или частично подключен к Интернету, существуют дополнительные предварительные требования для завершения подготовки к установке.

  3. Обновите домашний каталог Microsoft Entra. Начиная со сборки 1910, новое приложение должно быть зарегистрировано в клиенте домашнего каталога. Это приложение позволит Azure Stack Hub успешно создавать и регистрировать новых поставщиков ресурсов (например, Центры событий и другие) в клиенте Microsoft Entra. Это однократное действие, которое необходимо выполнить после обновления до сборки 1910 или более поздней версии. Если этот шаг не будет выполнен, установка поставщика ресурсов Marketplace завершится ошибкой.

Предварительные требования к поставщику ресурсов SQL Server

  • Вам потребуется компьютер и учетная запись, которые могут получить доступ к:

    • портал администрирования Azure Stack Hub.
    • привилегированная конечная точка (требуется только при развертывании поставщика ресурсов SQL Server версии 1 или обновлении с SQL Server поставщика ресурсов версии 1 до SQL Server поставщика ресурсов версии 2).
    • Конечная точка администратора Azure Resource Manager , https://adminmanagement.region.<fqdn>где <fqdn> — это полное доменное имя.
    • Интернет, если azure Stack Hub был развернут для использования идентификатора Microsoft Entra в качестве поставщика удостоверений.
  • Скачайте поддерживаемую версию двоичного файла поставщика ресурсов SQL в соответствии с приведенной ниже таблицей сопоставления версий. Для поставщика ресурсов SQL версии 2 скачайте элемент Marketplace в Azure Stack Hub.

    Поддерживаемая версия Azure Stack Hub Версия SQL RP Windows Server, на котором запущена служба RP
    2206, 2301, 2306 SQL RP версии 2.0.13.x Microsoft AzureStack Add-on RP Windows Server 1.2009.0
    2108, 2206 SQL RP версии 2.0.6.x Microsoft AzureStack Add-on RP Windows Server 1.2009.0
  • Убедитесь, что необходимая виртуальная машина Windows Server загружена в Azure Stack Hub Marketplace. При необходимости скачайте изображение вручную в соответствии с приведенной выше таблицей сопоставления версий.

  • Убедитесь, что выполнены предварительные требования для интеграции центра обработки данных.

    Предварительное требование Ссылка
    Условное перенаправление DNS настроено правильно. Интеграция DNS центра обработки данных Azure Stack Hub
    Открыты входящие порты для поставщиков ресурсов. Порты и протоколы (входящие)
    Субъект сертификата PKI и SAN настроены правильно. Обязательные сертификаты
    Необязательные сертификаты PaaS
  • Подготовьте сертификат. (Только для установки интегрированных систем.)

    • Укажите сертификат SQL PaaS PKI, описанный в разделе о необязательных сертификатах PaaS в статье Требования к сертификатам инфраструктуры открытых ключей Azure Stack Hub. Альтернативное имя субъекта (SAN) должно соответствовать следующему шаблону именования: CN=*.dbadapter.<регион>.<полное доменное имя> с защитой паролем. Снимок экрана: скачанные пакеты управления Marketplace.
    • При развертывании SQL Server поставщика ресурсов версии 1 поместите PFX-файл в расположение, указанное параметром DependencyFilesLocalPath. Не предоставляйте сертификат для систем ASDK.
    • При развертывании SQL Server поставщика ресурсов версии 2 подготовьте сертификат к следующим шагам установки.

Сценарии без подключения

При развертывании SQL Server поставщика ресурсов версии 2 в отключенном сценарии следуйте инструкциям по скачиванию элементов Marketplace в Azure Stack Hub, чтобы скачать элемент поставщика ресурсов SQL Server и элемент Надстройка RP Windows Server в среду Azure Stack Hub.

При развертывании SQL Server поставщика ресурсов версии 1 в отключенном сценарии выполните следующие действия, чтобы скачать необходимые модули PowerShell и зарегистрировать репозиторий вручную.

  1. Войдите на компьютер, подключенный к Интернету, и с помощью приведенных ниже скриптов скачайте модули PowerShell.

    Import-Module -Name PowerShellGet -ErrorAction Stop
    Import-Module -Name PackageManagement -ErrorAction Stop
    
    # path to save the packages, c:\temp\azs1.6.0 as an example here
    $Path = "c:\temp\azs1.6.0"
    
  2. В зависимости от версии развертываемого поставщика ресурсов запустите один из скриптов.

    # for resource provider version >= 1.1.93.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.5.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.8.2
    
    # for resource provider version <= 1.1.47.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureRM -Path $Path -Force -RequiredVersion 2.3.0
    Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $Path -Force -RequiredVersion 1.6.0
    
  3. Затем скопируйте скачанные пакеты на USB-устройство.

  4. Войдите на отключенную рабочую станцию и скопируйте пакеты с USB-устройства в нужное расположение на ней.

  5. Зарегистрируйте это расположение в качестве локального репозитория.

    # requires -Version 5
    # requires -RunAsAdministrator
    # requires -Module PowerShellGet
    # requires -Module PackageManagement
    
    $SourceLocation = "C:\temp\azs1.6.0"
    $RepoName = "azs1.6.0"
    
    Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted
    
    New-Item -Path $env:ProgramFiles -name "SqlMySqlPsh" -ItemType "Directory"
    

Развертывание поставщика ресурсов SQL версии 2

Если вы выполняете обновление с версии 1, см. документ Обновление поставщика ресурсов SQL Server.

Начать установку

  1. Если вы еще не сделали это, войдите на портал администрирования Azure Stack Hub, слева выберите Marketplace Management (Управление Marketplace) и щелкните Поставщики ресурсов.

  2. После скачивания поставщика ресурсов SQL и другого необходимого программного обеспечения управление Marketplace отображает пакеты "поставщик ресурсов SQL Server" с состоянием "Не установлено". Могут отображаться другие пакеты в состоянии "Скачан". Снимок экрана: управление Marketplace перед установкой RP.

  3. Выберите строку, которую вы хотите установить. На странице установки пакета поставщика ресурсов SQL Server сверху отображается синий баннер. Выберите баннер, чтобы начать установку. Снимок экрана: начало установки управления Marketplace.

Установка необходимых компонентов

  1. Далее вы перейдете на страницу установки. Нажмите кнопку Установить необходимые компоненты, чтобы запустить установку. Снимок экрана: предварительные требования для установки управления Marketplace.

  2. Дождитесь завершения установки необходимых компонентов. Перед переходом к следующему шагу вы должны увидеть зеленый флажок рядом с шагом Установить необходимые компоненты. Снимок экрана: предварительные требования для установки управления Marketplace выполнены успешно.

Подготовка секретов

  1. На шаге 2. Prepare secrets (2. Подготовка секретов) щелкните ссылку Добавить сертификат, затем отобразится панель Добавить сертификат. Снимок экрана: подготовка секретов управления Marketplace.

  2. Нажмите кнопку обзора в области Добавить сертификат справа от поля имени файла сертификата. Выберите PFX-файл сертификата, приобретенный при выполнении предварительных требований.

  3. Введите пароль, указанный для создания безопасной строки для SSL-сертификата поставщика ресурсов SQL Server. Нажмите кнопку Добавить. Снимок экрана: добавление сертификата для управления Marketplace.

Установка поставщика ресурсов

  1. Когда установка сертификата будет выполнена, вы увидите зеленый флажок рядом с шагом Prepare secrets (Подготовка секретов), прежде чем перейдете к следующему шагу. Теперь нажмите кнопку Установить рядом с шагом 3 Install resource provider (3. Установка поставщика ресурсов). Снимок экрана: запуск установки поставщика ресурсов для управления Marketplace.

  2. Далее вы увидите следующую страницу, на которой указано, что поставщик ресурсов SQL устанавливается. Снимок экрана: установка поставщика ресурсов управления Marketplace.

  3. Дождитесь уведомления о завершении установки. Этот процесс обычно занимает один или несколько часов в зависимости от типа Azure Stack Hub. Снимок экрана: выполняется установка поставщика ресурсов управления Marketplace.

  4. Убедитесь, что установка поставщика ресурсов SQL Server выполнена успешно, вернитесь на страницу Управление Marketplace, поставщики ресурсов. Состояние поставщика ресурсов SQL Server должно отображаться как "Установлено". Снимок экрана: установленная поставщик ресурсов управления Marketplace.

Развертывание поставщика ресурсов SQL версии 1

После выполнения всех предварительных требований запустите самоизвлекатель, чтобы извлечь скачанный пакет установки во временный каталог. Запустите скрипт DeploySqlProvider.ps1 с компьютера, который может получить доступ как к конечной точке администратора Azure Resource Manager Azure, так и к привилегированной конечной точке, чтобы развернуть поставщик ресурсов SQL. Скрипт DeploySqlProvider.ps1 входит в состав двоичного файла поставщика ресурсов SQL, загруженного для вашей версии Azure Stack Hub.

Важно!

Перед развертыванием поставщика ресурсов просмотрите примечания к выпуску, чтобы узнать о новых функциях, исправлениях и любых известных проблемах, которые могут повлиять на развертывание.

Чтобы развернуть поставщик ресурсов SQL, откройте новое окно PowerShell с повышенными привилегиями (не интегрированную среду сценариев PowerShell) и перейдите в каталог, в который ранее извлекли двоичные файлы поставщика ресурсов SQL.

Важно!

Мы настоятельно рекомендуем использовать Clear-AzureRmContext -Scope CurrentUser и Clear-AzureRmContext -Scope Process , чтобы очистить кэш перед запуском сценария развертывания или обновления.

Запустите скрипт DeploySqlProvider.ps1, который выполняет следующие задачи:

  • Передает сертификаты и другие артефакты в учетную запись хранения в Azure Stack Hub.
  • Публикует пакеты коллекции, что позволяет развертывать базы данных SQL с помощью коллекции.
  • Публикует пакет коллекции для развертывания серверов размещения.
  • Развертывает виртуальную машину с помощью образа Windows Server 2016 ядра или загруженного образа Windows Server надстройки Microsoft AzureStack, а затем устанавливает поставщик ресурсов SQL.
  • Регистрирует локальную запись DNS для сопоставления с виртуальной машиной поставщика ресурсов.
  • Регистрирует поставщик ресурсов в локальном экземпляре Azure Resource Manager для оператора.

Примечание

Когда вы запустите развертывание поставщика ресурсов SQL, будет создана группа ресурсов system.local.sqladapter. На выполнение обязательных развертываний в эту группу ресурсов может потребоваться до 75 минут. Не следует размещать другие ресурсы в группе ресурсов system.local.sqladapter.

Параметры DeploySqlProvider.ps1

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

Имя параметра Описание Комментарий или значение по умолчанию
CloudAdminCredential Учетные данные администратора облака, необходимые для доступа к привилегированной конечной точке. Обязательно
AzCredential Учетные данные администратора службы Azure Stack Hub. Используйте те же учетные данные, которые вы указали при развертывании Azure Stack Hub. Сценарий завершится ошибкой, если для учетной записи, используемой с AzCredential, требуется многофакторная проверка подлинности (MFA). Обязательно
VMLocalCredential Учетные данные для локальной учетной записи администратора виртуальной машины поставщика ресурсов SQL. Обязательно
PrivilegedEndpoint IP-адрес или DNS-имя привилегированной конечной точки. Обязательно
AzureEnvironment Среда Azure учетной записи администратора службы, которая использовалась для развертывания Azure Stack Hub. Требуется только для Microsoft Entra развертываний. Поддерживаемые имена сред: AzureCloud, AzureUSGovernment или, если используется идентификатор Microsoft Entra Для Китая, AzureChinaCloud. AzureCloud;
DependencyFilesLocalPath В случае с интегрированными системами в этот каталог нужно поместить PFX-файл сертификата. При необходимости можно скопировать сюда один пакет MSU Центра обновления Windows. Необязательный (обязательно для интегрированных систем)
DefaultSSLCertificatePassword Пароль для PFX-файла сертификата. Обязательно
MaxRetryCount Число повторов каждой операции в случае сбоя. 2
RetryDuration Время ожидания между повторными попытками в секундах. 120
Удаление Удаляет поставщик ресурсов и все связанные с ним ресурсы (см. примечания ниже). нет
DebugMode Отключает автоматическую очистку в случае сбоя. нет

Развертывание поставщика ресурсов SQL с помощью пользовательского сценария

При развертывании поставщика ресурсов SQL версии 1.1.33.0 или предыдущих версий необходимо установить в PowerShell определенные версии модулей AzureRm.BootStrapper и Azure Stack Hub.

При развертывании поставщика ресурсов SQL версии 1.1.47.0 или более поздней скрипт развертывания автоматически скачает и установит необходимые модули PowerShell для пути C:\Program Files\SqlMySqlPsh.

# Install the AzureRM.Bootstrapper module, set the profile, and install the AzureStack module
# Note that this might not be the most currently available version of Azure Stack Hub PowerShell
Install-Module -Name AzureRm.BootStrapper -RequiredVersion 0.5.0 -Force
Use-AzureRmProfile -Profile 2018-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.6.0

Примечание

В отключенном сценарии необходимо скачать необходимые модули PowerShell и зарегистрировать репозиторий вручную в качестве необходимого компонента.

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

# Use the NetBIOS name for the Azure Stack Hub domain. On the Azure Stack Hub SDK, the default is AzureStack but could have been changed at install time.
$domain = "AzureStack"

# For integrated systems, use the IP address of one of the ERCS VMs
$privilegedEndpoint = "AzS-ERCS01"

# Provide the Azure environment used for deploying Azure Stack Hub. Required only for Azure AD deployments. Supported values for the <environment name> parameter are AzureCloud, AzureChinaCloud, or AzureUSGovernment depending which Azure subscription you're using.
$AzureEnvironment = "<EnvironmentName>"

# Point to the directory where the resource provider installation files were extracted.
$tempDir = 'C:\TEMP\SQLRP'

# The service admin account can be Azure Active Directory or Active Directory Federation Services.
$serviceAdmin = "admin@mydomain.onmicrosoft.com"
$AdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$AdminCreds = New-Object System.Management.Automation.PSCredential ($serviceAdmin, $AdminPass)

# Set credentials for the new resource provider VM local admin account.
$vmLocalAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("sqlrpadmin", $vmLocalAdminPass)

# Add the cloudadmin credential that's required for privileged endpoint access.
$CloudAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$CloudAdminCreds = New-Object System.Management.Automation.PSCredential ("$domain\cloudadmin", $CloudAdminPass)

# Change the following as appropriate.
$PfxPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force

# For version 1.1.47.0 or later, the PowerShell modules used by the RP deployment are placed in C:\Program Files\SqlMySqlPsh
# The deployment script adds this path to the system $env:PSModulePath to ensure correct modules are used.
$rpModulePath = Join-Path -Path $env:ProgramFiles -ChildPath 'SqlMySqlPsh'
$env:PSModulePath = $env:PSModulePath + ";" + $rpModulePath 

# Change to the directory folder where you extracted the installation files. Don't provide a certificate on ASDK!
. $tempDir\DeploySQLProvider.ps1 `
    -AzCredential $AdminCreds `
    -VMLocalCredential $vmLocalAdminCreds `
    -CloudAdminCredential $cloudAdminCreds `
    -PrivilegedEndpoint $privilegedEndpoint `
    -AzureEnvironment $AzureEnvironment `
    -DefaultSSLCertificatePassword $PfxPass `
    -DependencyFilesLocalPath $tempDir\cert

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

Проверка развертывания версии 1 с помощью портала Azure Stack Hub

  1. Войдите на портал администрирования с правами администратора служб.
  2. Выберите элемент Группы ресурсов.
  3. Выберите группу ресурсов system.<расположение>.sqladapter.
  4. На странице сводки в разделе обзора группы ресурсов не должно быть сообщений о сбоях развертывания.
  5. Наконец, выберите Виртуальные машины на портале администратора, чтобы убедиться, что виртуальная машина поставщика ресурсов SQL успешно создана и работает.

Важная конфигурация для идентификатора Microsoft Entra

Если azure Stack Hub использует идентификатор Microsoft Entra в качестве поставщика удостоверений, убедитесь, что виртуальная машина, установленная SQL Server поставщиком ресурсов, имеет исходящее подключение к Интернету.

Если необходимо получить IP-адрес виртуальной машины, установленной SQL Server поставщиком ресурсов (т. е. добавить IP-адрес в список разрешенных брандмауэра), необходимо отправить обращение в службу поддержки, чтобы инженер службы поддержки временно отображал подписку поставщика ресурсов SQL Server. Затем можно найти виртуальную машину в подписке и получить ее IP-адрес.

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

Добавление серверов размещения