Windows Server 2008 フェールオーバー クラスターで FTP 7.5 を構成する方法

文書翻訳 文書翻訳
文書番号: 974603
すべて展開する | すべて折りたたむ

はじめに

この資料では、Windows Server 2008 フェールオーバー クラスターで Internet Information Services (IIS) 7.0 の FTP 7.5 サイトを構成する方法について説明します。この資料の手順は、FTP サービスにのみ適用されます。

フェールオーバー クラスターで Web サービスを構成する方法の詳細については、以下のサポート技術情報番号をクリックしてください。
970759 Microsoft Windows Server 2008 フェールオーバー クラスターで IIS 7.0 を構成する

詳細

インターネット インフォメーション サービスの以前のバージョンでは、Microsoft クラスター インフラストラクチャを使用して、高可用性 Web サーバー インスタンスをサポートするための汎用のリソース モニター コンポーネントを提供していました。しかし、このソリューションの可能性を完全に実現するにはカスタム コードが必要でした。さらに、マイクロソフトが提供していた汎用のスクリプトはお客様のニーズを満たしていませんでした。クラスター化された環境で Windows Server フェールオーバー クラスタリングを使用して IIS 7.0 を構成するには、カスタム (スクリプト) コードを使用してそのような高可用性シナリオを実現する必要があります。これを行うと、ユーザーは自社の要件を満たすように設定をカスタマイズできます。これにより、可用性の高い Web アプリケーションの統合を完全に制御することができます。さらに、IIS 7.0 で導入された管理と監視のためのスクリプト インターフェイスは、以前に提供されていたスクリプトよりも多くの機能を持つ環境を提供します。

注: IIS 7.0 のインストール ファイルには、IIS 6.0 の IIS クラスター管理タスクで使用される Clusweb.vbs および Clusftp.vbs スクリプト ファイルが誤って含まれています。これらのスクリプトを IIS 7.0 で使用しないでください。

IIS 7.0 を実行する複数のサーバーを使用する Web アプリケーションの拡張性と可用性を向上させる場合は、管理者が、優先される主要な方法として、フェールオーバー クラスターを使用する代わりにネットワーク負荷分散 (NLB) を使用することを慎重に評価することをお勧めします。NBL の利点の 1 つは、すべてのサーバーが受信 HTTP 要求の同時処理にアクティブに参加できることです。また、NLB IIS 環境には、Web アプリケーションの高可用性を維持しながらローリング アップデートやロールバックを簡単にサポートできるという利点もあります。NLB 環境での IIS 7.0 の使用の詳細については、以下のマイクロソフト Web サイトを参照してください。
http://learn.iis.net/page.aspx/213/network-load-balancing

http://technet.microsoft.com/ja-jp/library/cc770558.aspx

フェールオーバー クラスターを使用して IIS FTP サーバーの高可用性を構成するには、次の手順を実行します。
  • すべてのクラスター ノードに Web サーバーの役割をインストールします。Windows Server 2008 上にインストールする場合は、"FTP サーバー" の役割を含めないでください。Windows Server 2008 R2 上にインストールする場合は、受信トレイの "FTP サーバー" の役割を含めてください。IIS 7 展開ガイドについては、次の Web サイトを参照してください。
    http://technet.microsoft.com/ja-jp/library/cc771752(WS.10).aspx
    Windows Server 2008 上にインストールする場合は、次のいずれかの場所から FTP 7.5 をダウンロードしてインストールします。
  • すべてのクラスター ノードにフェールオーバー クラスタリング機能をインストールしてクラスターを作成します。詳細については、次のマイクロソフト Web サイトを参照してください。
    http://technet.microsoft.com/ja-jp/library/dd197477(WS.10).aspx
  • IIS 共有構成で使用されるファイル共有を設定します。
  • すべてのクラスター ノード上で IIS 共有構成を構成します。
  • すべてのクラスター ノード上で IIS 共有構成のオフライン ファイルを構成します。
  • FTP サイトを構成し、1 つのクラスター ノードの上の FTP サイトのコンテンツの場所を指定します。
  • フェールオーバー クラスタリング内に汎用スクリプトを作成することによって FTP サイトの高可用性を構成します。

IIS 共有構成で使用されるファイル共有を設定する

  1. IIS 共有構成のために使用される共有にアクセスするユーザーを作成します。
  2. ファイル共有を作成します。この共有は、すべてのクラスター ノード上の IIS で共有される IIS 共有構成を格納するために使用されます。次のようないくつかのオプションがあります。
    • フェールオーバー クラスターに含まれていないスタンドアロン サーバー上にファイル共有を作成します。
    • 別の Windows Server フェールオーバー クラスター上に高可用性のファイル共有を作成します。詳細については、次のマイクロソフト Web サイトを参照してください。
      http://technet.microsoft.com/ja-jp/library/cc731844(WS.10).aspx
    • 高可用性 FTP サイトをホストする同じフェールオーバー クラスター上に、高可用性のファイル共有を作成します。詳細については、次のマイクロソフト Web サイトを参照してください。
      http://technet.microsoft.com/ja-jp/library/cc731844(WS.10).aspx
  3. 手順 2. で作成した共有のアクセス許可を設定します。手順 1. で作成したユーザーに、ファイル共有に対するフル コントロールのアクセス許可と NTFS アクセス許可を付与します。
  4. すべてのクラスター ノードがファイル共有を参照できることを確認します。ファイル共有のパスは、\\<fileservername>\<sharename> です。

すべてのクラスター ノード上で IIS 共有構成を構成する

