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

Важно!

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

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

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

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

Важно!

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

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

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

  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. Обновите домашний каталог Azure Active Directory. Начиная с сборки 1910, новое приложение должно быть зарегистрировано в клиенте домашнего каталога. Это приложение позволит Azure Stack Hub успешно создавать и регистрировать новые поставщики ресурсов (например, Центры событий и другие) в клиенте Azure AD. Это однократное действие, которое необходимо выполнить после обновления до сборки 1910 или более поздней версии. Если этот шаг не завершен, установка поставщика ресурсов Marketplace завершится ошибкой.

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

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

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

    Поддерживаемая версия Azure Stack Hub Версия MySQL RP Windows Server, на котором запущена служба RP
    2108 MySQL RP версии 2.0.6.x Надстройка Microsoft AzureStack RP Windows Server 1.2009.0
    2108, 2102, 2008, 2005 MySQL RP версии 1.1.93.5 Сервер Windows надстройки Microsoft AzureStack
  • Убедитесь, что необходимая виртуальная машина сервера Windows загружена в Azure Stack Hub Marketplace. При необходимости скачайте изображение вручную в соответствии с приведенной выше таблицей сопоставления версий.

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

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

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

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

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

При развертывании поставщика ресурсов Сервера MySQL версии 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" 
    

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

Если вы обновляете версию версии 1, обратитесь к документации по обновлению поставщика ресурсов сервера MySQL.

