Повышение доступности SQL Server 2000: Failover кластеры

ПУБЛИКАЦИИ  

По материалам статьи Microsoft: SQL Server 2000 High Availability Series: Implementing Failover Clustering

Эта статья описывает методику повышения доступности хранилища данных на базе Microsoft SQL Server, за счёт использования failover (отказоустойчивых) кластеров. После прочтения этой статьи Вы научитесь настраивать все компоненты, используемые для организации высокой доступности, включая дисковое хранилище, сеть, Microsoft Cluster Service (MSCS), Microsoft Distributed Transaction Coordinator (MS DTC) и Microsoft SQL Server 2000.
Описание порядка действий и всех описываемых в статье шагов, имеет краткую аннотацию, помогающую понять назначение используемых в конфигурации параметров. Представленные здесь варианты конфигурации были разработаны на основе накопленной Microsoft Product Support Services (PSS) информации, и проверены независимыми специалистами, что гарантирует правильное функционирование представленных ниже рекомендаций.
Failover кластеры являются только частью мер по достижению высокой степени доступности хранилищ данных. Чтобы получить максимальную доступность, необходимо принять дополнительные меры, описанные в справочном руководстве Planning Guide.

Содержание


1. Понятие - Failover кластер
2. Развертывание кластера
  2.1.   Логический дизайн
  2.1.1. Кластеризация SQL Server
  2.2.   Нстройка учётных записей, выбр имён и получение IP адресов
  2.3.   Конфигурация сети
  2.3.1. Настройка NIC локальной сети
  2.3.2. Настройка NIC выделенной сети
  2.4.   Настройка дисковой подсистемы
  2.5.   Подготовка дисков
  2.5.1. Инициализация диска для использования в кластере
  2.5.2. Создание разделов и форматирование дисков
  2.5.3. Форматирование раздела / не отформатированного диска
  2.6.   Фиксация букв дисков 
  2.6.1. Выбор буквы диска 
  2.7.   Инсталляция MSCS 
  2.7.1. Установка MSCS на первом узле 
  2.7.2. Создание кластера 
  2.8.   Инсталляция MSCS на дополнительные узлы кластера 
  2.8.1. Установка MSCS на дополнительном узле кластера 
  2.8.2. Присоединение к существующему кластеру 
  2.8.3. Выбор учетной записи администратора для запуска программы установки 
  2.8.4. Завершение установки 
  2.9.   Обновление MS DTC 
  2.9.1. Модификация DTC
  2.9.2. Обновление DTC
  2.9.3. Модификация DTC
  2.10.  Установка и настройка SQL Server в кластере 
  2.11.  Создание группы кластерных ресурсов 
  2.12.  Установка SQL Server 
  2.12.1.Запуск инсталляции и присвоение виртуального имени сервера 
  2.12.2.Распределение дисковых ресурсов 
  2.12.3.Завершение установки 
  2.13.  Добавление дисков в кластер для нужд SQL Server
  2.13.1.Добавление дополнительных, зависимых дисков в кластер 
  2.14.  Применение последнего SQL Server Service Pack 
  2.14.1.Установка последнего SQL Server service pack 
  2.15.  Дополнительные настройки кластера 
  2.16.  Распределение памяти 
  2.17.  Установка свойств новой базы данных 
  2.17.1.Установка свойств для новых баз данных 
  2.18.  Установка TCP/IP порта для SQL Server 
  2.18.1.Закрепление TCP/IP порта за экземпляром 
  2.19.  Установка расширенных опций кластера 
  2.19.1.Настройка реакции на отказ 
  2.20.  Изменение свойств сервисов в кластере 
3. Отказ вторичного узла 
  3.1.   Проверка отказоустойчивости 
  3.1.1. Инициализация планового отказа 
  3.1.2. Моделирование незапланированного отказа 
  3.2.   Уменьшение времени переключения 
  3.3.   Понятие времени переключения в активное состояние 
  3.4.   Управление временем обнаружения отказа 
  3.5.   Управление временем переключения в активное состояние 
  3.6.   Управление временем запуска сервисов 
  3.7.   Переподключение клиентов 
4. Возврат на основной узел после отработки отказа 
  4.1.1. Настройка автоматического возврата в заданное время 
  4.1.2. Инициализация возврата 
  4.2.   Восстановление узла кластера после полного выхода из строя (катастрофы) 
  4.2.1. Восстановление сервера после краха 
  4.2.2. Удаление узла из виртуального сервера 
  4.2.3. Выселение узла из кластера 
  4.2.4. Восстановление узла 
  4.2.5. Добавление восстановленного узла в виртуальный сервер 
5. Ссылки

1. Понятие - Failover кластер

Failover кластеры поддерживаются SQL Server 2000 Enterprise Edition, который должен быть запущен на Microsoft Windows 2000 Advanced Server или Microsoft Windows 2000 Datacenter Server. Кластеризация является сегодня лучшим решением для простого, быстрого и автоматического востстановления работоспособности сервера после аппаратного сбоя. Кластер - единственное решение для обеспечения высокой доступности, которое гарантирует целостность и последовательность бизнес-транзакций и позволяет сделать процесс восстановления практически незаметным для клиента. Кластер является первым шагом гарантии отказоустойчивости и обеспечения высокой доступности, в ряду таких решений, как log shipping и репликация транзакций.
Отказоустойчивый кластер (MSCS) содержит как мимнимум один резервный сервер, который, в случае аппаратного сбоя основного сервера, принимает на себя его нагрузку. Windows 2000 Advanced Server поддерживает кластеры из двух серверов, а Windows 2000 Datacenter Server поддерживает кластеры до четырёх серверов. Когда MSCS обнаруживает отказ основного сервера, он автоматически запускает его ресурсы на резервном сервере и переадресует весь клиентский трафик на резервный сервер. Переключение на резервный сервер также можно инициировать и вручную. В отказоустойчивом кластере все завершённые на основном сиервере транзакции будут доступны после сбоя на резервном сервере.
Обратите внимание, что Failover кластеры не могут быть построены для разнесённых на большое расстояние узлов (stretch clusters) или для удалённых дисковых массивов, если для этого не используются аппаратно-программные решения третьих фирм.
Для организации решения с failover кластером, необходимо привлечение наскольких специалистов, аппаратных систем и программных продуктов.
В разворачивании кластерной системы принимают участие следующие специалисты:

  • Администратор баз данных;
  • Администратор разделяемой, дисковой, сетевой подсистемы;
  • Сетевой администратор.

Необходимо следующее программное обеспечение:

  • Windows 2000 Advanced Server или Windows 2000 Datacenter Server
  • SQL Server 2000 Enterprise Edition

Все используемые в кластере системы и системные компоненты должны быть совместимы с операционной системой Windows 2000 и сертифицированы для использования в failover кластерах. Сертификат соответствия систем и системных компонент требованиям кластеризации является более строгим, чем требования к совместимости с операционной системой. Кроме того, Windows 2000 Datacenter Server имеет ещё более строгие требования, чем Windows 2000 Advanced Server. Чтобы определить, протестирована ли в Microsoft на свовместимость с требованиями failover кластера или операционной системы та или иная система/компонент, можно обратиться к документу на сайте Microsoft "Hardware Compatibility List" Для получения более детальной информации о failover кластерах, см. статью "SQL Server 2000 Failover Clustering"

