Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:SQL Server на виртуальной машине Azure
Совет
Существует множество методов развертывания группы доступности. Упрощение развертывания и устранение необходимости использования Azure Load Balancer или распределенного сетевого имени (DNN) для группы доступности AlwaysOn путем создания виртуальных машин SQL Server в нескольких подсетях в одной виртуальной сети Azure. Если вы уже создали группу доступности в одной подсети, ее можно перенести в среду с несколькими подсетами.
В этой статье описывается, как использовать портал Azure для настройки группы доступности для SQL Server на виртуальных машинах Azure в нескольких подсетях, создав следующее:
- Новые виртуальные машины с SQL Server.
- Кластер отказоустойчивости Windows.
- Группа доступности.
- Слушатель.
Примечание.
Этот метод развертывания поддерживает SQL Server 2016 и более поздние версии на Windows Server 2016 и более поздние версии.
Развертывание группы доступности с несколькими подсетями через портал предоставляет пользователям простой и полный опыт. Он настраивает виртуальные машины, следуя рекомендациям по обеспечению высокого уровня доступности и аварийного восстановления (HADR).
Хотя в этой статье используется портал Azure для настройки среды группы доступности, это также можно сделать вручную.
Примечание.
Решение группы доступности можно поднять и переместить на SQL Server на виртуальных машинах Azure с помощью службы "Миграция Azure". Дополнительные сведения см. в статье "Перенос группы доступности".
Предварительные требования
Чтобы настроить группу доступности AlwaysOn с помощью портал Azure, необходимо иметь следующие предварительные требования:
группа ресурсов;
Виртуальная сеть с настраиваемым IP-адресом DNS-сервера
Виртуальная машина контроллера домена в той же виртуальной сети
Следующие разрешения учетной записи:
Учетная запись пользователя домена с разрешениями на создание объекта компьютера в домене. Этот пользователь создаст кластер и группу доступности и установит SQL Server.
Например, учетная запись пользователя домена (
account@domain.com
) обычно имеет достаточно разрешений. Эта учетная запись также должна входить в группу локальных администраторов на каждой виртуальной машине для создания кластера.Учетная запись службы SQL Server, используемая для управления SQL Server в домене. Это должна быть одна учетная запись для каждой виртуальной машины SQL Server, которую вы хотите добавить в группу доступности.
Примечание.
В этом руководстве предполагается, что DNS-сервер и контроллер домена находятся на одной виртуальной машине. Если DNS-сервер настроен на виртуальной машине, отличной от виртуальной машины контроллера домена, задержка при синхронизации объектов может привести к проблемам автоматического развертывания.
Выберите образ Azure Marketplace
Используйте Azure Marketplace, чтобы выбрать один из нескольких предварительно настроенных образов из коллекции. Существует две точки входа для запуска развертывания группы доступности в портал Azure:
Первым вариантом является поиск в Azure Marketplace по запросу "SQL Server с высокой доступностью" и нахождение плитки SQL Server с высокой доступностью:
Нажмите кнопку "Создать " на плитке, чтобы продолжить.
Второй вариант — перейти к Azure SQL на портале Azure. Если SQL Azure еще не в списке меню, выберите все службы, введите SQL Azure в поле поиска и выберите результат.
Выберите + Создать, чтобы открыть панель Выбор варианта развертывания SQL.
В разделе "Виртуальные машины SQL" установите флажок "Высокий уровень доступности ". В поле "Изображение" введите нужную версию SQL Server (например, 2019), а затем выберите образ SQL Server (например, бесплатная лицензия SQL Server: разработчик SQL 2019 в Windows Server 2019).
После выбора флажка "Высокий уровень доступности " на портале отображаются поддерживаемые версии SQL Server, начиная с SQL Server 2016.
Нажмите кнопку создания.
Выбор основных параметров
На вкладке "Основы" выберите подписку и группу ресурсов. Кроме того, укажите сведения о экземплярах SQL Server, создаваемых для группы доступности.
В раскрывающихся списках выберите подписку и группу ресурсов, содержащую контроллер домена, и где планируется развернуть группу доступности.
Используйте ползунок, чтобы выбрать количество виртуальных машин, которые требуется создать для группы доступности. Минимальное значение — 2, а максимальное — 9. Имена виртуальных машин предварительно заполнены, но их можно изменить, выбрав "Изменить имена".
В поле Регион выберите регион. Все виртуальные машины будут развернуты в одном регионе.
Для параметров доступности выберите зону доступности или группу доступности. Дополнительные сведения о параметрах доступности см. в разделе "Доступность". При выборе зоны доступности каждая виртуальная машина будет назначена зоне в регионе, но ее можно настроить позже в разделе параметров сети .
Для типа безопасности выберите "Стандартный" или "Доверенный запуск".
В списке образов выберите образ с версией SQL Server и нужной операционной системой. Используйте раскрывающийся список, чтобы выбрать образ для развертывания. Выберите Настроить поколение ВМ, чтобы выбрать поколение виртуальной машины. Если выбран доверенный запуск для типа безопасности, то поколение виртуальной машины должно быть 2-го поколения.
Выберите "Просмотреть все размеры " для размера виртуальных машин. Все созданные виртуальные машины будут одного размера. Для рабочих нагрузок в производстве см. рекомендуемые размеры и конфигурацию в рекомендациях по лучшим практикам производительности для SQL Server на виртуальных машинах Azure.
В учетной записи администратора виртуальной машины укажите имя пользователя и пароль. Пароль должен быть не менее 12 символов и соответствовать определенным требованиям сложности. Эта учетная запись будет администратором виртуальной машины.
В разделе "Лицензирование" вы можете включить Преимущество гибридного использования Azure перенести существующую лицензию Windows Server в Azure. Этот параметр доступен только в том случае, если вы являетесь клиентом Software Assurance.
Выберите "Да", если вы хотите включить Преимущество гибридного использования Azure, а затем убедитесь, что у вас есть Software Assurance, установив флажок. Этот параметр недоступен, если выбран один из бесплатных образов SQL Server, таких как версия Developer.
В разделе "Лицензия SQL Server" у вас есть возможность включить Преимущество гибридного использования Azure принести собственную лицензию SQL Server и сэкономить на стоимости лицензирования. Этот параметр доступен только в том случае, если вы являетесь клиентом Software Assurance.
Выберите "Да", если вы хотите включить Преимущество гибридного использования Azure, а затем убедитесь, что у вас есть Software Assurance, установив флажок. Этот параметр недоступен, если выбран один из бесплатных образов SQL Server, например выпуск разработчика.
Выберите Далее: сеть.
Выбор параметров сети
На вкладке "Сеть" настройте параметры сети:
Выберите виртуальную сеть из раскрывающегося списка. Список предварительно заполнен на основе региона и группы ресурсов, выбранной ранее на вкладке "Основные сведения ". Выбранная виртуальная сеть должна содержать виртуальную машину контроллера домена.
Внимание
Если контроллер домена не существует в выбранной виртуальной сети, развертывание завершится ошибкой.
В качестве значения параметра Группа безопасности сети сетевого адаптера выберите базовую или расширенную группу безопасности. При выборе базового параметра можно выбрать входящие порты для виртуальной машины SQL Server. Если выбрана расширенная группа, можно выбрать существующую группу безопасности сети или создать новую.
При необходимости настройте общедоступные входящие порты, нажав кнопку "Разрешить выбранные порты". Затем используйте раскрывающийся список, чтобы выбрать разрешенные распространенные порты.
Выберите тип SKU общедоступного IP-адреса. Все компьютеры будут использовать этот общедоступный IP-тип.
Каждая созданная виртуальная машина должна находиться в собственной подсети.
В разделе "Создание подсетей" выберите "Управление конфигурацией подсети", чтобы открыть область подсетей для виртуальной сети. Затем создайте подсеть (+подсеть) для каждой виртуальной машины или убедитесь, что подсеть доступна для каждой виртуальной машины, которую требуется создать для группы доступности.
По завершении используйте X , чтобы закрыть область управления подсетью и вернуться на страницу развертывания группы доступности.
Используйте раскрывающиеся списки, чтобы назначить подсеть, общедоступный IP-адрес и IP-адрес прослушивателя каждой создаваемой виртуальной машине. Если вы используете образ Windows Server 2016, вам также нужно назначить IP-адрес кластера. Если вы выбрали зону доступности на вкладке "Основные сведения" в качестве параметра доступности, каждая виртуальная машина была назначена другой зоне. При необходимости переназначьте каждую виртуальную машину в зону, но обратите внимание, что виртуальные машины нельзя поместить в одну зону доступности.
При назначении подсети виртуальной машине прослушиватель и поля кластера предварительно заполняются доступными IP-адресами. Поместите курсор в поле, если вы хотите изменить IP-адрес. Выберите "Создать" , если необходимо создать новый IP-адрес.
Если вы хотите удалить только что созданный общедоступный IP-адрес и сетевой адаптер при удалении виртуальной машины, установите флажок.
Нажмите кнопку "Далее": WSFC и учетные данные.
Выбор параметров отказоустойчивого кластера
На вкладке WSFC и Учетные данные укажите сведения об учетной записи для настройки отказоустойчивого кластера Windows Server и SQL Server и управления ими.
Внимание
Чтобы развертывание работало, все учетные записи должны уже существовать в Active Directory для виртуальной машины контроллера домена. Этот процесс развертывания не создает учетные записи и завершится ошибкой, если вы предоставите недопустимую учетную запись. Дополнительные сведения о необходимых разрешениях см. в статье "Настройка учетных записей кластера" в Active Directory.
В разделе Сведения о отказоустойчивом кластере Windows Server укажите имя, которое вы хотите использовать для отказоустойчивого кластера.
В раскрывающемся списке выберите аккаунт хранения, который вы хотите использовать для облачного свидетеля. Если он не существует, выберите "Создать новую учетную запись хранения".
В разделе подробные сведения о домене Windows Active Directory:
Для имени пользователя присоединения к домену и пароля присоединения к домену введите учетные данные для учетной записи, которая создает имя отказоустойчивого кластера Windows Server в Active Directory и присоединяет виртуальные машины к домену. Эта учетная запись должна иметь разрешения на создание объектов компьютера.
Для FQDN домен введите полное доменное имя, например contoso.com.
В разделе сведений о SQL Server укажите сведения о учетной записи службы SQL Server. Доступны несколько вариантов выбора:
a. Используйте ту же учетную запись, присоединенную к домену, которая создает кластер и присоединяет виртуальные машины к домену, выбрав учетную запись ту же, что и для присоединения к домену. Это та же учетная запись, что и выше.
b. Выбрав групповую управляемую учетную запись службы (GMSA), мы установим все необходимые средства и службы на созданных виртуальных машинах, включая установку средства ADDS, присоединение виртуальных машин к группе безопасности GMSA и установку службы GMSA. Для успешного развертывания GMSA пользователь, присоединенный к домену, должен иметь по крайней мере разрешение на запись в группе GMSA AD.
c. Вы также можете выбрать "Пользовательский" и указать различные сведения об учетной записи для использования с учетной записью службы SQL Server.
Нажмите кнопку "Далее" — диски.
Выбор параметров диска
На вкладке "Диски" настройте параметры диска для виртуальных машин и конфигурации хранилища SQL Server:
В разделе "Тип диска ОС" выберите тип диска, который требуется для операционной системы. Рекомендуется использовать премиум для производственных систем, но он недоступен для базовой виртуальной машины. Чтобы использовать SSD (цен. категория "Премиум"), измените размер виртуальной машины.
Выберите значение типа шифрования для дисков.
В разделе "Конфигурация хранилища" выберите "Изменить конфигурацию", чтобы открыть область хранилища и указать требования к хранилищу. Вы можете оставить значения по умолчанию или вручную изменить топологию хранилища в соответствии с вашими потребностями для операций ввода-вывода в секунду (IOPS). Дополнительные сведения см. в разделе "Настройка хранилища для виртуальных машин SQL Server".
В разделе Хранилище данных выберите расположение диска данных, тип диска и количество дисков. Вы также можете установить флажок для хранения системных баз данных на диске данных вместо локального диска C.
В разделе "Хранилище журналов" можно использовать тот же диск, что и диск данных для файлов журнала транзакций, или выбрать отдельный диск из раскрывающегося списка. Кроме того, можете выбрать имя диска, тип диска и количество дисков.
В хранилище TempDb настройте
tempdb
параметры базы данных. Варианты включают расположение файлов базы данных, количество файлов, начальный размер и размер увеличения в мегабайтах.В настоящее время во время развертывания максимальное количество
tempdb
файлов составляет восемь. Но вы можете добавить дополнительные файлы после развертывания виртуальной машины SQL Server.Нажмите кнопку ОК, чтобы сохранить параметры конфигурации.
Выберите Далее: параметры SQL Server.
Выбор параметров SQL Server
На вкладке параметров SQL Server настройте определенные параметры и оптимизации для SQL Server и группы доступности:
В разделе "Сведения о группе доступности":
Укажите имя группы доступности и прослушивателя.
Выберите роль (первичная или вторичная) для создания каждой виртуальной машины.
Выберите параметры группы доступности, которые лучше всего соответствуют вашим бизнес-потребностям.
В разделе "Безопасность и сеть" выберите подключение SQL для доступа к экземпляру SQL Server на виртуальных машинах. Дополнительные сведения о параметрах подключения см. в разделе "Подключение".
Если требуется проверка подлинности SQL Server, выберите "Включить " в разделе "Проверка подлинности SQL Server" и укажите имя входа и пароль. Эти учетные данные будут использоваться во всех развернутых виртуальных машинах. Дополнительные сведения о параметрах проверки подлинности см. в разделе "Проверка подлинности".
Для интеграции Azure Key Vault выберите "Включить ", если вы хотите использовать Azure Key Vault для хранения секретов безопасности для шифрования. Затем введите запрошенные сведения. Дополнительные сведения см. в статье об интеграции Azure Key Vault.
Выберите "Изменить параметры экземпляра SQL" , чтобы изменить параметры конфигурации SQL Server. К этим параметрам относятся параметры сортировки сервера, максимальная степень параллелизма (MAXDOP), минимальная и максимальная память, а также необходимость оптимизации для нерегламентированных рабочих нагрузок.
Выбор проверки предварительных условий
Для успешного развертывания необходимо выполнить несколько предварительных требований . Чтобы упростить проверку правильности всех разрешений и требований, используйте скрипт предварительных требований PowerShell, доступный для скачивания на этой вкладке.
Скрипт будет предварительно заполнен значениями, указанными на предыдущих шагах. Запустите сценарий PowerShell в качестве пользователя домена на виртуальной машине контроллера домена или на виртуальной машине Windows Server, присоединенной к домену.
После выполнения скрипта и проверки необходимых компонентов установите флажок подтверждения.
Выберите Review + Create.
На вкладке "Просмотр и создание " просмотрите сводку. Затем выберите Создать, чтобы создать SQL Server, отказоустойчивый кластер, группу доступности и прослушиватель.
При необходимости можно выбрать скачивание шаблона для автоматизации.
Развертывание можно отслеживать на портале Azure. Кнопка "Уведомления" в верхней части экрана показывает базовое состояние развертывания.
После завершения развертывания можно перейти к ресурсу виртуальных машин SQL на портале. В разделе "Параметры" выберите высокий уровень доступности, чтобы отслеживать работоспособность группы доступности. Выберите стрелку рядом с именем вашей группы доступности, чтобы увидеть список всех реплик.
Примечание.
Работоспособность синхронизации на странице высокой доступности портала Azure отображается как "Не работает", пока вы не добавите базы данных в группу доступности.
Добавление баз данных в группу доступности
Добавьте базы данных в группу доступности после завершения развертывания. В следующих шагах используется SQL Server Management Studio, но вы также можете использовать Transact-SQL или PowerShell.
Подключитесь к одной из виртуальных машин SQL Server с помощью предпочтительного метода, например Бастиона. Используйте учетную запись домена, которая входит в фиксированную роль сервера sysadmin во всех экземплярах SQL Server.
Откройте SQL Server Management Studio.
Подключитесь к экземпляру SQL Server.
В обозреватель объектов разверните узел AlwaysOn с высоким уровнем доступности.
Разверните группы доступности, щелкните правой кнопкой мыши группу доступности и выберите пункт "Добавить базу данных".
Снимок экрана SQL Server Management Studio, показывающий параметры для добавления базы данных в группу доступности.
Следуйте инструкциям, чтобы выбрать базу данных, которую вы хотите добавить в группу доступности.
Нажмите кнопку "ОК ", чтобы сохранить параметры и добавить базу данных.
Обновите обозреватель объектов, чтобы подтвердить состояние базы данных как
synchronized
.
После добавления баз данных можно проверить группу доступности в портале Azure и убедиться, что состояние — здоровое.
Изменение группы доступности
После развертывания группы доступности на портале все изменения в группе доступности необходимо выполнить вручную. Если вы хотите удалить реплику, это можно сделать с помощью SQL Server Management Studio или Transact-SQL, а затем удалить виртуальную машину через портал Azure. Если вы хотите добавить реплику, необходимо вручную развернуть виртуальную машину в группе ресурсов, присоединить ее к домену и добавить реплику так же, как это обычно делается в традиционной локальной среде.
Удаление кластера
Кластер можно удалить с помощью последней версии Azure CLI или PowerShell.
Сначала удалите все виртуальные машины SQL Server из кластера:
# Remove the VM from the cluster metadata
# example: az sql vm remove-from-group --name SQLVM2 --resource-group SQLVM-RG
az sql vm remove-from-group --name <VM1 name> --resource-group <resource group name>
az sql vm remove-from-group --name <VM2 name> --resource-group <resource group name>
Если удаленные виртуальные машины SQL Server были единственными виртуальными машинами в кластере, кластер будет уничтожен. Если другие виртуальные машины остаются в кластере, эти виртуальные машины не будут удалены, а кластер не будет уничтожен.
Затем удалите метаданные кластера из расширения агента IaaS SQL:
# Remove the cluster from the SQL VM RP metadata
# example: az sql vm group delete --name Cluster --resource-group SQLVM-RG
az sql vm group delete --name <cluster name> --resource-group <resource group name>
Устранение неполадок
При возникновении проблем можно проверить журнал развертывания, а затем просмотреть распространенные ошибки и их решения.
Изменения в кластере и группе доступности на портале происходят посредством развертываний. Журнал развертывания может предоставить дополнительные сведения, если возникли проблемы с созданием или подключением кластера или созданием группы доступности.
Чтобы просмотреть журналы развертывания и проверить историю развертываний:
Войдите на портал Azure.
Перейдите к группе ресурсов.
В разделе "Параметры" выберите "Развертывания".
Выберите интересующее вас развертывание, чтобы узнать о нём больше.
Если развертывание завершится неудачей, и вы захотите повторно развернуть его через портал, вам нужно будет вручную очистить ресурсы, так как развертывание через портал не является идемпотентным (повторяемым). Эти задачи очистки включают удаление виртуальных машин и удаление записей в Active Directory и (или) DNS. Однако если вы используете портал Azure для создания шаблона для развертывания группы доступности, а затем используете шаблон для автоматизации, очистка ресурсов не требуется, так как шаблон является идемпотентным.
Следующие шаги
После развертывания группы доступности рассмотрите возможность оптимизации параметров HADR для SQL Server на виртуальных машинах Azure.
Дополнительные сведения см. на следующих ресурсах: