SQL Server Integration Services (SSIS) サービスの説明と、SSIS サービスのクラスタリングの代替手段


はじめに


この記事では、Microsoft SQL Server 2005 Integration Services (SSIS) サービスと Microsoft SQL Server 2008 Integration Services (SSIS) サービスについて説明します。 SSIS サービスをクラスター化することはお勧めしません。 ただし、この記事では、SSIS サービスのクラスタリングの代替方法について説明します。

詳細情報


SSIS サービスの役割

SSIS サービスは、実行中の SSIS パッケージを監視する Windows サービスです。 SSIS サービスは、SSIS パッケージの記憶域も管理します。SSIS サービスは、SQL Server Management Studio の管理機能を拡張します。 管理者グループのメンバーである場合は、SQL Server Management Studio で次のタスクを実行できます。
  • SSIS パッケージをインポートします。
  • SSIS パッケージをエクスポートします。
  • SSIS パッケージを実行します。
  • SSIS パッケージを停止します。
  • 現在実行されている SSIS パッケージをすべて表示します。
  • 現在実行されているすべての SSIS パッケージを停止します。
自分が管理者グループのメンバーでない場合は、実行した SSIS パッケージのみを表示して停止することができます。SSIS パッケージをデザインしたり実行したりするだけであれば、SSIS サービスを開始する必要はありません。 SSIS サービスが停止すると、次のユーティリティを使用して SSIS パッケージを実行できます。
  • SQL Server のインポートとエクスポートウィザード
  • SSIS デザイナー
  • パッケージの実行ユーティリティ (Dtexecuu.exe)
  • DTExec コマンドプロンプトユーティリティ
SQL Server Management Studio の SSIS パッケージの一覧表示と監視を行う場合、SSIS サービスを開始する必要があります。 SSIS サービスは、SQL Server Management Studio で次の管理機能を提供します。
  • リモート記憶域またはローカルストレージから SSIS パッケージを取得します。 次に、SSIS サービスは、SQL Server エージェントジョブを使わずに、SSIS パッケージをローカルで実行できます。
  • SQL Server エージェントジョブを使わずに、ローカルまたはリモートで実行されている SSIS パッケージを停止します。
  • SQL Server エージェントジョブを使わずに、ローカルまたはリモートで実行されている SSIS パッケージを監視します。
  • SSIS パッケージをインポートおよびエクスポートします。注: また、Dtutil ユーティリティまたは SSIS 展開ウィザードを使用して、SQL Server またはファイルシステムに SSIS パッケージを保存することもできます。
  • SSIS パッケージを保存できる場所を管理します。
  • SSIS パッケージを保存できるフォルダーをカスタマイズします。
  • SSIS サービスが停止したときに実行されている SSIS パッケージを停止します。
  • イベントログの SSIS サービスに関連するイベントを表示します。

SSIS サービスのクラスタリング

SSIS サービスをクラスター化することはお勧めしません。 SSIS サービスと SQL Server が異なるリソースグループにインストールされている場合、SSIS サービスは資格情報を委任できません。 そのため、sql Server Management Studio をクライアントコンピューターから使用して、SQL Server に保存されているパッケージを管理することはできません。 また、コンピューターに SSIS の1つのインスタンスのみをインストールすることもできます。 SSIS サービスをクラスター化するときに、その他の問題が発生することもあります。SSIS サービスをクラスター化する必要がある場合は、次の Microsoft 開発者ネットワーク Web サイトで詳細を参照してください。

クラスターの詳細情報

クラスターでは、ネットワークアダプター、CPU、メモリ、オペレーティングシステムは冗長です。 ただし、共有ディスクは冗長である必要はありません。 ハードウェアソリューションを実装して、ディスクの冗長性を確保することができます。 たとえば、RAID デバイスやシステムエリアネットワーク (SAN) 環境を使って、ディスクを冗長化することができます。この記事で説明したクラスターは、1つの地理的な場所にあります。 地理的に分散したクラスターの詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
280743 Windows クラスタリングと地理的に分離したサイト

SSIS サービスのクラスタリングの代替手段

クラスターの SQL Server エージェント

SQL Server エージェントジョブは、SSIS パッケージを実行するために、DTExec ユーティリティを実行できるため、フェールオーバーが発生したときに、SSIS パッケージがスケジュールどおりに実行されるように SQL Server エージェントをクラスター化できます。 SQL Server エージェントをクラスター化すると、すべてのノードで SQL Server エージェントジョブを使用できるようになります。 そのため、SQL Server エージェントジョブは、ノード間でフェールオーバーできます。 SQL Server エージェントジョブのメタデータは、MSDB データベースに保存されます。 SSIS パッケージは、MSDB データベースまたは共有ディスクに保存できます。

各ノードの MsDtsSrvr ファイルを更新する

SSIS サービスをクラスタリングする代わりに、各ノードの MsDtsSrvr ファイルを更新して、ファイルにクラスター内の仮想 SQL Server の1つ以上のインスタンスに関する情報が含まれるようにすることができます。 この操作を行うときは、SQL Server の MSDB データベースに SSIS パッケージを保存します。 次に、クラスター内のすべてのノードから SSIS パッケージを管理することができます。注: MsDtsSrvr ファイルは、次のフォルダーにあります。
%ProgramFiles%\Microsoft SQL Server\90\DTS\Binn
次に示すのは、クラスター内の仮想 SQL Server の2つのインスタンスに関する情報を含む MsDtsSrvr ファイルの例です。 仮想 SQL Server の2つのインスタンスには、名前付きインスタンスがあります。
<?xml version="1.0" encoding="utf-8"?><DtsServiceConfiguration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  <StopExecutingPackagesOnShutdown>true</StopExecutingPackagesOnShutdown>  <TopLevelFolders>    <Folder xsi:type="SqlServerFolder">      <Name>MSDB</Name>      <ServerName>ServerA\SQL_Instance1</ServerName></Folder>    <Folder xsi:type="SqlServerFolder">      <Name>MSDB</Name>      <ServerName> ServerB\SQL_Instance2</ServerName></Folder>    <Folder xsi:type="FileSystemFolder">      <Name>File System</Name>      <StorePath>..\Packages</StorePath>    </Folder>  </TopLevelFolders>  </DtsServiceConfiguration>
SSIS サービスを開始しない場合でも、SQL Server エージェントはメンテナンスプランを実行できます。SQL Server 2005 統合サービスのリリースバージョンでは、メンテナンスプランウィザードを実行する場合は、SSIS サービスをインストールする必要があります。 この問題は、SQL Server 2005 Service Pack 1 (SP1) で解決されます。 この問題の詳細については、次の記事番号をクリックして、Microsoft サポート技術情報の記事を参照してください。
909036 SQL Server 2005 で新しいメンテナンスプランを作成すると、"メンテナンスプランの作成に失敗しました" というエラーメッセージが表示される
ユーザーデータベースに対しては次の高可用性オプションのいずれかを使用できますが、MSDB などのシステムデータベースには使用できません。
  • レプリケーション
  • ログ配布
  • データベースのミラーリング
したがって、MSDB データベースに格納されている SSIS パッケージの高可用性を取得するために、これらのオプションを使うことはサポートされていません。 SSIS サービスをクラスタリングする代わりに、SQL Server サービスまたは SQL Server エージェントサービスをクラスター化して、SSIS パッケージの高可用性を取得できます。