[В начало]

2. Развертывание кластера

Для того, что бы успешно собрать отказоустойчивый кластер, стит избегать использование ярлыков и параллельных инсталляций. Если установка закончится неудачно, или придётся отменить работу программы установки по каокой-либо причине, нужно полностью удалить предыдущую установку, прежде чем приступить к повторной попыте, а также удалить все записи Domain Name System (DNS), созданные для неудавшейся инсталляции. Также, до начала установки MSCS и SQL Server, следует убедиться, что имена их сервисов и IP адреса нигде больше не используются.
В этой главе принимаются следующее допущения относительно каждого участвующего в кластере сервера:

  • Windows 2000 Advanced Server или Windows 2000 Datacenter Server установлены на зеркальном томе.
  • Для операционной системы установлен самый последний сервисный пакет и обновления.

Обратите внимание, что для восстановления дисков в кластере в случае отказа SAN требуется как минимум Windows 2000 Service Pack 3.

  • На серверах до этого не был установлен MSCS.
  • Серверы должны быть включены в один домен Windows.
  • Имеются подключённые дисковые массивы или SAN.
  • Все диски отформатированы как New Technology File System (NTFS) и не являюся динамическими дисками.
  • Используется не менее двух сетевых интерфейсных плат (NIC).
  • Каждый сервер связан с корпоративной сетью и с другим сервером через локальную сеть.
  • Не устанавливался SQL Server любой версии.

Логика работы failover кластера будет описана ниже в этой главе в виде последовательности шагов, требующихся для создания решения высокой доступности.

[В начало]

2.1. Логический дизайн

На рисунке 1.1 представлен логический дизайн отказоустойчивого кластера, который будет описан в этой главе. Хотя Storage Area Network (SAN) не обязательный для кластера элемент, сегодня такое решение встречается наиболее часто.


Рисунок 1.1. Логический дизайн кластера с SAN

На каждом узле кластера запущен Windows 2000 Advanced Server или Windows 2000 Datacenter Server. MSCS организует обмен сигдалами «жизни» между узлами по выделенному соединению, что позволяет определять, является ли соседний узел работоспособным. Кластер поддерживает один или более виртуальных SQL Server, запущенных под управлением Windows 2000. Только активный узел виртуального сервера использует и обслуживает данные и журналы виртуального SQL сервера. SAN связан с каждым узлом оптоволоконным соединением. Собственное программное обеспечение SAN обслуживает зеркальные копии данных и журналов, а так же временные файлы и файлы резервных копий.
В кластере из нескольких узлов, каждый виртуальный SQL Server требует для себя в SAN отдельную группу дисков, что бы разместить свои данных, журнал транзакций, временные файлы и резервные копии. Каждый виртуальный SQL Server должен монопольно управлять своими дисками, а MSCS передаёт управление виртуальным SQL Server активному узлу.
Ниже показана наиболее распростанённая последовательность шагов, которые нужно пройти для реализации представленного выш логического дизайна кластера.

[В начало]

2.1.1. Кластеризация SQL Server

1. Создать и настроить учетные записи пользователей домена, выбрать уникальные имена сервери экземпляра и зарезервировать диапазон IP адресов.
2. Настроить сеть.
3. Настроить дисковую подсистему.
4. Установить и настроить MSCS.
5. Адаптировать MS DTC.
6. Установить и настроить виртуальный экземпляр SQL Server 2000.
7. Применить самый последний сервисный пакет и обновления для SQL Server 2000.
8. Выполнить дополнительные настройки.

[В начало]

2.2. Нстройка учётных записей, выбр имён и получение IP адресов

До начала настройки кластера Windows 2000 и SQL Server, Вы должны создать и/или настроить учётные записи пользователей домена для SQL Server, установить необходимые MSCS разрешения для этих учётных записей, выьрать имена серверов MSCS и SQL Server и выделить IP адреса для сетевых плат сигналов жизни и подключения к компьютерной сети. Используйте представленные ниже рекомендации, чтобы выполнить все эти настройки.
1. Учетные записи пользователей домена – необходимо создать и настроить следующие учетные записи пользователей домена:

  • Доменная учетная запись для управления кластером - эта запись должна включаться в локальную группу Administrators каждого узла кластера.
  • Доменная учетная запись для запуска сервисов SQL Server и SQL Server Agent - эта учетная запись не обязательно должна быть включаться в локальную группу Administrators на всех узлах кластера.

2. Имена серверов – их нужно придумать такими, чтобы они удовлетворяли следующим условиям:

  • Виртуальное имя кластера - это имя должно быть уникально в домене.
  • Виртуальные имена SQL Server для экземпляра - эти имена должны быть уникальны в домене и в локальной подсети, если в локальной сети существует несколько доменов.
  • Имя экземпляра для каждого экземпляра SQL Server - эти имена должны быть уникальны в кластере.

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

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

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

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

[В начало]

2.3. Конфигурация сети

Прежде чем устанавливать MSCS, нужно выделить IP адреса для каждой сетевой платы (NIC), подключаемой к локальной сети, а также определить Default Gateway и первичный DNS сервер. Также, Вы должны назначить статические IP адреса для сетевых плат на каждом сервере, которые будут использоваться для обмена сигналами жизни и для других внутренних коммуникаций между серверами failover кластера.
Сетевые платы для обмена сигналами жизни лучше объединить в отдельную, выделенную сеть. Это облегчит администрирование кластера и снизит конфликты пользовательского трафика. К тому же, для этих сетевых плат Вы можете использовать любые IP адреса, потому что в выделенной сети не будет других NIC.

[В начало]

2.3.1. Настройка NIC локальной сети

1. Щёлкните правой кнопкой мыши по иконке My Network Places, расположенной на рабочем столе, и выберете из выпадающего меню пункт Properties.
2. В открывшемся окне Network and Dial-up Connections, щёлкните правой кнопкой мыши по сетевому подключению для NIC, которая подключена к локальной сети, а затем выберете пункт Properties.
3. В окне Connection Properties для этой сетевой платы, щёлкните правой кнопкой мыши по Internet Protocol (TCP/IP), и выберете пункт Properties.
4. В окне Internet Protocol (TCP/IP) Properties, введите IP адрес, выбранный для этой NIC локальной сети.
Измените маску подсети, воспользовавшись рекомендациями сетевого администратора, если ваша сеть использует подсети.
5. Введите IP адрес для Default Gateway - заданного по умолчанию шлюза.
6. Перейдите на закладку Use the Following DNS Server Addresses, и введите адрес DNS сервера.
7. Нажмите кнопку OK, чтобы сохранить новые параметры TCP/IP.
8. Снова нажмите кнопку OK, чтобы сохранить новые настройки подключения для выбранной NIC.
9. В окне Network and Dial-up Connections, переименуйте это подключение, например, как Corporate, чтобы более понятно идентифицировать его назначение.

Обратите внимание, что нужно повторить описанную выше процедуру и для других сетевых плат сервера, если у Вас используется дублирование NIC для обеспечения избыточности подключений к локальной сети. Тогда подключение для второй платы можно назвать Corporate2.

[В начало]

