バインド ファイルとアプリケーションの展開
ここでは、BizTalk アセンブリとアプリケーションの展開が容易になる、バインド ファイルの使用について概説します。 以下のシナリオでバインド ファイルを使用すると、バインドを手動で構成する必要がないので、迅速に展開できます。
ある展開環境から別の環境へアプリケーションを移動する場合
アセンブリを更新する場合
アセンブリを複数の BizTalk グループに展開する。
バインディングとは
バインドでは、オーケストレーション ポートやロール リンクなどの論理エンドポイントと、送受信ポートやパーティなどの物理エンドポイントとの間にマッピングが作成されます。 これにより、BizTalk ビジネス ソリューションの複数のコンポーネント間で通信できるようになります。 バインドを作成するには BizTalk Server 管理コンソールを使用します。
バインド ファイルとは何ですか。
バインド ファイルは、BizTalk アセンブリ、アプリケーション、またはグループのスコープで、BizTalk オーケストレーション、パイプライン、マップ、スキーマのそれぞれに関するバインド情報が含まれた .xml ファイルです。 バインド ファイルには、各オーケストレーションがバインドされるホストとその信頼レベルに加えて、送信ポート、送信ポート グループ、受信ポート、受信場所、構成されたパーティのそれぞれに関する設定が記述されます。 バインド ファイルを生成し、これに含まれるバインドをアセンブリ、アプリケーション、またはグループに適用すると、展開環境ごとにバインドを手動で構成する必要がなくなります。
バインド ファイルを使用する理由
次のようなシナリオでバインド ファイルを使用できます。
ある環境から別の環境へ移動する場合
バインド ファイルを使用すると、開発環境からテスト環境への移動など、ある展開環境から別の環境へのアプリケーションの移動が容易になります。 これは、バインド ファイルを使用することにより、複数の展開環境に合わせたバインドの再構成を手動で繰り返し実行する必要がなくなるためです。
このためには、バインドのライブラリを作成し、新しい環境へのアプリケーション展開時にライブラリから選択する方法があります。 たとえば、テスト環境用と実稼働環境用に個別にバインド ファイルを作成し、その両方をアプリケーションに追加できます。 アプリケーションをテスト環境にインポートするときには、テスト バインドを適用するオプションを選択できます。 同様に、アプリケーションを実稼働環境にインポートするときには、実稼働バインドを適用するオプションを選択できます。 これにより、環境に応じてバインドを手動で再構成する必要がなくなります。 また、アプリケーションを現在の環境にインポートした後、この環境用に作成したバインドをインポートする方法もあります。 これにより、バインドが自動的に適用されます。
アセンブリの更新
アプリケーションのアセンブリを更新すると、多くの場合、そのバインドが上書きされます。また、アセンブリがまったくバインドされず、バインドの再構成を手動で行う必要が生じることもあります。 バインド ファイルを次のように使用すると、これを回避できます。
同じバージョンでアセンブリを更新する場合。 アセンブリに事前バインドされたポートまたは動的ポートがあり、ポート構成を BizTalk Server 管理コンソールで変更した場合、このアセンブリを同じバージョン番号のアセンブリで更新すると、設定は失われます。 更新するアセンブリ用にバインド ファイルをエクスポートできます。 アセンブリを更新した後、アプリケーションにアセンブリをインポートしてから、そのバインド ファイルをインポートして、以前のバインドを再適用できます。
新しいバージョンでアセンブリを更新する場合。 更新するアセンブリ用にバインド ファイルをエクスポートし、新しいアセンブリ バージョンに合わせて編集できます。 新しいアセンブリ バージョンをアプリケーションにインポートした後、バインド ファイルをアプリケーションにインポートして、バインドを適用できます。 バインド ファイルの編集手順については、「バインディング ファイル のカスタマイズ」を参照してください。
複数の BizTalk グループにアセンブリを展開する場合
複数の BizTalk グループにアセンブリを展開する場合、アセンブリと共に、アセンブリ用のバインドもトランスポートできます。 これにより、アセンブリのバインドをグループごとに個別に構成する必要がなくなります。 このことは次のように実行できます。
展開するアセンブリのバインドをエクスポートして、バインド ファイルを作成します。
アセンブリとそのバインド ファイルを、アプリケーションに追加します。 他のアイテムとは別にアセンブリを展開する場合、アセンブリとバインド ファイルだけをアプリケーションに含めることができます。
アプリケーション用の .msi ファイルをエクスポートします。このとき、エクスポートするバインド ファイルも必ず選択します。
アプリケーションの .msi ファイルを、展開先の BizTalk グループとアプリケーションにインポートします。 インポート時に、ファイル内のバインドがアセンブリに自動的に適用されます。
バインド ファイルを生成して使用する方法
BizTalk アセンブリ、アプリケーション、またはグループに対してバインド ファイルが自動的に生成されるわけではありませんが、「バインドのエクスポート」で説明されているように、バインドをエクスポートすることで バインド ファイルを生成できます。 その後、「 BizTalk アプリケーションにバインドをインポートする方法」および「バインドを BizTalk グループにインポートする 方法」の説明に従って、バインド ファイルをアプリケーションまたは グループにインポートできます。これにより、バインドが自動的に適用されます。
または、「アプリケーションにバインド ファイルを追加する方法」の説明に従って、アプリケーションがすぐに適用されるのではなく、アプリケーションが別のグループにインポートされたときに バインドが適用されるように、バインド ファイルをアプリケーションに追加することもできます。 最後の方法を使用すると、複数のバインド ファイルをアプリケーションに追加できます。また、それぞれのファイルに対してターゲット展開環境を指定することもできます。 アプリケーションをインポートするときに、「 BizTalk アプリケーションをインポートする方法」の説明に従って、対象の展開環境に基づいて、適用するバインドを選択できます。 最後の方法を使用すると、アプリケーション内の複数のアセンブリに対して個別のバインド ファイルをインポートすることもできます。
バインド ファイルを生成した後に編集して、そのバインド情報を変更できます。 詳細については、「 バインド ファイルのカスタマイズ」を参照してください。
バインドを適用する方法
バインド ファイルをアプリケーションにインポートするか、アプリケーションを新しい BizTalk グループにインポートすると、バインドが適用されます。 バインド ファイルを使用するときは、アイテムがホストにバインドされるしくみと、バインドが適用される順序とを理解することが重要です。
ホストへのバインド
バインドを単独で、またはアプリケーションの一部としてエクスポートする場合、ホストと信頼レベルは次のようにバインド ファイルに格納されます。
送信ポート。 送信ハンドラーに関連付けられたホストの信頼レベル。
受信場所。 受信ハンドラーに関連付けられたホストの信頼レベル。
オーケストレーション。 ホストの信頼レベル。
バインドをアプリケーションにインポートするか、アプリケーションを .msi ファイルから新しい BizTalk グループにインポートすると、バインド ファイル内のホストおよび信頼レベルが、アプリケーション内のホストおよび信頼レベルと次のように照合されます。
送信ポート。 送信ポートは、同じ名前の送信ハンドラーにバインドされます。また、バインド ファイルに格納されている信頼レベルを持つホストにバインドされます。
受信場所。 受信場所は、同じ名前の受信ハンドラーにバインドされます。また、バインド ファイルに格納されている信頼レベルを持つホストにバインドされます。
オーケストレーション。 オーケストレーションは、バインド ファイル内のそれと同じ名前および信頼レベルを持つホストにバインドされます。
バインドが適用される順序
アプリケーションをインポートすると、バインドは次の順序で適用されます。
BizTalk Server によって生成されたアプリケーション バインドのうち、バインド ファイルでアプリケーションに明示的に追加されたバインドではなく、ユーザーがアプリケーション .msi ファイルへのエクスポート対象として明示的に選択したバインド。
アプリケーションに追加されたバインド ファイル内のバインドのうち、ターゲット展開環境が指定されていないもの。 これらのバインド内での適用順序は特に決まっていません。
アプリケーションに追加されたバインド ファイル内のバインドのうち、アプリケーションのインポート用に選択された、ターゲット展開環境と一致する展開環境が関連付けられているもの。 これらのバインド内での適用順序は特に決まっていません。
インポート プロセスでバインドが適用されるとき、同じ名前を持つ適用済みのバインドは、新しいバインドで上書きされます。 つまり、同じ名前のバインドを適用すると、常に、最新のバインドが有効になります。
たとえば、既存のアプリケーションに SendPort1 という送信ポートが含まれており、同じ名前の送信ポートが記述されているバインド ファイルを適用した場合、SendPort1 の既存の設定が、バインド ファイル内の設定で上書きされます。 また、たとえば、既存のアプリケーションに ErrorHandling.ErrorHandler.ResubmitLogic というオーケストレーションが含まれており、同じ名前のオーケストレーションがバインド ファイルに記述されている場合、そのオーケストレーションの既存のバインドすべてが、バインド ファイル内のバインドで上書きされます。