IIS 7 のプロビジョニング オプション

公開日: 2007 年 12 月 22 日 (作業者: iisteam (英語))

更新日: 2007 年 12 月 22 日 (作業者: iisteam (英語))

オプション表

Web サイトはさまざまな方法で作成、管理できます。次の表は、現在実行可能な選択肢について、その長所および短所を一覧にしたものです。

プロビジョニングの方法

説明

長所

短所

ユーザー インターフェイス (UI)

/リモート委任

IIS 付属の管理ユーザー インターフェイスである IIS マネージャーを使用すると、applicationhost.config の最も一般的なプロパティを構成することができます。サービス、サイト、または仮想ディレクトリのプロパティ シートを開き、値を変更します。変更は即座に反映されるため、サーバーを停止したり起動したりする必要はありません。

 

サイトや仮想ディレクトリを作成したり、複数のプロパティを持つ機能を構成する場合は、IIS マネージャー ユーザー インターフェイスを使って、サポートされているプロパティをすべて設定できます。

設定した値が無効な場合は、IIS マネージャーがその旨を知らせてくれます。

大規模な IIS サーバー構成や、複数のサーバーをインターネット経由で管理するのは煩雑で、時間もかかります。

ユーザー インターフェイスからすべての構成プロパティを設定できる訳ではありません。

テキスト エディター

メモ帳のようなテキスト エディターを使用すると、IIS が実行中でも applicationhost.config ファイルを直接編集できます。入力は大文字と小文字を区別します。

 

複数のプロパティ シートを開いたり閉じたりせずに、単一インスタンスの複数のプロパティを変更したり、新しいノードを作成したりできます。

IIS が稼働している状態で編集を行うと、IIS サーバーで障害が発生する可能性が高くなります。編集した内容が正しい XML 形式で記述されていないと、IIS は applicationhost.config を読み取ることができず、直近の履歴ファイルが復元されてしまいます。また、編集内容にスキーマで定義された規則に反する無効な構成が含まれていると、イベント ビューアーにエラーが記録されますが、その他の構成は正しく実行されます。

applicationhost.config の一部を切り取って貼り付ける場合、プロパティの継承を考慮する必要があります。貼り付けたセクションが親ノードからプロパティを継承し、そのプロパティを子ノードに反映してしまう可能性があります。

IIS が稼働中にネットワーク経由で編集を行っている間に接続が切断すると、applicationhost.config が無効になる可能性があります。

Web ファームを構成する複数のサーバー上で IIS が稼働している状態で編集を行うと、ユーザー インターフェイスを使用するのと同じくらい長い時間がかかります。

AppCmd.exe

コマンド ライン ツールを使用すると、IIS サーバーの構成をすばやく変更できます。

このツールは、ごく一般的な管理タスクを実行するソリューションとして開発されました。

?

Active Directory サービス インターフェイス (ADSI)

ADSI を使用すると、スクリプトやコンパイルしたプログラムから IIS を構成できます。変更は即座に反映されるため、サーバーを停止したり起動したりする必要はありません。

 

ADSI を使用すると、大規模なサイトや複数のサーバーを迅速かつ効率的に構成できます。

ADSI はスクリプト処理が可能です。IIS 4.0、IIS 5.0、IIS 5.1、IIS 6.0 を構成できます。存在しないオブジェクトおよびプロパティの処理を行うエラー チェックを使用すれば、IIS 6.0 互換モードが有効な IIS 7.0 も構成することができます。

ADSI を使用して IIS スキーマを拡張することもできますが、この方法は推奨されません。

サイトや仮想ディレクトリを作成する場合、または他のプロパティに依存するプロパティを使用する場合、どのようなプロパティを作成し、設定する必要があるか確認する必要があります。

IIS 6 互換モードが有効な IIS 7 でのみ使用できます。

 

使用方法が複雑です。

Windows Management Instrumentation (WMI)

WMI を使用すると、スクリプトやコンパイルしたプログラムで IIS を構成できます。変更は即座に反映されるため、サーバーを停止したり起動したりする必要はありません。

 

WMI を使用すると、大規模なサイトや複数のサーバーを迅速かつ効率的に構成できます。

WMI はスクリプト処理が可能です。

サイトや仮想ディレクトリを作成する場合、または他のプロパティに依存するプロパティを使用する場合、どのようなプロパティを作成し、設定する必要があるか確認する必要があります。

 

使用方法が複雑です。

Admin Base オブジェクト (ABO)

ABO を使用すると、C、C++、Visual Basic 6.0 で記述してコンパイルしたプログラムで IIS を構成できます。

 

ABO のラッパーである ADSI や WMI を使用するよりも時間がかかりません。

サイトや仮想ディレクトリを作成する場合、または他のプロパティに依存するプロパティを使用する場合、どのようなプロパティを作成し、設定する必要があるか確認する必要があります。

ABO のスクリプトを作成することはできません。ABO アプリケーションは、C++ または Visual Basic 6.0 のいずれかで記述します。

IIS の最下位レベルにアクセスする ABO は、複数行のコードを 1 つのメソッド呼び出しに圧縮する方法がないため、ADSI や WMI よりも使用方法が複雑です。また、無効な設定を構成してしまうことを防ぐ保護機能もありません。

 

IIS 7 では使用できません。

マネージ API:

Microsoft.Web.Administration のマネージ API を使用すると、すべての .net アプリケーションで、プログラムから IIS を構成できます。

大規模なサイトや複数のサーバーを迅速かつ効率的に構成できます。

 

マネージ API は RPC を使用したリモート処理が可能で、処理速度は最も高速です。

 

MWA は、62 秒間で 100,000 個のサイトを作成できます (1,600 サイト/秒)。

Windows プラットフォームでのみ使用可能です。オブジェクトの多くは、強く型付けされたオブジェクトとして公開されていないため、一定のオブジェクトやプロパティを構成できる下位レベルの API を使用する必要があります。

 

リモート サーバーの構成には RPC が必要です。

OLE オートメーション:

OLE オートメーション ProgId=Microsoft.ApplicationHost.WritableAdminManager は、Jscript または VBScript から使用できます。

大規模なサイトや複数のサーバーを迅速かつ効率的に構成できます。

 

処理速度は MWA よりもわずかに速く、リモート処理が可能です。

一部のオブジェクトやプロパティを構成できる下位 API を使用する必要があります。

 

リモート サーバーの構成には RPC が必要です。