2.3.2. Настройка NIC выделенной сети

1. Щёлкните правой кнопкой мыши по иконке My Network Places, расположенной на рабочем столе, и выберете из выпадающего меню пункт Properties.
2. В открывшемся окне Network and Dial-up Connections, щёлкните правой кнопкой мыши по сетевому подключению для NIC, которая используется для обмена сигналами жизни, а затем выберете пункт Properties.
3. В окне Connection Properties для этой сетевой платы, щёлкните правой кнопкой мыши по Internet Protocol (TCP/IP), и выберете пункт Properties.
4. В окне Internet Protocol (TCP/IP) Properties, введите IP адрес для этой NIC выделенной сети.
Вы должны выделить IP адрес для каждой NIC выделенной сети так, что бы все они находились в одной подсети. Используйте предлагаемую по умолчанию маску подсети. Обычно для выделенной сети принято использовать IP адреса следующего формата: 10.1.0.x.
5. Нажмите кнопку OK, чтобы сохранить новые параметры TCP/IP.
6. Снова нажмите кнопку OK, чтобы сохранить новые настройки подключения для выбранной NIC.
7. В окне Network and Dial-up Connections, переименуйте это подключение, например, как Heartbeat, чтобы более понятно идентифицировать его назначение.
Обратите внимание, что нужно повторить описанную выше процедуру и для других сетевых плат сервера, если у Вас используется дублирование NIC для обмена сигналами жизни. Второе подключение можно назвать Heartbeat 2.

[В начало]

2.4. Настройка дисковой подсистемы

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

  • Настройте SAN таким образом, что бы он использовался SQL Server, но не использовался Windows 2000.
  • Создайте зеркальный том для кворум-диска.
  • Создайте три зеркальных тома для каждого экземпляра SQL Server – по одному для файла данных, transaction log и tempdb.

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

[В начало]

2.5. Подготовка дисков

Чтобы подготовить дисковую подсистему к работе, нужно сохранить сигнатуры дисков, создать партиции (разделы) и отформатировать диски. Инициализируйте диски, которые будут использоваться в кластере в качестве основных дисков.

[В начало]

2.5.1. Инициализация диска для использования в кластере

1. Щёлкните правой кнопкой мыши по иконке рабочего стола My Computer, и выберите пункт Manage (Управление).
2. В открывшемся окне разверните объекты узла Storage (Запоминающее устройство) и перейдите к объекту - оснастке Disk Management.
3. Щёлкните правой кнопкой мыши по диску, который Вы хотите инициализировать, а затем выберите пункт Initialize.
4. В окне Initialize Disk, выберите подлежащие инициализации диски, и нажмите кнопку OK.

[В начало]

2.5.2. Создание разделов и форматирование дисков

1. В окне Computer Management, щёлкните правой кнопкой мыши по диску, у которого нужно создать разделы, и выберите пункт Create Partition.
2. В появившемся окне Welcome to the Create Partition Wizard, нажмите кнопку Next.
3. В окне Select Partition Type, выберите Primary Partition, и затем нажмите кнопку Next.
4. В окне Specify Partition Size сразу можно нажать кнопку Next, чтобы задействовать всё дисковое пространство диска под этот раздел.
5. В окне Assign Drive Letter or Path впишите имя диска и нажмите кнопку Next.
6. В окне Format Partition, выберите пункт Format Partition.
7. В окне Formatting установите опции форматирования следующим образом:

    1. Для File System to Use укажите NTFS.
    2. Для Allocation Unit Size укажите Default.
    3. Для Volume Label напишите краткое имя.
Переключатель Enable File and Folder Encryption включать не нужно.
8. Нажмите кнопку Next.
9. В окне Completing the Create Partition Wizard нажмите кнопку Finish.

[В начало]

2.5.3. Форматирование раздела / не отформатированного диска

1. Щёлкните правой кнопкой мыши по иконке My Computer и выберите пункт Manage.
2. В открывшемся окне разверните объекты узла Storage (Запоминающее устройство) и перейдите к объекту - оснастке Disk Management.
3. Щёлкните правой кнопкой мыши по диску, который Вы хотите форматировать, а затем выберите пункт Format.
4. В окне Format Disk нажмите OK.
Обратите внимание, что эту процедуру нужно повторить для каждого диска.

[В начало]

2.6. Фиксация букв дисков

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

[В начало]

2.6.1. Выбор буквы диска

1. Щёлкните правой кнопкой мыши по иконке рабочего стола My Computer и выберите пункт Manage.
2. В открывшемся окне разверните объекты узла Storage (Запоминающее устройство) и перейдите к объекту - оснастке Disk Management.
3. Щёлкните правой кнопкой мыши по диску, который будет использован в кластере, и выберите пункт Change Drive Letter and Paths.
4. В окне Change Drive Letter and Paths нажмите кнопку Edit.
5. В окне Edit Drive Letter or Path, выберите букву для диска из предлагаемого списка и потом нажмите кнопку OK.
6. Нажмите кнопку Yes, чтобы подтвердить сделанные изменения.
7. Повторите эту процедуру для каждого диска, который будет использован в кластере.
Когда Вы будете добавлять другие узлы в кластер, они унаследуют эти буквы дисков по информации о конфигурации кластера, сохраненной на кворум-диске.

[В начало]

2.7. Инсталляция MSCS

Когда Вы приступаете к установке и настройке MSCS, установите вначале только один узел. Включив другие узлы, которые подключены к разделяемой дисковой подсистеме кластера, в тот момент, когда Вы инсталлируете MSCS на первом узле, Вы рискуете получить ошибки конфигурирования дисков. После установки MSCS на первом узле и распределения дисков дисковой подсистемы, можно приступать к установке MSCS на других узлах, не выключая узлы, на которых MSCS уже установлен.
Обратите внимание, что если MSCS устанавливается повторно или переустанавливается после неудачной попытки, нужно удалить все записи на DNS сервере, которые относятся к неудачной инсталляции, а уже потом приступать к повторной установке. Осиротевшие или дублируемые имена или IP адреса могут помешать новой инсталляции.
Установите MSCS на всех узлах кластера. Инсталляции MSCS на первом узле потребует больших усилий, чем на дополнительных узлах того же кластера.

[В начало]

2.7.1. Установка MSCS на первом узле

1. На первом сервере, на котором Вы устанавливаете MSCS, нажмите кнопку Start (Пуск), выберите пункт Settings (Настройка), и затем выберите Control Panel (Панель управления).

2. В Control Panel, дважды щёлкните мышкой по оснастке Add/Remove Programs (Установка и удаление программ).

3. В оснастке Add/Remove Programs, нажмите кнопку Add/Remove Windows Components (Установка компонент Windows).

4. На странице Windows Components (Компоненты Windows), выберите переключатель Cluster Service, и затем нажмите кнопку Next.

5. Переключатель Internet Information Services должен быть установлен так, как это предлагается по умолчанию, с включённым стандартным набором компонент.

6. Если Terminal Services уже был установлен, нажмите Next в окне Terminal Services Setup, чтобы использовать службу Terminal Services в режиме удалённого администрирования.

7. Далее, получив соответствующий запрос, вставьте CD-диск Windows 2000 Advanced Server или Windows 2000 Datacenter Server, и затем нажмите кнопку OK.

