9 главных советов по настройке кластера SQL Server

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

Одна из основных целей администратора базы данных - обеспечить, чтобы экземпляры и базы данных SQL Server оставались в сети и функционировали после сбоя или сбоя. Одним из способов повышения доступности является установка отказоустойчивых кластеров Windows Server с SQL Server.

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

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

1. Не пропускайте проверку кластера.

Перед установкой кластера обязательно выполните валидацию для проверки конфигурации. Если это новый кластер, вам нужно будет запустить все тесты. 

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

2. Хорошо настройте кворум.

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

  • Повторно оценивайте кворум каждый раз при изменении конфигурации кластера
  • Назначьте свидетеля, чтобы получить нечетное количество голосов
  • Удалите голоса при необходимости
  • Используйте функцию «Динамический кворум» для динамической корректировки голосов узлов.

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

3. Не выбирайте неправильную версию Windows или SQL Server.

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

4. Покупайте правильное оборудование.

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

При разработке плана создания кластера SQL Server убедитесь, что ваше оборудование соответствует нужному объему памяти, ваш сетевой маршрут является избыточным и вы точно оценили свои потребности в SSD.

5. Не помещайте слишком много узлов в один кластер.

У вас может возникнуть соблазн поместить все свои узлы в один кластер, но лучше придерживаться одного-двух узлов на кластер. Помните, что каждый раз, когда вы применяете исправление или обновление к кластеру, вам необходимо проверить, что каждый экземпляр по-прежнему работает на каждом узле. Чем меньше узлов в кластере, тем меньше время простоя каждого экземпляра при отказе каждого узла. 

6. Планируйте свои узлы и экземпляры.

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

  • Сколько узлов кластера нам нужно?
  • Сколько экземпляров SQL Server мы установим?
  • Сколько отказоустойчивых кластеров Windows соответствует нашим потребностям и бюджету?
  • Какое хранилище мы будем использовать?
  • Как выглядит наша промышленная среда?

7. Не думайте, что ваши приложения будут плавно переключаться на отказ.

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

Сделайте стандартной практикой включение тестирования приложений при каждой миграции на отказоустойчивый кластер.

8. Еще раз оцените параметры конфигурации SQL Server.

Когда вы начинаете этап планирования создания отказоустойчивых кластеров SQL Server, самое время еще раз взглянуть на параметры конфигурации. Например, убедитесь, что вы используете лучшие настройки для таких вещей, как распределение памяти в кластерах с несколькими экземплярами. 

9. Не отказывайтесь от соглашения об именах.

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

  • Убедитесь, что имя идентифицирует тип компонента, который вы маркируете. Это кластер, физический сервер, экземпляр SQL Server или координатор распределенных транзакций?
  • Установите BGINFO для отображения имени сервера на рабочем столе для каждого сервера в кластере. Это упрощает поиск нужных баз данных. 
  • Будьте последовательны при добавлении дополнительных узлов или установке другого экземпляра SQL Server в кластер. Если вы будете придерживаться своего соглашения об именах, это не только упростит вам задачу сейчас, но и упростит поиск серверов для тех, кому они понадобятся позже.