いずれかのクラスター ノードで、共有構成をファイル共有にエクスポートします。
  1. [管理ツール] に移動し、[インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。
  2. 左側のウィンドウで、サーバー名のノードをクリックします。
  3. [共有構成] アイコンをダブルクリックします。
  4. [共有構成] ページの [アクション] ウィンドウ (右側のウィンドウ) で、[構成のエクスポート] をクリックして、ローカル コンピューターから別の場所に構成ファイルをエクスポートします。
  5. [構成のエクスポート] ダイアログ ボックスで、[物理パス] ボックスにファイル共有のパス (\\<fileservernae>\<sharename>) を入力します。
  6. [ユーザー名を指定して接続] をクリックし、共有構成が保存されている共有にアクセスできるユーザー アカウントのユーザー名とパスワードを入力して、[OK] をクリックします。このアカウントは、共有にアクセスするために使用されます。ドメイン管理者ではない制限された Active Directory アカウントを使用する必要があります。
  7. [構成のエクスポート] ダイアログ ボックスで、暗号化キーを保護するために使用するパスワードを入力し、[OK] をクリックします。
  8. [共有構成] ページで、[共有構成の有効化] チェック ボックスをオンにします。
  9. 前に入力した物理パス、ユーザー アカウント、およびパスワードを入力し、[アクション] ウィンドウの [適用] をクリックします。
  10. [暗号化キー パスワード] ダイアログ ボックスで、前に設定した暗号化キーのパスワードを入力し、[OK] をクリックします。
  11. [共有構成] ダイアログ ボックスで [OK] をクリックします。
  12. [OK] をクリックします。
他の各クラスター ノード上で、ファイル共有にエクスポートした共有構成を使用します。
  1. [管理ツール] に移動し、[インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。
  2. サーバー名のノードをクリックします。
  3. [共有構成] アイコンをダブルクリックします。
  4. [共有構成] ページで、[共有構成の有効化] チェック ボックスをオンにします。
  5. 前に入力したファイル共有の物理パス (\\<fileservername>\<sharename>)、ユーザー アカウント、およびパスワードを入力し、[アクション] ウィンドウの [適用] をクリックします。
  6. [暗号化キー パスワード] ダイアログ ボックスで、前に設定した暗号化キーのパスワードを入力し、[OK] をクリックします。
  7. [共有構成] ダイアログ ボックスで [OK] をクリックします。
  8. [OK] をクリックします。
注: IIS での共有構成の設定方法については、以下のマイクロソフト Web サイトを参照してください。
http://learn.iis.net/page.aspx/264/shared-configuration

すべてのクラスター ノード上で IIS 共有構成のオフライン ファイルを構成する

各クラスター ノード上でオフライン ファイルを有効にします。
  1. デスクトップ エクスペリエンス機能をインストールします。これを行うには、以下の手順を実行します。
    1. [管理ツール] に移動し、[サーバー マネージャー] をクリックします。
    2. 左側のウィンドウで [機能] をクリックします。
    3. 右側のウィンドウで [機能の追加] をクリックします。
    4. [デスクトップ エクスペリエンス] チェック ボックスをオンにし、[次へ] をクリックします。
    5. [インストール] をクリックして、デスクトップ エクスペリエンスをインストールします。
    6. コンピューターを再起動します。
  2. コントロール パネルで、[オフライン ファイル] を開きます。
  3. [オフライン ファイルの有効化] をクリックします。この時点ではコンピューターを再起動しないでください。
  4. キャッシュが読み取り専用に設定されていることを確認します。このためには、管理者特権を持つ cmd ウィンドウで次のコマンドを実行します。
    REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f
  5. コンピューターを再起動します。
  6. コンピューターからファイル サーバーを参照します。IIS 共有構成が含まれる共有を右クリックして、[常にオフラインで使用する] をクリックします。

    : IIS ノードをホストしている同じフェールオーバー クラスター上で高可用性を実現するためにファイル共有を設定する場合、操作しているクラスター ノードが高可用性ファイル サーバーをホストしていると、共有を右クリックしたときに [常にオフラインで使用する] オプションが表示されません。高可用性ファイル サーバー アプリケーションを別のノードに移動する必要があります。
  7. コントロール パネルで、[オフライン ファイル] を開きます。[同期センターを開く] をクリックし、[スケジュール] をクリックします。
  8. 毎日または必要な間隔で実行されるようにオフライン ファイルの同期をスケジュールします。数分ごとに実行されるようにオフライン同期を構成することもできます。スケジューラを設定しない場合でも、Applicationhost.config ファイルの内容を変更すると、その変更が Web サーバーに反映されます。
注: IIS での共有構成のオフライン ファイルの構成方法については、次のマイクロソフト Web サイトを参照してください。
http://learn.iis.net/page.aspx/212/offline-files-for-shared-configuration

FTP サイトを構成し、1 つのクラスター ノードの上の FTP サイトのコンテンツの場所を指定する

FTP サイトのコンテンツ ファイルが置かれるクラスター ディスク リソースを所有しているクラスター ノードを見つけます。
  1. [管理ツール] に移動し、[フェールオーバー クラスター マネージャー] をクリックします。
  2. クラスターに接続します。いずれかのクラスター ノード上で操作している場合は、そのクラスターが自動的に一覧に表示されます。
  3. [記憶域] の下で、FTP サイトのコンテンツが置かれるディスクス リソースを見つけます。これを行うには、ディスク リソースの記憶域ツリーを展開します。クラスター上の他の高可用性アプリケーションによってその記憶域が使用されていないことを確認します。この記憶域は [使用可能記憶域] の下に表示されます。
  4. このオンラインになっているリソースが置かれているクラスター ノードをメモします。そのクラスター ノード上で IIS を構成します。
  5. クラスター ディスク リソース名をメモします。このリソースを使用してコンテンツ ファイルを格納します。
オンラインになっているこのリソースが置かれているクラスター ノード上で、FTP サイト コンテンツの共有ディスクを使用するように FTP サーバーを構成します。
  1. [管理ツール] に移動し、[インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。
  2. 左側のウィンドウで、サーバー名のノードを展開します。
  3. [サイト] を展開し、[サイト] を右クリックして、[FTP サイトの追加] をクリックします。
  4. [FTP サイトの追加] ダイアログ ボックスで、サイト名を入力します。コンテンツ ディレクトリに対して、FTP サイトのコンテンツが置かれている場所を入力します。これは、前の手順の手順 5. でメモしたクラスター ディスク リソースの場所です。
  5. 残りの FTP サイトの設定を構成します。
  6. [完了] をクリックします。

フェールオーバー クラスター マネージャーで汎用スクリプトを作成することによって FTP サイトの高可用性を構成する

FTP サイトの高可用性を構成するための最後の手順として、FTP サービスを監視するために使用する汎用スクリプト リソースを作成します。
  1. 各クラスター ノード上で、この資料の最後にあるスクリプトを Windows\System32\inetsrv\Clusftp7.vbs にコピーします。
  2. [管理ツール] に移動し、[フェールオーバー クラスター マネージャー] をクリックします。
  3. クラスターに接続します。いずれかのクラスター ノード上で操作している場合は、そのクラスターが自動的に一覧に表示されます。
  4. クラスターを右クリックし、[サービスまたはアプリケーションの構成] をクリックします。ウィザードによって高可用性ワークロードが作成されます。
  5. [汎用スクリプト] をクリックします。
  6. 次のパスからスクリプト ファイルを選択します。
    %systemroot%\System32\Inetsrv\Clusftp7.vbs
  7. クライアント アクセス ポイント (CAP) 名を、クライアントが高可用性 FTP サイトに接続するために使用する FTP サイト名に設定します。FTP サイトの CAP で使用する静的 IP を指定します。DHCP (Dynamic Host Configuration Protocol) を使用している場合、このオプションは表示されません。
  8. [記憶域の選択] の手順で、FTP サイトのコンテンツ ファイルが置かれるクラスター共有ディスクを選択します。クラスター上の他の高可用性アプリケーションによって使用されていない記憶域を選択する必要があります。IIS 共有構成によって使用されているファイル共有が同じクラスター上でホストされている場合、ここでは別のディスク リソースを使用する必要があります。
  9. 設定を確認した後で、ウィザードによってクラスター グループ、クラスター リソース、およびリソース間の依存関係が作成され、その後でリソースがオンラインになります。
注: 同じフェールオーバー クラスター上で複数の高可用性 FTP サイトをホストするには、上記と同じ手順を実行します。スクリプトをカスタマイズしていない場合は、クラスター上のすべての FTP サイトについて同じスクリプト ファイルを指定できます。しかし、個別の FTP サイトに固有な変更を加えた場合は、各 FTP サイトについて異なるスクリプト ファイルと異なるクラスター化された共有記憶域を使用します。たとえば、%systemroot%\System32\Inetsrv 内で、最初の FTP サイト用に Clusftp7.vbs を、2 番目の FTP サイト用に Clftp7-2.vbs を、3 番目の FTP サイト用に Clftp7-3.vbs を使用し、以下同様にします。各スクリプト ファイルは異なる FTP サイトを監視ます。
'このスクリプトは IIS FTP サイトの高可用性を実現する
'スクリプトの適用対象:
'   - Windows Server 2008:Microsoft FTP Service 7.5 for IIS 7.0 (microsoft.com からダウンロード可能)
'   - Windows Server 2008 R2:標準の FTP サービス

'必要な場合は、より詳細なアプリケーション固有の状態監視ロジックをスクリプトに追加できる


Option Explicit



'ヘルパー スクリプトの機能


'このノード上で FTP サービスを開始する
Function StartFTPSVC()

Dim objWmiProvider
Dim objService
Dim strServiceState
Dim response

'サービスが実行されているかどうかを確認する
set objWmiProvider = GetObject("winmgmts:/root/cimv2")
set objService = objWmiProvider.get("win32_service='ftpsvc'")
strServiceState = objService.state

If ucase(strServiceState) = "RUNNING" Then
StartFTPSVC = True
Else
'サービスが実行されていない場合はサービスの開始を試行する
response = objService.StartService()

'response = 0  or 10 indicates that the request to start was accepted
If ( response <> 0 ) and ( response <> 10 ) Then
StartFTPSVC = False
Else
StartFTPSVC = True
End If
End If
    
End Function



'クラスター リソースのエントリ ポイント。詳細は次のサイトを参照のこと。
'http://msdn.microsoft.com/en-us/library/aa372846(VS.85).aspx

'クラスター リソースの Online エントリ ポイント
'FTP サービスが開始されていることを確認する
Function Online( )

Dim bOnline
'FTP サービスが開始されていることを確認する
bOnline = StartFTPSVC()

If bOnline <> True Then
Resource.LogInformation "The resource failed to come online because ftpsvc could not be started."
Online = False
Exit Function
End If

Online = true 

End Function

 
'クラスター リソースの Offline エントリ ポイント
'オフラインの場合は何もしない
Function Offline( )

Offline = true

End Function


'クラスター リソースの LooksAlive エントリ ポイント
'FTP サービスの状態を確認する
Function LooksAlive( )

Dim objWmiProvider
Dim objService
Dim strServiceState
 
set objWmiProvider = GetObject("winmgmts:/root/cimv2")
set objService = objWmiProvider.get("win32_service='ftpsvc'")
strServiceState = objService.state

if ucase(strServiceState) = "RUNNING" Then
	LooksAlive = True
Else
	LooksAlive = False
End If

End Function


'クラスター リソースの IsAlive エントリ ポイント
'LooksAlive と同様の状態確認を実行する
'LooksAlive よりも詳細な状態確認が必要な場合はここで実行する
Function IsAlive()   

IsAlive = LooksAlive

End Function


'クラスター リソースの Open エントリ ポイント
Function Open()

Open = true

End Function


'クラスター リソースの Close エントリ ポイント
Function Close()

Close = true

End Function


'クラスター リソースの Terminate エントリ ポイント
Function Terminate()

Terminate = true

End Function

プロパティ

文書番号: 974603 - 最終更新日: 2011年9月11日 - リビジョン: 2.0
キーワード:?
kbhowto kbclustering kbexpertiseadvanced kbexpertiseinter kbsurveynew KB974603
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com