8. После установки компонент кластера, в окне Welcome to the Cluster Service Configuration Wizard нажмите кнопку Next.

9. В окне Hardware Configuration, выберете I Understand, чтобы подтвердить соответствие оборудования кластерному списку HCL, и потом нажмите кнопку Next.

[В начало]

2.7.2. Создание кластера

1. В окне Create or Join a Cluster укажите, что это The First Server (первый сервер кластера) и затем нажмите кнопку Next.
Если мастер Cluster Service Configuration Wizard не обнаружит диски, которые пригодны для использования в кластере, Вы не сможете продолжить установку.

2. В окне Cluster Name, введите имя нового кластера (до 15 символов) и потом нажмите Next. Используйте имена, которые является уникальными в сети и в доме Windows.

3. Для определения учетной записи администратора, в контексте которой будет работать программа установки, введите в окне Select an Account имя учётной записи соответствующего пользователя домена, его пароль и имя домена, а затем нажмите кнопку Next.
Эта учётная запись пользователя домена должна быть предварительно добавлена в локальную группу Administrators этого узла

4. Для подключения дисков к кластеру:

  • В окне Add or Remove Managed Disks, выберите диски, которые Вы хотите использовать в кластере, и нажмите Next. По умолчанию, будут выбраны все диски, которые удовлетворяют критериям использования в кластере.
  • Удалите те диски, которые не будут использованы кластером. Не удаляйте диски, которые планируется использовать для любого экземпляра SQL Server, запускаемого на Вашем кластере.
  • В окне Cluster File Storage отметьте диски, из числа принадлежащих кластеру, которые будут использоваться в качестве кворум-диска. Для этих целей понадобиться зеркальный диск с минимальным объёмом свободного места в 500 Мбайт. Поскольку кворум-диск используется для отслеживания сбоев кластера, не используйте его для нужд SQL Server.

5. Для подключения к локальной сети, Вы должны указать Cluster Services какие NIC он может использовать для обмена сигналами жизни, а какие для подключения клиентов. Окно Network Connections будет показано по одному разу для каждой сетевой платы:

  • В окне Network Connections, пометьте переключатель Enable This Network for Cluster Use, если эта NIC будет использоваться кластером. Пометьте переключатель Internal cluster communications only (private network) у каждой сетевой платы, используемой для обмена сигналами жизни, или пометьте переключатель Client access only (public network), если эта плата будет использоваться для подключения к локальной сети. После выбора, нажмите кнопку Next.
  • В окне Cluster IP Address, введите IP адрес в поле IP Address, и подтвердите правильность маски подсети. Если в Вашей сети используются подсети, измените маску подсети на такую, какую Вам сообщит сетевой администратор.
  • Выберите корпоративную сеть и нажмите Next.

6. Для завершения инсталляции первого узла:

  • Нажмите кнопку Finish, чтобы применить параметры настройки кластера, и затем запустите MSCS на первом узле.
  • Когда Вы получите сообщение, что MSCS запущен, нажмите OK.
  • Нажмите Finish, чтобы закрыть окно мастера Cluster Configuration Wizard.
  • Закройте окна Add/Remove Program и Control Panel.

[В начало]

2.8. Инсталляция MSCS на дополнительные узлы кластера

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

[В начало]

2.8.1. Установка MSCS на дополнительном узле кластера

1. На каждом дополнительном сервере, который Вы хотите присоединить к MSCS, нажмите кнопку Start, выберите пункт Settings, а затем Control Panel.

2. В Control Panel, выберите оснастку Add/Remove Programs.

3. В оснастке Add/Remove Programs, нажмите кнопку Add/Remove Windows Components.

4. В окне Windows Components, установите переключатель Cluster Server, а затем нажмите кнопку Next.
Чек-бокс Internet Information Services тоже должен быть помечен со стандартным набором компонент.

5. Если установлен Terminal Services, нажмите кнопку Next в окне Terminal Services Setup, чтобы эта служба использовалась в режиме удалённого администрирования.

6. После получения соответствующего запроса, вставьте диск Windows 2000 Advanced Server или Windows 2000 Datacenter Server и нажмите кнопку OK.

7. После установки компонент кластера, нажмите Next в окне Welcome to the Cluster Service Configuration Wizard.

8. В окне Hardware Configuration, выберите I Understand для подтверждения того, что конфигурация соответствует кластерному HCL, и нажмите кнопку Next.

[В начало]

2.8.2. Присоединение к существующему кластеру

1. В окне Create or Join a Cluster, выберите The The Second or Next Node in the Cluster и нажмите кнопку Next.
Если мастер Cluster Service Configuration Wizard не обнаружит диски, которые отвечают критериям применения в кластере, установка не сможет продолжиться. Диски должны быть отформатированы под NTFS и не должны быть динамическими дисками.

2. В окне Cluster Name, введите имя существующего кластера, к которому Вы хотите присоединить этот узел. Оставьте не помеченным чек-бокс Connect to cluster as, и нажмите Next.
Cluster Service Configuration Wizard проверяет наличие сигналов жизни от первого узла и после этого настраивает каждую NIC дополнительного узла, NIC локальной сети и NIC для обмена сигналами жизни.

[В начало]

2.8.3. Выбор учетной записи администратора для запуска программы установки

В окне Select an Account, в соответствующих текстовых полях, укажите учетную запись пользователя его пароль и имя домена, а затем нажмите кнопку Next.
Используйте созданную Вами ранее учетную запись пользователя домена, которая должна являться локальным администратором на каждом узле.

[В начало]

2.8.4. Завершение установки

1. Нажмите кнопку Finish, чтобы применить параметры конфигурации кластера, а затем запустите MSCS на новом дополнительном узле.

2. Когда появится окно с сообщением, что MSCS запущен, нажмите кнопку OK.

3. Нажмите кнопку Finish, чтобы закрыть окно Cluster Configuration Wizard.

4. Закройте окно Add/Remove Program.

5. Закройте окно Control Panel.

[В начало]

2.9. Обновление MS DTC

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

[В начало]

2.9.1. Модификация DTC

1. На одном из узлов кластера, откройте окно command prompt.

2. В cmd введите comclust и нажмите Enter.

3. Закройте окно command prompt.

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

[В начало]

2.9.2. Обновление MS DTC

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

[В начало]

2.9.3. Модификация DTC

1. На одном из узлов кластера, откройте окно command prompt.
2. В cmd введите comclust и нажмите Enter.
3. Закройте окно command prompt.

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

[В начало]

2.10 .Установка и настройка SQL Server в кластере

При установке SQL Server в кластер, программой установки создаётся виртуальный сервер. Виртуальный сервер имеет виртуальные: имя, IP адреса и порты. Клиенты подключаются именно к этим виртуальным ресурсами, а MSCS переключает их на физические ресурсы узлов кластера, который является в это время активным. Инсталлятор устанавливает SQL Server на каждом из узлов и размещает системные базы данных на дисковых ресурсах кластера. Чтобы успешно установить виртуальный сервер, нужно правильно настроить и запустить MSCS.
Обратите внимание, что если Вы повторно устанавливаете SQL Server или переустанавливаете его после неудачной инсталляции, нужно предварительно удалить все записи DNS сервера, которые относились к неудавшейся инсталляции MSCS. Осиротевшие или дублирующиеся IP адреса и имена могут повредить новой инсталляции.

