- Настройка кластера общих дисков SLES для SQL Server
- Предварительные требования
- Установка и настройка операционной системы в каждом узле кластера
- Установка и настройка SQL Server в каждом узле кластера
- Настройка общего хранилища и перемещение файлов базы данных
- Настройка сервера NFS
- Настройка всех узлов кластера для подключения к общему хранилищу NFS
- Установка и настройка Pacemaker в каждом узле кластера
- Настройка ресурсов кластера для SQL Server
- Убедитесь в том, что SQL Server запущен.
- Управление ресурсами кластера
- Переход на другой ресурс вручную
- Установка отказоустойчивого кластера SQL Server
- Установка отказоустойчивого кластера
- SQL Server Параметры установки отказоустойчивого кластера
- Настройка IP-адресов во время установки
Настройка кластера общих дисков SLES для SQL Server
Применимо к: SQL Server (все поддерживаемые версии) — Linux
Это краткое описание содержит инструкции по созданию кластера общих дисков с двумя узлами для SQL Server на основе SUSE Linux Enterprise Server (SLES). Уровень кластеризации основан на расширении высокого уровня доступности (HAE), построенном на основе Pacemaker.
Дополнительные сведения о конфигурации кластера, параметрах агента ресурсов, управлении и рекомендациях см. в статье Расширение высокого уровня доступности для SUSE Linux Enterprise 12 с пакетом обновления 2 (SP2).
Предварительные требования
Для выполнения следующего законченного сценария нужны два компьютера для развертывания двухузлового кластера и сервера для настройки общего ресурса NFS. Ниже описаны действия по настройке этих серверов.
Установка и настройка операционной системы в каждом узле кластера
Сначала необходимо настроить операционную систему в узлах кластера. Для этого пошагового руководства используйте SLES с допустимой подпиской для надстройки высокой доступности.
Установка и настройка SQL Server в каждом узле кластера
Установите и настройте SQL Server в обоих узлах. Подробные инструкции см. в статье Установка SQL Server в Linux.
В целях настройки назначьте один узел первичным, а другой — вторичным. Используйте приведенные ниже условия для работы с этим руководством.
Остановите и отключите SQL Server во вторичном узле. В следующем примере показаны остановка и отключение SQL Server:
Во время установки главный ключ сервера для экземпляра SQL Server создается и помещается в папку /var/opt/mssql/secrets/machine-key . На Linux SQL Server всегда выполняется как локальная учетная запись с именем mssql. Так как это локальная учетная запись, ее удостоверение не является общим во всех узлах. Поэтому необходимо скопировать ключ шифрования из первичного узла в каждый вторичный узел, чтобы каждая локальная учетная запись mssql могла получить к нему доступ для расшифровки главного ключа сервера.
В первичном узле создайте имя входа SQL Server для Pacemaker и предоставьте разрешение на выполнение sp_server_diagnostics . Pacemaker использует эту учетную запись, чтобы проверить, в каком узле запущен SQL Server.
Подключитесь к базе данных master в SQL Server с помощью учетной записи SA и выполните следующую команду:
Остановите и отключите SQL Server в первичном узле.
Следуйте указаниям в документации по SUSE, чтобы настроить и обновить файл hosts для каждого узла кластера. Файл hosts должен содержать IP-адрес и имя каждого узла кластера.
Чтобы проверить IP-адрес текущего узла, выполните следующие действия.
Задайте имя компьютера в каждом узле. Присвойте каждому узлу уникальное имя длиной не более 15 символов. Задайте имя компьютера, добавив его к /etc/hostname с помощью yast или вручную.
В следующем примере показан файл /etc/hosts с дополнениями для двух узлов SLES1 и SLES2 .
У всех узлов кластера должен быть доступ друг к другу через SSH. Таким средствам, как hb_report или crm_report (для устранения неполадок) и обозреватель журнала Hawk, не нужен пароль для доступа SSH между узлами. В противном случае они могут только собирать данные из текущего узла. Если вы используете нестандартный SSH-порт, воспользуйтесь параметром -X (см. страницу man). Например, если вы используете SSH-порт 3479, вызовите средство crm_report с помощью следующей команды:
В следующем разделе вы настроите общее хранилище и переместите в него файлы базы данных.
Настройка общего хранилища и перемещение файлов базы данных
Существует множество решений для предоставления общего хранилища. В этом пошаговом руководстве демонстрируется настройка общего хранилища с NFS. Мы рекомендуем следовать рекомендациям и использовать Kerberos для защиты NFS:
Если вы не будете следовать этому руководству, любой пользователь, который может получить доступ к вашей сети и подменить IP-адрес узла SQL, сможет получить и доступ к файлам данных. Как всегда, проведите моделирование угроз для вашей системы, прежде чем использовать ее в рабочей среде.
Другой вариант хранения — использовать общую папку SMB:
Настройка сервера NFS
В документации SUSE приведена пошаговая Настройка сервера NFS.
Настройка всех узлов кластера для подключения к общему хранилищу NFS
Перед настройкой NFS на клиенте для подключения пути к файлам базы данных SQL Server с указанием общего хранилища убедитесь, что файлы базы данных сохранены во временном расположении, чтобы их можно было скопировать позже в общую папку:
Только на основном узле сохраните файлы базы данных во временном расположении. Следующий скрипт создает новый временный каталог, копирует файлы базы данных в него и удаляет старые файлы базы данных. Так как SQL Server выполняется от имени локального пользователя mssql, необходимо убедиться в том, что после передачи данных в подключенный общий ресурс локальный пользователь имеет доступ к общей папке для чтения и записи.
Настройте клиент NFS на всех узлах кластера:
Рекомендуется следовать рекомендациям SUSE в отношении хранилища NFS высокого уровня доступности: Highly Available NFS Storage with DRBD and Pacemaker (Высокодоступное хранилище NFS с DRBD и Pacemaker).
Убедитесь в том, что SQL Server успешно запускается с новым путем к файлу. Выполните это действие в каждом узле. На этом этапе SQL Server должен выполняться только в одном узле в каждый момент времени. Они не могут выполняться одновременно из-за того, что пытаются одновременно получить доступ к файлам данных (чтобы избежать случайного запуска SQL Server в обоих узлах, используйте ресурс кластера файловой системы, чтобы убедиться в том, что общий ресурс не подключен дважды в разных узлах). Приведенные ниже команды запускают SQL Server, проверяют его состояние, а затем останавливают SQL Server.
На этом этапе оба экземпляра SQL Server настроены для работы с файлами базы данных в общем хранилище. Следующим шагом является настройка SQL Server для Pacemaker.
Установка и настройка Pacemaker в каждом узле кластера
На обоих узлах кластера создайте файлы для хранения имени пользователя и пароля SQL Server для входа Pacemaker. Следующая команда создает и заполняет такой файл:
У всех узлов кластера должен быть доступ друг к другу через SSH. Таким средствам, как hb_report или crm_report (для устранения неполадок) и обозреватель журнала Hawk, не нужен пароль для доступа SSH между узлами. В противном случае они могут только собирать данные из текущего узла. Если вы используете нестандартный SSH-порт, воспользуйтесь параметром -X (см. страницу man). Например, если вы используете SSH-порт 3479, вызовите средство hb_report с помощью следующей команды:
Установите расширение высокого уровня доступности. Чтобы установить это расширение, выполните действия, описанные в руководстве по установке и настройке в документации SUSE.
Установите агент ресурсов отказоустойчивого кластера для SQL Server. Выполните следующие команды на обоих узлах:
Автоматически настройте первый узел. Затем настройте запуск кластера с одним узлом. Для этого необходимо настроить первый узел — SLES1. Следуйте инструкциям, описанным в руководстве SUSE по настройке первого узла.
После завершения настройки проверьте состояние кластера с помощью команды crm status .
В результатах должно быть видно, что узел SLES1 настроен.
Добавьте узлы в существующий кластер. Затем присоедините узел SLES2 к кластеру. Следуйте инструкциям, описанным в руководстве SUSE по добавлению второго узла.
После завершения настройки проверьте состояние кластера с помощью команды crm status. Если второй узел добавлен успешно, выходные данные должны быть примерно следующими:
admin_addr — это виртуальный кластерный ресурс IP, который настраивается в процессе первоначальной установки кластера с одним узлом.
Процедуры удаления. Если необходимо удалить узел из кластера, используйте скрипт начальной загрузки ha-cluster-remove. Дополнительные сведения см. в разделе с обзором скриптов начальной загрузки.
Настройка ресурсов кластера для SQL Server
Ниже описаны действия по настройке ресурса кластера для SQL Server. Есть два параметра, которые необходимо настроить.
- Имя ресурса SQL Server: имя кластеризованного ресурса SQL Server.
- Значение времени ожидания: период времени, в течение которого кластер ожидает подключения ресурса. Для SQL Server это время ожидания перевода базы данных master в режим «в сети».
Замените значения в приведенном ниже скрипте значениями для своей среды. Запустите его в одном узле, чтобы настроить и запустить кластеризованную службу.
Например, следующий скрипт создает кластеризованный ресурс SQL Server с именем mssqlha.
После фиксации конфигурации SQL Server запустится на том же узле, что и ресурс виртуального IP-адреса.
Убедитесь в том, что SQL Server запущен.
Для этого выполните команду crm status.
В следующих примерах показаны результаты успешного запуска Pacemaker в качестве кластеризованного ресурса.
Управление ресурсами кластера
Сведения об управлении ресурсами кластера см. в документации SUSE в разделе Managing Cluster Resources (Управление ресурсами кластера).
Переход на другой ресурс вручную
Хотя ресурсы настроены для автоматической отработки отказа (или миграцию) на другие узлы кластера в случае сбоя оборудования или программного обеспечения, можно также вручную переместить ресурс на другой узел в кластере с помощью графического интерфейса Pacemaker или командной строки.
Используйте команду migrate для этой задачи. Например, чтобы перенести ресурс SQL на узел кластера с именем SLES2, выполните:
Источник
Установка отказоустойчивого кластера SQL Server
Применимо к: SQL Server (все поддерживаемые версии)
Чтобы установить отказоустойчивый кластер SQL Server , необходимо создать и настроить экземпляр отказоустойчивого кластера, запустив программу установки SQL Server .
Установка отказоустойчивого кластера
Чтобы установить отказоустойчивый кластер, необходимо использовать учетную запись домена с разрешениями локального администратора с правом входа в качестве службы и действовать в составе операционной системы на всех узлах отказоустойчивого кластера. Чтобы установить отказоустойчивый кластер с помощью программы установки SQL Server , нужно выполнить следующие шаги.
Для установки, настройки и обслуживания отказоустойчивого кластера SQL Server применяется программа установки SQL Server .
Определить, какие сведения необходимы для создания экземпляра отказоустойчивого кластера (это могут быть дисковый ресурс кластера, IP-адреса и сетевое имя) и какие узлы могут быть использованы для перехода на другой отказоустойчивый кластер. Дополнительные сведения
Эти шаги по конфигурации должны быть выполнены до запуска программы установки SQL Server , для их реализации необходимо использовать оснастку Windows «Администратор кластера». Для каждого экземпляра настраиваемого отказоустойчивого кластера необходимо иметь одну группу WSFC.
Операционная система должна соответствовать минимальным требованиям для этого продукта. Дополнительные сведения о требованиях к отказоустойчивому кластеру SQL Server см. в разделе Подготовка к установке отказоустойчивого кластера.
Добавление или удаление узлов из конфигурации отказоустойчивого кластера, не затрагивая другие узлы кластера. Дополнительные сведения см. на странице Добавление и удаление узлов в отказоустойчивом кластере SQL Server (настройка).
- Все узлы на отказоустойчивом кластере должны работать на одной платформе: либо на 32-разрядной, либо на 64-разрядной. Кроме того, на них должен работать один и тот же выпуск и версия операционной системы. Кроме того, 64-разрядные версии выпусков SQL Server должны быть установлены на 64-разрядном оборудовании, работающем под управлением 64-разрядных версий операционной системы Windows. В этой версии отсутствует поддержка WOW64 для отказоустойчивой кластеризации.
Указание нескольких IP-адресов для каждого экземпляра отказоустойчивого кластера. Для каждой подсети можно указать несколько IP-адресов. Если в одной подсети имеется несколько IP-адресов, то программа установки SQL Server устанавливает зависимость в «И». Если выполняется кластеризация узлов по нескольким подсетям, то программа установки SQL Server устанавливает зависимость в «ИЛИ».
Для экземпляра отказоустойчивого кластера SQL Server требуется, чтобы узлы кластера были присоединены к домену. Следующие конфигурации не поддерживаются:
- Экземпляр отказоустойчивого кластера SQL в кластерах рабочей группы.
- Экземпляр отказоустойчивого кластера SQL в кластере с несколькими доменами.
- Экземпляр отказоустойчивого кластера SQL с кластерами рабочей группы.
SQL Server Параметры установки отказоустойчивого кластера
Вариант 1. Интегрированная установка с добавлением узла
SQL Server состоит из двух шагов.
Создайте и настройте состоящий из одиночного узла экземпляр отказоустойчивого кластера SQL Server . После завершения настройки узла готов полностью функциональный экземпляр отказоустойчивого кластера. В данный момент этот отказоустойчивый кластер не имеет высокого уровня готовности, поскольку в него входит только один узел.
На каждом узле, добавляемом к отказоустойчивому кластеру SQL Server , запустите программу установки с функцией добавления узла.
Вариант 2. Расширенная установка (установка выпуска Enterprise)
SQL Server Расширенная установка (установка выпуска Enterprise) отказоустойчивого кластера состоит из двух шагов:
На каждом узле, который станет частью отказоустойчивого кластера SQL Server , запустите программу установки с функцией подготовки отказоустойчивого кластера. На этом шаге осуществляется подготовка узлов, предназначенных для кластеризации, но в конце шага экземпляр SQL Server не переводится в рабочий режим.
После завершения подготовки узлов к кластеризации запустите программу установки на узле, являющемся владельцем общего диска с функцией завершения создания отказоустойчивого кластера. На этом шаге выполняется настройка и завершается создание экземпляра отказоустойчивого кластера. После завершения этого шага появляется работающий экземпляр отказоустойчивого кластера SQL Server .
Любой режим установки позволяет выполнить установку отказоустойчивого кластера SQL Server с несколькими узлами. После создания отказоустойчивого кластера SQL Server для добавления новых узлов в любом из режимов может быть использована функция добавления узлов.
Буква диска операционной системы для размещения SQL Server должна совпадать на всех узлах, добавленных к отказоустойчивому кластеру SQL Server .
Настройка IP-адресов во время установки
SQL Server дает возможность задать или изменить ресурсы IP-адресов при выполнении следующих действий.
Примечание. IP-адреса IPV6 не поддерживаются. Если заданы адреса IPV4 и IPV6, то они рассматриваются как принадлежащие разным подсетям, и IPV6 подключаются первыми.
SQL Server Отказоустойчивый кластер с несколькими подсетями
Можно задать зависимости «ИЛИ», когда узлы кластера принадлежат разным подсетям. Однако, для каждого узла отказоустойчивого кластера SQL Server с несколькими подсетями должно быть указан хотя бы один IP-адрес возможного владельца.
Источник