Создание баз данных SQL с высоким уровнем доступности в Azure Stack Hub

Важно!

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

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

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

Из этого руководства вы узнаете, как выполнять такие задачи:

  • Создание группы доступности AlwaysOn для SQL Server на основе шаблона.
  • Настройте группу доступности AlwaysOn SQL Server в качестве сервера размещения SQL Azure Stack Hub.
  • Создание базы данных SQL с высоким уровнем доступности.

Вы создадите и настроите группу доступности AlwaysOn SQL Server с двумя виртуальными машинами на основе компонентов, доступных в Azure Stack Marketplace.

Прежде чем начать, убедитесь, что поставщик ресурсов SQL Server успешно установлен и что приведенные ниже компоненты доступны в Azure Stack Marketplace.

Важно!

Все следующие элементы необходимы для использования шаблона быстрого запуска Azure Stack Hub.

  • Windows Server 2016 Datacenter.

  • Образ сервера SQL Server 2016 с пакетом обновления 1 или 2 (SP1 или SP2) Enterprise или Developer в Windows Server 2016.

    Примечание

    Стандартная версия не поддерживается. При настройке SQL Server группы доступности AlwaysOn с SQL Server Standard версией можно создать только одну базу данных для одной группы доступности. Это ограничение делает стандартную версию непригодной для нашего сценария. Дополнительные сведения проверка документ здесь.

  • Расширение IaaS для SQL Server 1.3.20180 или более поздней версии. Расширение IaaS для SQL устанавливает необходимые компоненты, которые требуются элементам Marketplace SQL Server, для всех версий Windows. Оно обеспечивает настройку параметров SQL на виртуальных машинах SQL. Если расширение не установлено в локальной версии Marketplace, подготовка SQL завершится ошибкой.

Сведения о том, как добавлять элементы в Azure Stack Marketplace, см. в статье Общие сведения об Azure Stack Hub Marketplace.

Создание группы доступности AlwaysOn для SQL Server

Следуйте инструкциям этого раздела, чтобы развернуть группу доступности SQL Server AlwaysOn с помощью шаблона быстрого запуска Azure Stack Hub sql-2016-alwayson. Этот шаблон развертывает два экземпляра SQL Server Enterprise или Developer в группе доступности Always On. Он создает перечисленные ниже ресурсы.

  • Группа безопасности сети.
  • Виртуальная сеть.
  • Четыре учетные записи хранения (одна для Active Directory (AD), вторая для SQL, третья для файлового ресурса-свидетеля и последняя для диагностики виртуальной машины).
  • Четыре общедоступных IP-адреса (один для AD, по одному для каждой из двух виртуальных машин SQL и один для общедоступной подсистемы балансировки нагрузки, привязанной к прослушивателю SQL AlwaysOn).
  • Один внешний балансировщик нагрузки для виртуальных машин SQL с общедоступным IP-адресом, привязанным к прослушивателю SQL AlwaysOn.
  • Одна виртуальная машина Windows Server 2016, настроенная в качестве контроллера домена для нового леса с одним доменом.
  • Две виртуальные машины Windows Server 2016, кластеризованные и настроенные для использования SQL Server 2016 с пакетом обновления 1 или 2 (SP1 или SP2) Enterprise или Developer Edition. (это должны быть образы Marketplace);
  • Одна виртуальная машина (Windows Server 2016) в роли файлового ресурса-свидетеля для кластера.
  • Одна группа доступности с виртуальными машинами файлового ресурса-свидетеля и SQL.
  1. Войдите на пользовательский портал.

    • Для интегрированного развертывания системы адрес портала может отличаться в зависимости от региона, в котором находится решение, и имени внешнего домена. Он должен быть в формате https://portal.<region>.<FQDN>.
    • Если вы используете Пакет средств разработки Azure Stack, адрес портала будет таким: https://portal.local.azurestack.external.
  2. Последовательно выберите +Создать ресурс>Пользовательский, Развертывание шаблона.

    Развертывание пользовательского шаблона с помощью портала администрирования Azure Stack Hub

  3. В колонке Настраиваемое развертывание выберите Изменить шаблон>Шаблон быстрого запуска, а затем используйте список доступных шаблонов из раскрывающейся списка, чтобы выбрать шаблон sql-2016-alwayson. Нажмите кнопку ОК и щелкните Сохранить.

    Изменение шаблона на портале администрирования Azure Stack Hub

  4. В колонке Настраиваемое развертывание выберите Изменить параметры и проверьте значения по умолчанию. При необходимости измените значения, чтобы предоставить все требуемые сведения о параметрах, а затем щелкните ОК.

    Сделайте как минимум следующее:

    • Укажите сложные пароли для параметров ADMINPASSWORD, SQLSERVERSERVICEACCOUNTPASSWORD и SQLAUTHPASSWORD.
    • Введите DNS-суффикс для обратного поиска во всех строчных буквах параметра DNSSUFFIX (azurestack.external для установок ASDK до версии 2107).

    Изменение параметров на портале администрирования Azure Stack Hub

  5. В колонке Настраиваемое развертывание выберите подписку для использования и создайте группу ресурсов или выберите имеющуюся группу ресурсов для настраиваемого развертывания.

    Затем выберите расположение группы ресурсов (локально для установок ASDK до версии 2107) и нажмите кнопку Создать. Сначала произойдет проверка параметров настраиваемого развертывания, а затем начнется само развертывание.

    Выбор подписки на портале администрирования Azure Stack Hub

  6. На пользовательском портале щелкните элемент Группы ресурсов. Затем выберите имя группы ресурсов, созданной для настраиваемого развертывания (в этом примере resource-group). Просмотрите состояние развертывания, чтобы убедиться, что все развертывания выполнены успешно.

    Затем проверьте элементы группы ресурсов и выберите элемент общедоступного IP-адреса SQLPIPsql<имя группы ресурсов> . Запишите общедоступный IP-адрес и полное доменное имя общедоступного IP-адреса подсистемы балансировки нагрузки. Эти сведения необходимо предоставить оператору Azure Stack Hub, чтобы он мог создать сервер для размещения SQL с использованием этой группы доступности SQL AlwaysOn.

    Примечание

    Развертывание шаблона может занять несколько часов.