[В начало]

2.11. Создание группы кластерных ресурсов

До установки SQL Server, объедините дисковые ресурсы для экземпляра SQL Server в отдельную кластерную группу. Эта группа должна содержать зеркальный том для файлов баз данных, том для журналов транзакций и тома для файлов резервных копий и tempdb. При установке виртуального сервера, инсталлятор добавит в эту кластерную группу дополнительные ресурсы.
Обратите внимание, что нужно будет создать отдельную кластерную группу для каждого экземпляра SQL Server, который Вы планируете устанавливать в кластере.

Для создания отдельной кластерной группы, нужно проделать следующие шаги:

1. Нажать кнопку Start, перейти в пункт Administrative Tools и запустить оснастку Cluster Administrator.
2. В Cluster Administrator нужно раскрыть группы (Groups) и определить размещение дисковых групп, которые будут содержать диски экземпляра SQL Server.
Первоначально, каждый диск (или зеркальные диски) принадлежащий кластеру находится в пронумерованной дисковой группе, например: Disk Group 1, Disk Group 2 и так далее. Кворум диск находится в группе Cluster Group.
3. Щёлкните правой кнопкой мыши по одной из дисковых групп, а затем выберите Rename.
4. Введите новое, интуитивно понятное имя для этой группы ресурсов (например, VirtualServer1Group).
5. Перейдите к узлу Resource, чтобы увидеть дополнительные диски, принадлежащие кластеру.
6. Щёлкните правой кнопкой мыши по диску для SQL Server, выберите пункт Change Group, а затем щелкните по недавно переименованной кластерной группе.
7. Закройте оснастку Cluster Administrator.

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

[В начало]

2.12. Установка SQL Server

После создания кластерной группы, можно начать установку SQL Server. Для создания виртуального сервера используйте имя сервера и IP адрес, рекомендованные соответствующими специалистами вашего IT отдела. Предлагаемую последовательность действий нужно повторить для каждого экземпляра, который планируется установить. Перед началом, можно создать каталоги на каждом диске группы, чтобы легче было идентифицировать относящиеся к SQL Server файлы.
Обратите внимание, что Вы должны устанавливать SQL Server с сервера, который имеет распределённые в сети диски. Указать такой сервер можно средствами оснастки Cluster Administrator.

[В начало]

2.12.1. Запуск инсталляции и присвоение виртуального имени сервера

1. Вставить SQL Server 2000 Enterprise Edition CD диск в CD-ROM.
2. В окне SQL Server 2000 Enterprise Edition, выберите SQL Server Components, а затем Install Database Server.
3. В окне Welcome, нажмите Next.
4. В окне Computer Name, введите виртуальное имя, выберите Virtual Server, а затем нажмите Next.
5. В окне Product Key, введите ключ продукта для SQL Server 2000 Enterprise Edition и нажмите Next.
6. В окне Software License Agreement нажмите Yes, чтобы подтвердить условия лицензионного соглашения.
7. В окне Virtual Server Information введите IP адрес, присвоенный виртуальному серверу, укажите локальную сеть, нажмите Add, а затем Next.

[В начало]

2.12.2. Распределение дисковых ресурсов

1. В окне Select the Cluster Disk Where the Data Files Will Be Placed, выберите кластерную группу (или диск в этой группе), которая будет использоваться SQL Server.
Этот шаг определяет кластерную группу, которая будет содержать ресурсы для виртуального SQL Server. Фактическое местоположения диска для размещения инсталлируемых из дистрибутива программ и системных баз данных будет выбрано позже. Не нужно выбирать кластерную группу, содержащую кворум - диск.
2. В окне Cluster Definition, укажите узлы, поддерживающие виртуальный сервер, а затем нажмите Next.
По умолчанию, будут выбраны все узлы кластера. Удалите те узлы, которые не будут задействованы для установки SQL Server.
3. В окне Remote Information, введите в соответствующих текстовых полях домен, учетную запись администратора (пользователя домена) и пароль.
Программа установки использует эту учетную запись для установки программ на каждом узле. Используйте администраторскую учетную запись для конфигурации и управления кластером.
4. В окне Instance Name нажмите Next, чтобы установить экземпляр по умолчанию. Чтобы установить именованный экземпляр, снимите отметку с переключателя Default Instance, введите имя именованного экземпляра, и нажмите Next.
5. В окне Setup Type укажите соответствующий тип установки для данного экземпляра.
6. Укажите местоположение программных файлов каждого из узлов.
По умолчанию файлы предлагается поместить на системный том. Измените их расположение, если это необходимо, на другое, убедившись, что там имеется достаточно свободного места. Инсталлятор установит все программы в указанное место на каждом узле.
7. Укажите размещение файлов данных в кластере.
Файлы баз данных должны быть на одном из дисков кластера и не должны размещаться на кворум - диске. Инсталлятор установит системные базы данных на указанный диск.
Если Вы создали на диске для баз данных каталог для экземпляра SQL Server, перейдите в него и нажмите Next.

[В начало]

2.12.3. Завершение установки

1. В окне Services Accounts, в соответствующих полях, впишите учетную запись пользователя домена, пароль и домен, а затем нажмите Next.
Используйте ту учетную запись пользователя домена, которую Вы выбрали для запуска SQL Server Agent и SQL Server.
2. В окне Authentication Mode выберите режим аутентификации SQL Server, и нажмите Next.
Windows Authentication Mode является более безопасным режимом, чем Mixed Mode. Если Вы выбрали Mixed Mode, нужно присвоит пароль для логина sa или указать, что этот логин будет без пароля, что не рекомендуется.
3. В окне Licensing Mode укажите соответствующий режим, и нажмите Next.
4. Нажмите кнопку Finish, чтобы запустить установку SQL Server. Когда инсталляция будет завершена, перезапустите все узлы кластера.

[В начало]

2.13. Добавление дисков в кластер для нужд SQL Server

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

[В начало]

2.13.1. Добавление дополнительных, зависимых дисков в кластер

1. Нажмите кнопку Start, и в пункте Programs выберите Cluster Administrator.
2. В Cluster Administrator, выберите кластерную группу, содержащую виртуальный SQL Server.
3. Нажмите правую кнопку мыши на SQL Server, а затем Take Offline.
4. Для внесения изменений в список зависимых от SQL Server дисков, SQL Server должен быть автономен.
5. Нажмите правую кнопку мыши на SQL Server, а затем выберите Properties.
6. На закладке Dependencies в окне SQL Server Properties, посмотрите на заданные по умолчанию зависимые ресурсы. Должны быть видны ресурсы Network Name и не менее одного дискового ресурса.
7. Нажмите Modify.
8. В окне Available Resources, дважды щелкните мышью по каждому из дополнительных дисковых ресурсов, от которых зависит работа SQL Server, а затем нажмите кнопку OK.
9. Опять нажмите кнопку OK, чтобы закрыть окно SQL Server Properties.
10. Нажмите правую кнопку мыши на группе, содержащей ресурсы SQL Server, а затем выберите Bring Online.

[В начало]

2.14. Применение последнего SQL Server Service Pack

