Службы Integration Services (SSIS) в кластере

Применимо к: SQL Server Integration Runtime служб SSIS в Фабрика данных Azure

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

Хотя служба Службы Integration Services и не является службой, поддерживающей работу в кластере, ее можно вручную настроить на работу в качестве ресурса кластера после того, как служба Службы Integration Services будет отдельно установлена на каждом узле кластера.

Однако если целью постройки кластеризованной аппаратной среды является достижение высокого уровня доступности, то этой цели можно добиться и без настройки службы Службы Integration Services в качестве ресурса кластера. Чтобы управлять пакетами, находящимися на любом узле кластера, с любого другого узла кластера, измените файл конфигурации для службы Службы Integration Services на каждом узле кластера. Необходимо так изменить эти файлы конфигурации, чтобы они указывали на все доступные экземпляры SQL Server , на которых хранятся пакеты. Такое решение предоставляет высокий уровень доступности, необходимый для большинства клиентов, а также избегает потенциальных проблем, с которыми можно столкнуться при настройке службы Службы Integration Services в качестве ресурса кластера. Дополнительные сведения об изменении этого файла конфигурации см. в разделе Службы Integration Services (SSIS).

Понимание роли службы Службы Integration Services крайне важно для принятия компетентного решения относительно настройки службы в кластерной среде. Дополнительные сведения см. в разделе Службы Integration Services (SSIS).

Недостатки

Далее приводятся потенциальные недостатки настройки службы Службы Integration Services в качестве ресурса кластера.

  • При отработке отказа не происходит повторного запуска выполняющихся пакетов.

    Восстановление после ошибок пакетов можно произвести, перезапустив пакеты с контрольных точек. Перезапуск с контрольных точек можно производить и без настройки службы в качестве ресурса кластера. Дополнительные сведения см. в разделе Restart Packages by Using Checkpoints.

  • Если служба Службы Integration Services была настроена в группе ресурсов, отличной от группы SQL Server, то будет невозможно использовать среду Среда Management Studio на клиентских компьютерах для управления пакетами, хранящимися в базе данных msdb. В этом двухшаговом сценарии служба Службы Integration Services не может делегировать учетные данные.

  • Если существует несколько групп ресурсов SQL Server , которые включают службу Службы Integration Services в кластер, то при отработке отказа могут возникнуть непредвиденные результаты. Рассмотрим следующий сценарий. Группа1, в которую входят служба SQL Server и служба Службы Integration Services , выполняется на узле А. Группа2, в которую также входят служба SQL Server и служба Службы Integration Services , выполняется на узле Б. Происходит переход Группы2 на узел А. Попытка запуска другого экземпляра службы Службы Integration Services на узле А завершается с ошибкой, поскольку допускается существование только одного экземпляра службы Службы Integration Services . Завершится ли с ошибкой служба SQL Server при попытке перехода на узел А, зависит от конфигурации службы Службы Integration Services в Группе2. Если служба Службы Integration Services была настроена для влияния на другие службы в группе ресурсов, то служба SQL Server при попытке перехода завершится с ошибкой, потому что служба Службы Integration Services завершилась с ошибкой. Если служба была настроена не влиять на другие службы в группе ресурсов, то служба SQL Server сможет совершить переход на узел А. Если служба Службы Integration Services в Группе2 не была настроена не затрагивать другие службы в группе ресурсов, то завершение с ошибкой переходящей службы Службы Integration Services может вызвать завершение с ошибкой переходящей службы SQL Server .

Настройка службы в качестве ресурса кластера

Этот раздел содержит инструкции по настройке службы Службы Integration Services в качестве ресурса кластера, которые могут пригодиться клиентам, считающим, что преимущества данной конфигурации перевешивают ее недостатки. Тем не менее корпорация Microsoft не рекомендует настраивать службу Службы Integration Services в качестве ресурса кластера.

Чтобы настроить службу Службы Integration Services в качестве ресурса кластера, необходимо выполнить следующие действия.

  • Установите в кластере службу Службы Integration Services .

    Чтобы установить службу Службы Integration Services в кластере, следует установить Службы Integration Services на каждом узле в кластере.

  • Настройте службу Службы Integration Services на работу в качестве ресурса кластера.

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

    Службы Integration Services и SQL Server находятся в одной группе ресурсов Службы Integration Services и SQL Server находятся в разных группах ресурсов
    Клиентские компьютеры могут использовать среду SQL Server Management Studio для управления пакетами, хранящимися в базе данных msdb, поскольку компонент Компонент SQL Server Database Engine и служба Службы Integration Services выполняются на одном виртуальном сервере. Такая конфигурация позволяет избежать проблем делегирования, возникающих в двухшаговом сценарии. Среду SQL Server Management Studio на клиентских компьютерах нельзя использовать для управления пакетами, хранящимися в базе данных msdb. Клиент может соединяться с виртуальным сервером, на котором запущены службы Службы Integration Services . Однако этот компьютер не может делегировать учетные данные виртуальному серверу, на котором запущен SQL Server . Такой сценарий называется «двойным прыжком».
    Служба Службы Integration Services конкурирует с другими службами SQL Server за ресурсы ЦП и другие ресурсы. Служба Службы Integration Services не конкурирует с другими службами SQL Server за ресурсы ЦП и другие ресурсы, поскольку разные группы ресурсов установлены на разных узлах.
    Загрузка и сохранение пакетов в базу данных msdb происходит быстрее и создает меньше сетевого трафика, поскольку обе службы выполняются на одном компьютере. Загрузка и сохранение пакетов в базе данных msdb могут выполняться медленнее и создавать больший сетевой трафик.
    Обе службы одновременно в сети или вне сети. Служба Службы Integration Services может быть в сети в то время как компонент находится Компонент SQL Server Database Engine вне сети. Вследствие этого пакеты, хранящиеся в базе данных msdb компонента Компонент SQL Server Database Engine , будут недоступны.
    Служба Службы Integration Services не может быть быстро перенесена на другой узел при необходимости. Служба Службы Integration Services при необходимости может быть быстрее перенесена на другой узел.

    После принятия решения относительно того, в какую группу ресурсов стоит добавить службу Службы Integration Services, необходимо настроить службу Службы Integration Services на работу в качестве ресурса кластера в этой группе.

  • Настройте службу Службы Integration Services и хранилище пакетов.

    После того как служба Службы Integration Services была настроена на работу в качестве ресурса кластера, следует произвести изменение расположения и содержимого файла конфигурации службы Службы Integration Services на каждом узле в кластере. После этих изменений и файл конфигурации, и хранилище пакетов будут доступны для всех узлов при отработке отказа. После изменения расположения и содержимого файла конфигурации следует перевести службу в оперативный режим.

  • Переведите службу Службы Integration Services в режим в сети в качестве ресурса кластера.