Включение автоматического заполнения

После успешного развертывания и настройки шаблона группы доступности SQL AlwaysON необходимо включить автоматическое заполнение на каждом экземпляре SQL Server в группе доступности.

Когда создается группа доступности с автоматическим заполнением, SQL Server автоматически создает вторичные реплики каждой базы данных в группе, не требуя никаких действий вручную. Эта мера гарантирует высокий уровень доступности для баз данных AlwaysOn.

Используйте следующие команды SQL, чтобы настроить автоматическое заполнение для группы доступности AlwaysOn. Замените <PrimaryInstanceName> именем основного экземпляра SQL Server, <SecondaryInstanceName> — именем вторичного экземпляра SQL Server, а <availability_group_name> — именем соответствующей группы доступности AlwaysOn.

На основном экземпляре SQL:

ALTER AVAILABILITY GROUP [<availability_group_name>]
    MODIFY REPLICA ON '<PrimaryInstanceName>'
    WITH (SEEDING_MODE = AUTOMATIC)
GO

ALTER AVAILABILITY GROUP [<availability_group_name>]
    MODIFY REPLICA ON '<SecondaryInstanceName>'
    WITH (SEEDING_MODE = AUTOMATIC)
GO

Сценарий основного экземпляра SQL

На дополнительных экземплярах SQL:

ALTER AVAILABILITY GROUP [<availability_group_name>] GRANT CREATE ANY DATABASE
GO

Сценарий дополнительного экземпляра SQL

Настройка проверки подлинности автономной базы данных

Перед добавлением автономной базы данных в группу доступности необходимо присвоить параметру сервера contained database authentication значение 1 в каждом экземпляре сервера, в котором размещается реплика доступности для группы доступности. Дополнительные сведения см. в статье Параметр конфигурации сервера "проверка подлинности автономной базы данных".

Чтобы задать параметр сервера аутентификации автономной базы данных для каждого экземпляра SQL Server в группе доступности, используйте следующие команды:

EXEC sp_configure 'contained database authentication', 1
GO
RECONFIGURE
GO

Настройка аутентификации автономной базы данных

Настройка сервера размещения SQL Azure Stack Hub

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

Обязательно используйте общедоступный IP-адрес или полное доменное имя для общедоступного IP-адреса подсистемы балансировки нагрузки SQL, которые были записаны ранее при создании группы ресурсов для группы доступности SQL AlwaysOn (SQLPIPsql<>имя группы ресурсов). Кроме того, вам нужны учетные данные аутентификации SQL Server, используемые для доступа к экземплярам SQL в группе доступности AlwaysOn.

Примечание

Оператор Azure Stack Hub должен выполнить этот шаг на портале администрирования Azure Stack Hub.

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

Кроме того, убедитесь, что вы создали планы и предложения, чтобы сделать создание базы данных SQL AlwaysOn доступным для пользователей. Оператору необходимо добавить службу Microsoft.SqlAdapter к плану и создать квоту специально для высокодоступных баз данных. Дополнительные сведения о создании планов см. в статье Service, plan, offer, subscription overview (Обзор служб, планов, предложений и подписок).

Совет

Службу Microsoft.SqlAdapter нельзя добавить в планы, пока не завершится развертывание поставщика ресурсов SQL Server.

Создание высокодоступной базы данных SQL

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

Примечание

Выполните эти шаги из пользовательского портала Azure Stack Hub в качестве пользователя клиента с подпиской, обеспечивающей возможности SQL Server (службу Microsoft.SQLAdapter).

  1. Войдите на пользовательский портал.

    • Для интегрированного развертывания системы адрес портала может отличаться в зависимости от региона, в котором находится решение, и имени внешнего домена. Он должен быть в формате https://portal.<region>.<FQDN>.
    • Если вы используете Пакет средств разработки Azure Stack, адрес портала будет таким: https://portal.local.azurestack.external.
  2. Выберите +Создать ресурс>Данные и хранилище, а затем База данных SQL.

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

    Создание базы данных SQL на портале пользователя Azure Stack Hub

  3. Выберите SKU, а затем соответствующий номер SKU сервера размещения SQL. В нашем примере оператор Azure Stack Hub создал SKU Enterprise-HA с поддержкой высокого уровня доступности для групп доступности SQL AlwaysOn.

    Выбор SKU на пользовательском портале Azure Stack Hub

  4. Выберите Вход>Create a new login (Создать новое имя для входа) и укажите учетные данные аутентификации SQL, которые будут использоваться для новой базы данных. По завершении щелкните ОК, а затем выберите Создать, чтобы запустить развертывание базы данных.

    Создание имени для входа на пользовательском портале Azure Stack Hub

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

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

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

Обновление поставщика ресурсов SQL