Перед запуском SQL Server в промышленную эксплуатацию, необходимо установить последний SQL Server service pack.

[В начало]

2.14.1. Установка последнего SQL Server service pack

1. Зарегистрируйтесь на одному из узлов кластера под учётной записью пользователя домена, которая входит в локальную группы Administrators этого узла.
2. Вставить в CD-ROM диск, содержащий сервисных пакет.
Если установка сервисного пакета не начнется автоматически, перейдите в каталог \X86\Setup, а затем дважды щёлкните по программе setupsql.exe.
3. В окне Welcome, нажмите Next.
4. В окне SQL Server Name, введите имя виртуального SQL Server, а затем нажмите Next.
5. В окне Authentication Mode, нажмите Next, чтобы подключиться к SQL Server с использованием режима аутентификации Windows.
6. В окне Domain Administrator, введите имя администратора домена, пароль и название домена, а затем нажмите Next.
Программа установки должна использовать учетную запись администратора домена, чтобы установить сервисный пакет на всех узлах виртуального сервера.
7. После того, как сервисный пакет будет установлен, нажмите OK.
8. Нажмите кнопку Yes, а затем Finish, чтобы перезапустить узел.
9. Вручную перезапустите каждый дополнительный узел, на котором был установлен сервисный пакет.
10. Сделайте резервные копии баз msdb и master, т.к. они были изменены при инсталляции сервисного пакета.
Обратите внимание на то, что эта процедура описана для применения SQL Server 2000 Service Pack 2. Прочитайте файл ReadMe, поставляемый с более поздними сервисными пакетами, что бы узнать нюансы установки этого пакета в кластерной конфигурации.

[В начало]

2.15. Дополнительные настройки кластера

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

  • Распределение памяти между виртуальными серверами.
  • Установка новых свойств базы данных.
  • Установка TCP/IP порта для SQL Server.
  • Установка расширенных настроек отказоустойчивости.
  • Установка свойств SQL Server, работающего в кластере

Используйте представленные далее рекомендации при выполнении этих дополнительных настроек.

[В начало]

2.16. Распределение памяти

Если у Вас используются несколько экземпляров SQL Server на одном или нескольких узлах кластера, Вы должны определить общую сумму оперативной памяти, требуемую для каждого экземпляра и задать соответствующее распределение памяти для каждого экземпляра SQL Server. Производительность SQL Server непосредственно зависит от объёма используемой им оперативной памяти, выделяемой ему операционной системой. SQL Server имеет два режима управления памятью: динамический и фиксированный. Динамическое распределение памяти позволяет SQL серверу захватывать и высвобождать память по мере необходимости, при этом сервер способен забирать максимально-возможный объём оперативной памяти, которую операционная система может предоставить для SQL Server. Это механизм позволяет резервировать оставшуюся часть памяти для других целей, например, для операционной системы и других экземпляров SQL Server. Фиксация объёма выделяемой экземпляру памяти позволяет ограничить используемую SQL Server память и обеспечить такой режим, что размер этой памяти не будет расти или уменьшаться.
Выделите каждому серверу необходимый объём оперативной памяти, а затем распределите эту память для каждого экземпляра SQL Server таким образом, чтобы обеспечить необходимый резерв для поддержки отказавшего экземпляра SQL Server другого узла кластера. Если сервер использует малую часть доступной оперативной памятью, установите для него динамическое выделение память, и укажите максимальный её объём, который операционная система буде ему выделять. Сделав так, Вы оставите достаточно памяти для поддержания отказоустойчивости, механизм которой будет срабатывать быстро и успешно. Если экземпляр будет использовать всю доступную оперативную память, отказоустойчивость будет выполняться медленно и может даже потерпеть неудачу, если память для поддержки отказавшего узла не будет высвобождена достаточно быстро.
Чтобы определять необходимый для каждого сервера объем памяти, протестируйте ваши приложения, установив максимально-возможный объем памяти для SQL Server, а затем оцените её утилизацию. Необходимо выделить достаточно памяти каждому серверу, чтобы дать возможность всем экземплярам работать на одном сервере и обеспечивать при этом минимальный уровень сервиса для каждого экземпляра. Использование динамического распределения памяти позволяет экземпляру SQL Server на любом узле использовать максимум памяти этого узла. Если Вы используете фиксированный объём выделяемой памяти, не распределённая сверх фиксированного размера память будет использоваться только во время отказа.
В системе, работающей под непрерывной и высокой нагрузкой, установите достаточный объём памяти, который будет гарантировать, что каждый экземпляр SQL Server сможет использовать хотя бы минимально необходимый для его эффективной работы размер оперативной памяти. Используйте фиксированное распределение памяти для гарантии того, что бы экземпляр SQL Server не захватит ту память, которая зарезервирована для поддержки работы отказавших экземпляров. Чтобы определить соответствующие значения выделяемой памяти, инициируйте отказ узла, и проверьте показатели работы каждого виртуального сервера. Если операционная система нестабильна после отказа узла кластера, уменьшите объём память, выделяемый каждому экземпляру, чтобы увеличить объём памяти, доступный операционной системе.
Чтобы определить установленный размер оперативной памяти для каждого экземпляра, используйте SQL Server Enterprise Manager или системную хранимую процедуру sp_configure. При определении объема памяти, распределяемого для нужд SQL Server, не забудьте оставить достаточно памяти для операционной системы. Для больших баз данных, для нужд операционной системы оставьте не менее 2Гбайт.
Если объем памяти, установленный на каждом узле превышает 4Гб, добавьте ключ /PAE в файле Boot.ini, что разрешит использование операционной системой расширенного адресного пространства Address Windowing Extensions (AWE), а также поддержку AWE нужно включить и в параметрах SQL Server. Для получения более подробной информации о поддержке AWE, см. статьи Microsoft Knowledge Base 268363 "Intel Physical Addressing Extensions (PAE) in Windows 2000" и 274750 "Configure Memory for More Than 2 GB in SQL Server".

[В начало]

2.17. Установка свойств новой базы данных

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

[В начало]

2.17.1. Установка свойств для новых баз данных

1. На одном из узлов, нажмите кнопку Start, выберите пункт Programs, затем перейдите в Microsoft SQL Server, а потом запустите оснастку Enterprise Manager.
2. Раскройте корневой узел Microsoft SQL Servers, а затем узел SQL Server Group.
3. Нажмите правую кнопку мыши на экземпляре SQL Server, и выберите пункт Properties.
4. На закладке Database Settings, в текстовом поле Default Data Directory, укажите диск и каталог, который был выбран для размещения файлов баз данных кластера. Что бы упростить эту процедуру, можно воспользоваться кнопкой с многоточием, которая вызывает мастера поиска каталогов на доступных дисках.
5. В текстовом поле Default Log Directory, аналогично предыдущему пункту, укажите каталог для размещения журналов транзакций и нажмите кнопку OK.
6. Закройте SQL Server Enterprise Manager.

[В начало]

2.18. Установка TCP/IP порта для SQL Server

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

[В начало]

2.18.1. Закрепление TCP/IP порта за экземпляром