После настройки служб Службы Integration Services в кластере или на любом сервере может возникнуть необходимость настроить разрешения DCOM прежде, чем можно будет подключиться к службе с клиентского компьютера. Дополнительные сведения см. в разделе Службы Integration Services (SSIS).

Служба Службы Integration Services не может делегировать учетные данные. Следовательно, нельзя использовать среду Среда Management Studio для управления пакетами, хранящимися в базе данных msdb, в том случае, если выполняются следующие условия.

  • Служба Службы Integration Services и SQL Server выполняются на отдельных серверах или виртуальных серверах.

  • Клиент, запускающий среду SQL Server Management Studio , находится на третьем компьютером.

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

Установка служб Integration Services на кластере

  1. Установите и настройте кластер, содержащий один или несколько узлов.

  2. Установите службы, поддерживающие работу в кластере, например компонент Компонент SQL Server Database Engine(необязательно).

  3. Установите службы Службы Integration Services на каждом из узлов.

Настройка служб Integration Services в качестве ресурса кластера

  1. Откройте администратор кластера.

  2. В дереве консоли разверните папку «Группы».

  3. На панели результатов выберите группу, к которой планируется добавить службу Службы Integration Services.

    • Чтобы добавить службу Integrations Services в качестве ресурса кластера в ту же группу ресурсов, что и SQL Server, выберите группу, к которой принадлежит SQL Server .

    • Чтобы добавить службу Integrations Services в качестве ресурса кластера в группу ресурсов, в которую не входит SQL Server, выберите группу, к которой SQL Server не принадлежит.

  4. В меню Файл выберите пункт Создать, а затем Ресурс.

  5. На странице Создание ресурса в мастере ресурсов введите имя и выберите тип службы"Общая служба" . Не изменяйте значение поля Группа. Щелкните Далее.

  6. На странице Возможные владельцы добавьте или удалите узлы кластера, которые являются возможными владельцами ресурса. Щелкните Далее.

  7. Чтобы добавить зависимости на странице Зависимости , выберите ресурс в списке Доступные ресурсы, а затем нажмите Добавить. При отработке отказа как SQL Server , так и общий диск, на котором сохраняются пакеты служб Службы Integration Services , должны быть переведены в режим "в сети" раньше, чем служба Службы Integration Services . После выбора зависимостей нажмите кнопку Далее.

    Дополнительные сведения см. в разделе Добавление зависимостей к ресурсу SQL Server.

  8. На странице Общие параметры службы введите в качестве имени службы значение MsDtsServer . Щелкните Далее.

  9. На странице Репликация реестра нажмите Добавить , чтобы добавить раздел реестра, который идентифицирует расположение файла конфигурации для службы Службы Integration Services . Файл должен быть расположен на общем диске, находящемся в той же группе ресурсов, что и служба Службы Integration Services .

  10. В диалоговом окне Раздел реестра введите SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile. Нажмите кнопку ОК, а затем — кнопку Готово.

    Теперь служба Службы Integration Services добавлена как ресурс кластера.

Настройка службы Integration Services и хранилища пакетов

  1. Найдите файл конфигурации %ProgramFiles%\Microsoft SQL Server\100\DTS\Binn\MsDtsSrvr.ini.xml. Скопируйте его на общий диск той группы, в которую была добавлена служба Службы Integration Services .

  2. Создайте на общем диске новую папку с именем Packages , которая будет служить хранилищем пакетов. Предоставьте подходящим группам и пользователям разрешения на просмотр содержимого и на запись в созданную папку.

  3. Откройте файл конфигурации с общего диска в редакторе текста или XML. Измените значение элемента ServerName , указав имя виртуального SQL Server , относящегося к той же группе ресурсов.

  4. Измените значение элемента StorePath , указав полный путь к папке Packages , которую вы создали на общем диске на предыдущем этапе.

  5. На каждом узле измените значение HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\SSIS\ServiceConfigFile в реестре, указав полный путь и имя файла конфигурации службы на общем диске.

Приведение службы Integration Services в режим в сети

  • В Администраторе кластеравыберите службу Службы Integration Services , щелкните ее правой кнопкой мыши и выберите из контекстного меню пункт Перевести в режим "в сети" . Теперь служба Службы Integration Services доступна как ресурс кластера.