четверг, 1 апреля 2010 г.

Разворачивание MS SQL Server 2008 в кластере Active/Active на Windosw Server 2008 R2 с использованием MirrorView и EMC Cluster Enabler

Использовались системы хранения данных EMC CX4-120 CLARIION
После того как кластер Windows с Majority Node Set был развернут.
Натолкнулся на невозможность запустить MSDTC (Distributed Transaction Coordinator).
Что интересно служба на серверах работала, но не работал (не запускался) кластерный ресурс на сервере:

Отдельно создавать ресурс кластера под DTC не стал, так как он требует отдельной точки доступа (IP-адрес) и отдельного дискового ресурса, причем если используется диск из EMC Cluster Enabler (т.е. диск, которые апаратно реплицируется между хранилищами посредством MirrorView), то невозможно добавить дисковый ресурс к создаваемому кластерному ресурсу DTC поскольку это специфика EMC Cluster Enabler, насколько я понял.

На приведенном рисунке не стартует DTC, при этом в логах обнаружил следующие ошибки:

The Cluster service failed to bring clustered service or application 'cluster-02-sql2' completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered service or application.

и

Log Name: Application
Source: Microsoft-Windows-MSDTC Client 2
Date: 31.03.2010 14:42:15
Event ID: 4879
Task Category: CM
Level: Warning
Keywords: Classic
User: N/A
Computer: SQL-NODE-02.corp.mydomain.ru
Description:MSDTC encountered an error (HR=0x80000171) while attempting to establish a secure connection with system SQL-NODE-02.
Event Xml: 4879 0 3 3 0 0x80000000000000 1076 Application SQL-NODE-02.corp.mydomain.ru 80000171 SQL-NODE-02

причем не помогает dcomcnfg в конфигурации:

а comclust здесь (w2008 R2) просто нету

Попасть в "свойства" объекта "Clustered DTCs" не представляется возможность, ни правой кнопкой мыши, ни через мени Action этой позиции просто нету.

принял решение отказать ся от MS DTC.

Ссылки по теме: ссылка1, ссылка2, ссылка3, ссылка4, ссылка5, ссылка6, ссылка7, ссылка8

для пересборки кластера достаточно разорвать и уничтожить группы консистентности на системаха хранения, которые были созданы ПО Cluster Enabler-ом после чего можно заново собирать группы через Cluster Enabler.

При создании группы через Cluster Enabler выставляю режим Automatic Filover.
После создания группы через Cluster Enabler вижу, что группа с таким названием появиласть в оснастке "Failover Cluster Management", при этом на системах хранения автоматически создалась группа консистентности.
Перебегание диска между нодами (в это время переворачивалась синхронная
реплика между системами хранения) - показало успешное перебегание.


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


Перезагрузка и перенос кластерного дискового ресурса между нодами ничего не дал - всё осталось также как и было - невозможно установить SQL без доступного общего диска.


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

Удалил пустую группу консистентности, при этом дисковый русурс остался быть доступным на кластере в разделе Storage. примечательно, что другой дисковый ресурс(также зеркалируемый посредством MirrorView между системами хранения), который не добавлялся в Cluster Enabler, но был активным на активной ноде, здесь не отображался.

После запуска установки SQL Server больше не ругался на отсутствующий дисковй ресурс. Ругался только на:

1.Rule "Distributed Transaction Coordinator (MSDTC) clustered" generated a warning.The MSDTC service is not clustered.

2.Rule "Network binding order" generated a warning.The domain network is not the first bound network.


Поскольку отсутствовал DTS, при установке SQL Server снял галки:

1.Analisys Server

2.Reporting Services

3.Client Tools SDK

4.SQL Client Connectivity DK

5.Microsoft Sync Framework


В домене создал учетку для служб кластера и большинство служб (все которые требует настройки) установил запуск от неё.

Сохранил информацию об установке C:\Program Files\Microsoft SQL Server\100\Setup
Bootstrap\Log\20100504_174117\ConfigurationFile.ini На пассивной ноде поппытался установить SQL Server используя конфигурационный файл инсталяци с пассивной ноды, режим Advanced:Install based on configuration fileв процессе установки возникла ошибка:The setting 'FAILOVERCLUSTERDISK' is not allowed value of setting 'ACTION' is 'Install'. Error code 0x84B40005

Если же устанавливать Failover CLUSTER не через ini файл а простым добавление 2-й ноды, при этом выбираем ключ продукта...

В процессе установки возникает ошибка:the current sku is invalid. помог запуск с командной строки
"D:\Masters\en_sql_server_2008_enterprise_x86_x64_ia64_dvd_x14-89207\setu
p.exe" /ACTION=AddNode /INSTANCENAME="CLUSTER02SQL1" /SQLSVCACCOUNT="DOMAIN\Username" /SQLSVCPASSWORD="Password" /AGTSVCACCOUNT="DOMAIN\Username", /AGTSVCPASSWORD="Password" /INDICATEPROGRESS
После этого запустил настройку Cluster enabler на активной ноде, выбрав Configure CE Cluster, после чего приложение Cluster Enabler само преобразовало кластерную группу инстанса SQL Server в группу Cluster Enabled, и создало на CLARiiON-ах группу консистентности.

После чего SQL кластер успешно перебежал на пассивную ноду.

------------------------------------------------------------

Повторил всё тоже со 2-м инстансом - перебегает нормально.В результате получили Active/Active Cluster SQL Server

Комментариев нет:

Отправить комментарий