1. Нажмите кнопку Start, выберите Programs, перейдите в Microsoft SQL Server, а затем запустите оснастку Server Network Utility.
2. В оснастке SQL Server Network Utility, выделите экземпляр SQL Server, для которого Вы хотите указать порт.
3. В списке Enabled Protocols, выберите TCP/IP, а затем пункт Properties.
4. В текстовом поле Default Port, введите номер выбранного порта, а затем нажмите OK.
5. Нажмите кнопку OK, чтобы закрыть окно оснастки SQL Server Network Utility.
6. Повторите эти шаги для каждого узла, участвующего в виртуальном SQL Server.

[В начало]

2.19. Установка расширенных опций кластера

Расширенные варианты отказоустойчивости определяют поведение отказоустойчивого кластера с SQL Server в кластере MSCS.

[В начало]

2.19.1. Настройка реакции на отказ

1. Нажмите кнопку Start, выберите Programs, а затем запустите оснастку Cluster Administrator.
2. В Cluster Administrator, выберите кластерную группа, содержащую SQL Server.
3. Нажмите правую кнопку мыши на SQL Server, и выберите Properties.
4. На закладке Advanced, для настройки расширенных возможностей отказоустойчивого кластера, используйте представленную ниже информацию. Заданные по умолчанию значения не стоит изменять без тщательного изучения возможности их применения и тестирования их работы:

  • Do Not Restart/Restart - Выбор Restart (значение по умолчанию) говорит о том, что при обнаружении отказа нужно перегрузить сервер.
  • Affect the Group - Выберите этот переключатель, если отказ SQL Server должен восприниматься как отказ всех ресурсов кластерной группы.
  • Threshold - Введите число попыток, которые MSCS должен предпринять, чтобы перезапустить SQL Server перед переключением его на другой узел.
  • Period - Введите число секунд между попытками повтора перезапуска. Это значение игнорируется, если период равен 0.
  • Looks Alive Poll Interval - Выберите Use Value from Resource Type, чтобы использовать для SQL Server значение по умолчанию - 5 000 миллисекунд (5 секунд).
  • Is Alive Poll Interval - Выберите Use Value from Resource Type, чтобы использовать для SQL Server значение по умолчанию - 60 000 миллисекунд (60 секунд).
  • Pending Timeout - определяет время задержки, которое необходимо выждать до перевода SQL Server в активное или отключенное состояние, прежде чем MSCS переведёт ресурсы в активное или в состояние отказа. Значение по умолчанию - 180 секунд.

5. Когда все изменения будут закончены, нажмите кнопку OK, чтобы закрыть окно SQL Server Properties в оснастке Cluster Administrator.

[В начало]

2.20. Изменение свойств сервисов в кластере

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

  • Используйте оснастку Cluster Administrator, чтобы запускать и останавливать сервисы.
  • Для указания запускающей экземпляр SQL Server учетной записи и её пароля, используйте Enterprise Manager и его диалоговое окно Properties.

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

[В начало]

3. Отказ вторичного узла

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

[В начало]

3.1. Проверка отказоустойчивости

Используйте для проверки Cluster Administrator, с помощью которого можно инициировать плановый отказ. Вы сможете промоделировать перевод узла в автономное состояние для проведения планового обслуживания.

[В начало]

3.1.1. Инициализация планового отказа

1. Нажмите кнопку Start, выберите пункт Programs, а в нём запустите Cluster Administrator.
2. Перейдите к кластерной группе, содержащей виртуальный SQL Server.
Обратите внимание на то, что бы кластер содержал все необходимые ресурсы в своей кластерной группе. 3. Нажмите правую кнопку мыши на кластерной группе, содержащей виртуальный SQL Server, а затем выберите Move Group.
Просмотрите все ресурсы в группе, которые будут переключены из активного в автономное состояние, и обратно в активное состояние с временной задержкой или в другую группу. Весь процесс может занимать 1 - 2 минуты для типовой системы. Также обратите внимание, что владельцем ресурсов в этой кластерной группе станет вторичный кластер.
Используйте один из представленных ниже вариантов для моделирования незапланированного отказа.

[В начало]

3.1.2. Моделирование незапланированного отказа

1. Сделайте одно из следующих действий:

  • Отключите у узла владеющего SQL Server кабель локальной сети.
  • Перезагрузите ведущий узел.
  • Отключите оптоволоконный кабель подключения к SAN (если он используется).
  • Выключите питание ведущего узла.

2. Используя Cluster Administrator на вторичном узле, просмотрите все ресурсы группы, которые переключатся в автономное состояние, а потом с минутной задержкой опять станут активными, при этом, должен смениться владелец этих ресурсов.

[В начало]

3.2. Уменьшение времени переключения

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

[В начало]

3.3. Понятие времени переключения в активное состояние

Время, которое требуется SQL Server при отказе для осуществления переключения на резервный узел, определяется следующим:

  • Время обнаружения и подтверждения отказа, которым можно управлять.
  • Время перевода ресурсов в автономное состояние, которым управляет MSCS, и которое Вы не сможете изменить.
  • Время переключения ресурсов в активное состояние, которым управляет MSCS, и которое Вы можете регулировать, обеспечив для SQL Server достаточный объём памяти и процессорных ресурсов.
  • Время, необходимое для запуска SQL Server на другом узле, которым Вы можете управлять, ограничивая длинные транзакции.

Обычно, SQL Server становится доступен в течение 1 минуты или даже меньше.

[В начало]

3.4. Управление временем обнаружения отказа

Временные интервалы LooksAlive и IsAlive определяют для SQL Server время, которое требуется MSCS для обнаружения отказа. Уменьшение этих интервалов делает более вероятным ложное обнаружение отказов и может привести к нежелательным переключениям. По умолчанию, для SQL Server значение интервала IsAlive ровняется 60 000 миллисекундам (60 секунд), а LooksAlive = 5 000 миллисекунд (5 секунд). Сначала измените эти значения на тестовом сервере, и полностью проверьте их под реальной нагрузкой. Если Вы установите уменьшенные значения для этих интервалов, проверьте их воздействие на приложение в целом.

[В начало]

3.5. Управление временем переключения в активное состояние

Если резервный узел во время отказа имеет недостаточный объём доступной оперативной памяти, потребуется больше времени, чтобы перевести SQL Server в активное состояние. Хотя это маловероятно для кластера с единственным экземпляром, это может стать проблемой в кластере с несколькими экземплярами. В нормальных условиях, каждый узел обслуживает один экземпляр SQL Server и каждый использует память так, как ему необходимо для эффективной работы. Если узел не имеет достаточного объёма оперативной памяти для одновременного запуска нескольких экземпляров после переключения, вызванного отказом, установите для этих экземпляров меньший максимальный объём занимаемой ими памяти.
Если доступно более 30 Мбайт свободной физической памяти, запускайте экземпляр в режиме динамического распределения памяти. Для контроля достаточности памяти можно использовать журнал ошибок операционной системы (event log), куда SQL Server записывает предупреждения, если ему не достаточно выделенной операционной системой памяти. Однако, если в журнале ошибок нет никаких предупреждений, это ещё не является причиной выделения для SQL Server только с 30 Мбайт памяти.

[В начало]

3.6. Управление временем запуска сервисов