Запуск установки

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

  2. После загрузки поставщика ресурсов MySQL и другого необходимого программного обеспечения служба управления Marketplace отображает пакеты mySQL Server resource provider с состоянием "Не установлено". Могут отображаться другие пакеты в состоянии "Скачан".

    Screenshot of marketplace management before installing the RP.

  3. Выберите строку, которую вы хотите установить. На странице установки поставщика ресурсов MySQL Server отображается синий баннер в верхней части страницы. Выберите баннер, чтобы начать установку. Screenshot of marketplace management begin RP installation.

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

  1. Далее вы перейдете на страницу установки. Нажмите кнопку Установить необходимые компоненты, чтобы запустить установку. Screenshot of marketplace management install prerequisites.

  2. Дождитесь завершения установки необходимых компонентов. Перед переходом к следующему шагу вы должны увидеть зеленый флажок рядом с шагом Установить необходимые компоненты. Screenshot of marketplace management install prerequisites succeeded.

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

  1. На шаге 2. Prepare secrets (2. Подготовка секретов) щелкните ссылку Добавить сертификат, затем отобразится панель Добавить сертификат. Screenshot of marketplace management prepare secrets.

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

  3. Введите пароль, предоставленный для создания безопасной строки для SSL-сертификата поставщика ресурсов SQL Server. Нажмите кнопку Добавить. Screenshot of marketplace management add certificate.

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

  1. Когда установка сертификата будет выполнена, вы увидите зеленый флажок рядом с шагом Prepare secrets (Подготовка секретов), прежде чем перейдете к следующему шагу. Теперь нажмите кнопку "Настроить и установить " рядом с 3 поставщиком ресурсов. Screenshot of marketplace management start RP installation.

  2. Далее необходимо указать универсальный код ресурса (URI) BLOB-объектов Azure Stack Hub для соединителя MySQL.

    • Просмотрите лицензию GPL соединителя MySQL здесь и скачайте версию 8.0.21 в локальную папку.

    • Создайте учетную запись хранения с подпиской оператора по умолчанию и создайте контейнер с уровнем доступа "BLOB-объект" или "Контейнер". Screenshot oof creating a storage account.Screenshot of creating a storage container.

    • Upload файл mysql-connector-net-8.0.21.msi из локальной папки в только что созданный контейнер хранилища. Screenshot of uploading MySQL Connector to the container.

    • Скопируйте универсальный код ресурса (URI) большого двоичного объекта. Screenshot of copying the MySQL Connector URI.

    • Назад на страницу конфигурации RP MySQL. Вставьте универсальный код ресурса (URI) большого двоичного объекта (например, https://< storageAccountName.blob>.< регион>.< Полное доменное имя,имя><> контейнера/mysql-connector-net-8.0.21.msi) в текстовое поле и нажмите кнопку "ОК". Screenshot of providing MySQL Connector URI.

  3. Далее вы увидите следующую страницу, которая указывает на то, что поставщик ресурсов MySQL устанавливается. Screenshot of marketplace management RP installing.

  4. Дождитесь уведомления о завершении установки. Этот процесс обычно занимает один или несколько часов в зависимости от типа Azure Stack Hub. Screenshot of marketplace management RP install in progress.

  5. Убедитесь, что установка поставщика ресурсов сервера MySQL прошла успешно, вернитесь на страницу "Управление Marketplace" и "Поставщики ресурсов ". Состояние поставщика ресурсов Сервера MySQL должно отображаться как "Установлено". Screenshot of marketplace management RP installed.

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

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

Важно!

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

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

Важно!

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

Примечание

Если вы развертываете поставщик ресурсов MySQL Server версии 1 в отключенной среде, скопируйте файлmysql-connector-net-6.10.5.msi в локальный путь. Укажите путь с помощью параметра DependencyFilesLocalPath.

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

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

Примечание

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

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

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

Имя параметра Описание Комментарий или значение по умолчанию
CloudAdminCredential Учетные данные администратора облака, необходимые для доступа к привилегированной конечной точке. Обязательно
AzCredential Учетные данные администратора службы Azure Stack Hub. Используйте те же учетные данные, которые вы указали при развертывании Azure Stack Hub. Сценарий завершится ошибкой, если учетная запись, используемая с AzCredential, требует многофакторной проверки подлинности (MFA). Обязательно
VMLocalCredential Учетные данные локального администратора на виртуальной машине поставщика ресурсов MySQL. Обязательно
PrivilegedEndpoint IP-адрес или DNS-имя привилегированной конечной точки. Обязательно
AzureEnvironment Среда Azure учетной записи администратора службы, которая использовалась для развертывания Azure Stack Hub. Требуется только для развертываний Azure AD. Поддерживаемые имена среды — AzureCloud, AzureUSGovernment или, в случае использования Azure AD для Китая, — AzureChinaCloud. AzureCloud;
DependencyFilesLocalPath В случае с интегрированными системами в этот каталог нужно поместить PFX-файл сертификата. Для отключенных сред скачайте в этот каталог файл mysql-connector-net-6.10.5.msi. При необходимости можно скопировать сюда один пакет MSU Центра обновления Windows. Необязательно (обязательно для интегрированных систем или отключенных сред)
DefaultSSLCertificatePassword Пароль для PFX-файла сертификата. Обязательно
MaxRetryCount Число повторов каждой операции в случае сбоя. 2
RetryDuration Время ожидания между повторными попытками в секундах. 120
Удаление Удаляет поставщик ресурсов и все связанные с ним ресурсы (см. примечания ниже). нет
DebugMode Отключает автоматическую очистку в случае сбоя. нет
AcceptLicense Пропускает запрос на принятие условий лицензии GPL. https://www.gnu.org/licenses/old-licenses/gpl-2.0.html

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

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

При развертывании поставщика ресурсов MySQL версии 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 -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 environment names are AzureCloud, AzureUSGovernment, or AzureChinaCloud. 
$AzureEnvironment = "<EnvironmentName>"

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

# 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 the credentials for the new resource provider VM local admin account
$vmLocalAdminPass = ConvertTo-SecureString 'P@ssw0rd1' -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("mysqlrpadmin", $vmLocalAdminPass)

# And the cloudadmin credential 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\DeployMySQLProvider.ps1 `
    -AzCredential $AdminCreds `
    -VMLocalCredential $vmLocalAdminCreds `
    -CloudAdminCredential $cloudAdminCreds `
    -PrivilegedEndpoint $privilegedEndpoint `
    -AzureEnvironment $AzureEnvironment `
    -DefaultSSLCertificatePassword $PfxPass `
    -DependencyFilesLocalPath $tempDir\cert `
    -AcceptLicense

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

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

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

Важная конфигурация для Azure AD

Если Azure Stack Hub использует Azure AD в качестве поставщика удостоверений, убедитесь, что виртуальная машина, которая установила поставщик ресурсов Сервера MySQL, имеет исходящее подключение к Интернету.

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

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

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