При запуске SQL Server проверяется состояние каждой базы данных, фиксируются завершённые транзакции и выполняется откат незавершённых транзакций, если таковые были найдены в журнале. Если клиентские приложения используют очень длинные транзакции, незавершённые транзакции могут увеличить время запуска сервера, т.к. их откат может выполняться очень долго. Рекомендуется использовать по возможности короткие транзакции. Определите продолжительность самых длинных транзакций приложений, и определите время процесса регенерации (recovery), в течение которого эти транзакции будут отменены при обнаружении отказа.

[В начало]

3.7. Переподключение клиентов

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

  • В Web-приложениях определение состояний обычно не поддерживается. Когда пользователь посылает запрос Web-серверу, обычно приложение создаёт новое подключение. В такой среде не требуется никакая дополнительная логика повторений запроса. Однако, Web-приложение должно правильно обработать ответные сообщения об ошибках неудачного подключения к SQL Server.
  • В традиционных приложениях, подключения часто организуются для всего сеанса. Вы должны реализовать такую логику работы приложений, которая будет обнаруживать разрыв подключения, и пытаться повторно подключится через заданные интервалы времени (например, 30 секунд). Приложение должно уметь перезапускать транзакции, которые выполнялись в момент потери подключения. Иначе, Вам придется переложить Переподключение на пользователя прикладного программного обеспечения, который будет инициировать повтор транзакций доступными ему средствами.

[В начало]

4. Возврат на основной узел после отработки отказа

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

[В начало]

4.1.1. Настройка автоматического возврата в заданное время

1. Нажмите кнопку Start, выберите пункт Programs, а затем запустите оснастку Cluster Administrator.
2. В Cluster Administrator, нажмите правую кнопку мыши на группе, содержащей SQL Server.
3. Выберите пункт Properties.
4. На закладке Failback, установите день и время, когда Вы хотите выполнить возврат.
Руководствуйтесь при выборе времени возврата тем, что бы можно было при неудачном возврате вернуть экземпляр обратно и при этом наименьшим образом помешать работе клиентов.

[В начало]

4.1.2. Инициализация возврата

1. Нажмите кнопку Start, выберите пункт Programs, а затем запустите Cluster Administrator.
2. В Cluster Administrator, нажмите правую кнопку мыши на группе, содержащей SQL Server.
3. Выберите Move Group.

[В начало]

4.2. Восстановление узла кластера после полного выхода из строя (катастрофы)

Если один из узлов кластера полностью потерял работоспособность в результате серьёзного отказа (краха) или катастрофы, Вам, возможно, придется восстанавливать отказавший сервер. Используйте перечисленные ниже шаги и процедуры для того, чтобы восстановить работу этого сервера в кластере после отказа.

[В начало]

4.2.1. Восстановление сервера после краха

1. На выжившем узле, удалите потерпевший крах узел из состава виртуального сервера. Если Вы имеете на узле более одного виртуального сервера, внесите такие изменения во всех виртуальных серверах.
2. На выжившем узле необходимо выселить отказавший узел кластера.
3. Восстановите отказавший узел.
4. Установите на нём SQL Server.

[В начало]

4.2.2. Удаление узла из виртуального сервера

1. Вставьте CD диск SQL Server 2000 Enterprise Edition.
2. В появившемся окне программы установки SQL Server 2000 Enterprise Edition, выберите SQL Server Components, а затем запустите Install Database Server.
3. В окне Welcome мастера установки Microsoft SQL Server нажмите кнопку Next.
4. В окне Computer Name введите имя виртуального сервера, выберите Virtual Server, а затем нажмите Next.
5. Пропустите установку Advanced Options и нажмите Next.
6. Пропустите установку Maintain a Virtual Server for Failover Clustering и нажмите Next.
Обратите внимание на то, что если сервер недоступен, Вы получите следующее сообщение об ошибке: "One or more nodes of Virtual Server are unavailable. Setup cannot modify the virtual server's IP address resource".
7. На странице с этим сообщением об ошибке нажмите кнопку OK.
8. В окне Virtual Server Information нажмите кнопку Next.
9. В окне Cluster Management, выберите отказавший узел, а затем выберите Remove. Нажмите кнопку Next.
10. В окне Remote Information введите имя и пароль системной учётной записи администратора всех узлов кластера. Нажмите Next.
11. В появившемся окне сообщения нажмите Yes.
12. Нажмите кнопку Finish.

[В начало]

4.2.3. Выселение узла из кластера

1. Нажмите кнопку Start, выберите Programs, а затем запустите Cluster Administrator.
2. В Cluster Administrator, нажмите правую кнопку мыши на отказавшем узле, а затем выберите Evict Node. Нажмите OK.
3. Покиньте Cluster Administrator.

[В начало]

4.2.4. Восстановление узла

1. Переустановите Windows, подключитесь к серверу - контроллеру домена и примените самые последние сервисные пакеты для Windows, установленном на новых аппаратных средствах.
2. Настройте учетную запись пользователя домена для управления кластером. Для получения более подробной информации о такой учётной записи, см. раздел "Настройка учётных записей, выбор имён и получение IP адресов", опубликованный ранее в этой статье.
3. Настройте сетевые платы локальной сети и сигналов жизни.
4. Установите и настройте MSCS как для дополнительного узла. Для получения более подробной информации об этом, см. раздел "Установка MSCS на дополнительном узле кластера", опубликованный ранее в этой статье.

[В начало]

4.2.5. Добавление восстановленного узла в виртуальный сервер

1. Вставьте CD диск SQL Server 2000 Enterprise Edition в привод CD-ROM любого узла кластера. Вы можете добавить восстановленный узел в виртуальный сервер с любого узла кластера.
2. В запустившемся окне программы установки SQL Server 2000 Enterprise Edition, выберите SQL Server Components, а затем запустите Install Database Server.
3. В окне Welcome мастера установки Microsoft SQL Server нажмите кнопку Next.
4. В окне Computer Name введите имя виртуального сервера, выберите Virtual Server, а затем нажмите Next.
5. В окне Installation Selection, выберите Advanced Options и нажмите Next.
6. Пропустите Maintain a Virtual Server for Failover Clustering, нажав Next.
7. В окне Virtual Server Information нажмите Next.
8. В окне Cluster Management, выберите новый узел, нажмите Add, а затем нажмите Next.
9. В текстовом поле Username, укажите учетную запись пользователя домена, которая должна является администратором каждого узла, участвующего в виртуальной конфигурации сервера. Введите пароль в поле Password, впишите имя домена в поле Domain, а затем нажмите кнопку Next.
10. В окне Services Accounts, укажите учетную запись пользователя домена, её пароль и домен в соответствующих текстовых полях, а затем нажмите Next.
11. Нажмите кнопку Finish, когда установка будет завершена. Повторите этот процесс для каждого экземпляра.
Обратите внимание, что после установки SQL Server 2000 и присоединения его к виртуальному SQL Server, нужно применить соответствующий сервисный пакет для SQL Server на восстановленном узле. Все узлы должны иметь одинаковые сервисные пакеты.

[В начало]

5. Ссылки

Для получения подробной информации о темах, описываемых в этой статье, обратитесь к следующим документам:

[В начало]


Перевод: Александра Гладченко  2004г.

ПУБЛИКАЦИИ

Скачать электронную карту Ангарска бесплатно
Сайт управляется системой uCoz