2013年9月12日木曜日

IISコマンド: adsutil (IISの設定変更・参照)



対象OS
Windows2003(IIS6)


概要

IISの構成を操作するためのコマンド。CScriptを使って実行する
「インターネット インフォメーション サービス(IIS) マネージャ」画面を使って設定している箇所と
GUIに出てこない設定を参照したり、設定することができる。


なお、GUI操作で[OK]や[適用]ボタンを押した画面によって、デフォルト値が表示される/されないなどが起こる。
デフォルトなので、気にしなくても良いのだが、定義を出力して設定の差異を確認したり、
エビデンスを残すなどの場合は面倒。(台数が多いと余計に。。。)

構文


adsutil コマンド <パス> [<パラメータ>...]


コマンド

adsutil に渡すコマンドは以下である。


コマンド 説明
GET 選択されたパラメータを表示
SET 新しい値を割り当て
ENUM 指定パスのパラメータの列挙(/P パスのみ列挙 | /A 全てを列挙 )
ENUM_ALL すべてのパラメータを列挙(/P パスのみ列挙 | /A 全てを列挙 )
DELETE パスまたはパラメータを削除
CREATE パスを作成し、そのパスに KeyType を割り当て
APPCREATEINPROC インプロセス アプリケーションを作成
APPCREATEOUTPROC アウトプロセス アプリケーションを作成
APPDELETE 既存のアプリケーションを削除
APPUNLOAD アウトプロセス アプリケーションをアンロード
APPGETSTATUS アプリケーションのステータスを取得
FIND パラメータが設定されているパスを検索
START_SERVER Webサイトの起動
STOP_SERVER Webサイトの停止
PAUSE_SERVER Web サイトを一時停止
CONTINUE_SERVER Web サイトの一時停止を解除
HELP ヘルプの表示



パス

パスとして指定する

/IISADMIN
/Logging
/MimeMap
/W3SVC
/W3SVC/1
/W3SVC/1/ROOT
/W3SVC/1/ROOT/test
/W3SVC/Filters
/W3SVC/Info
/W3SVC/AppPools


KeyType(IISメタベースのプロパティ)

簡単に言うと個々の設定値。たくさんあるので、別ページ参照

大別すると以下
 ・アプリケーションレベルのプロパティ
 ・プロセスレベルのプロパティ
 ・アプリケーションプールのプロパティ


使用例


1.全体の設定確認

C:\Inetpub\AdminScripts> cscript adsutil.vbs enum_all


KeyType : (STRING) "IIsComputer"
MaxBandwidth : (INTEGER) 4294967295
EnableHistory : (INTEGER) 1
MaxHistoryFiles : (INTEGER) 10
EnableEditWhileRunning : (INTEGER) 0

[/IISADMIN]
[/IISADMIN/EXTENSIONS]
[/IISADMIN/EXTENSIONS/DCOMCLSIDS]

~省略~


2.アプリケーションプールの設定確認

C:\Inetpub\AdminScripts> cscript adsutil.vbs enum w3svc/AppPools

KeyType : (STRING) "IIsApplicationPools"
PeriodicRestartTime : (INTEGER) 1740
PeriodicRestartRequests :(INTEGER) 0
MaxProcesses : (INTEGER) 1
PingingEnabled : (BOOLEAN) True
IdleTimeout : (INTEGER) 20
RapidFailProtection : (BOOLEAN) True
SMPAffinitized : (BOOLEAN) False
SMPProcessorAffinityMask :(INTEGER) 4294967295
StartupTimeLimit : (INTEGER) 90
ShutdownTimeLimit : (INTEGER) 90
PingInterval : (INTEGER) 30
PingResponseTime : (INTEGER) 90
DisallowOverlappingRotation : (BOOLEAN) False
DisallowRotationOnConfigChange : (BOOLEAN) False
OrphanWorkerProcess : (BOOLEAN) False
AppPoolQueueLength : (INTEGER) 1000
CPULimit : (INTEGER) 0
CPUResetInterval : (INTEGER) 5
AppPoolIdentityType : (INTEGER) 2
PeriodicRestartMemory : (INTEGER) 0
PeriodicRestartPrivateMemory : (INTEGER) 0
RapidFailProtectionInterval : (INTEGER) 5
RapidFailProtectionMaxCrashes : (INTEGER) 5
LoadBalancerCapabilities : (INTEGER) 2
LogEventOnRecycle : (INTEGER) 137
AppPoolRecycleTime : (BOOLEAN) True
AppPoolRecycleRequests : (BOOLEAN) False
AppPoolRecycleSchedule : (BOOLEAN) False
AppPoolRecycleMemory : (BOOLEAN) True
AppPoolRecycleIsapiUnhealthy : (BOOLEAN) False
AppPoolRecycleOnDemand : (BOOLEAN) False
AppPoolRecycleConfigChange : (BOOLEAN) False
AppPoolRecyclePrivateMemory : (BOOLEAN) True

[/w3svc/AppPools/DefaultAppPool]
[/w3svc/AppPools/test]
[/w3svc/AppPools/test1]




2.追加したアプリケーションプールの設定確認(「test」として追加している場合)

C:\Inetpub\AdminScripts> cscript adsutil.vbs enum w3svc/AppPools/test

KeyType : (STRING) "IIsApplicationPool"
AppPoolCommand : (INTEGER) 1
AppPoolState : (INTEGER) 2
AppPoolAutoStart : (BOOLEAN) True
Win32Error : (INTEGER) 0



3.WEBサイトの設定確認

C:\Inetpub\AdminScripts> cscript adsutil.vbs enum  W3SVC/1

KeyType : (STRING) "IIsWebServer"
ServerState : (INTEGER) 2
ServerComment : (STRING) "WEBSERVER"
ServerSize : (INTEGER) 1
ServerBindings : (LIST) (1 Items)
 ":80:"




DefaultDoc : (STRING) "Default.htm,Default.asp,index.htm,iisstart.htm,Default.aspx"
Win32Error : (INTEGER) 0
AppPoolId : (STRING) "DefaultAppPool"

[/W3SVC/1/Filters]
[/W3SVC/1/IIsCertMapper]
[/W3SVC/1/ROOT]



4.メモリのリサイクル設定
 最大使用メモリが1GBを越えたらリサイクルする設定を追加

C:\Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/apppools/test/PeriodicRestartPrivateMemory 1024000

PeriodicRestartPrivateMemory : (INTEGER) 1024000



5.リサイクル時にイベントログに記録する設定

C:\Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/AppPools/test/AppPoolRecyclePrivateMemory true

AppPoolRecyclePrivateMemory : (BOOLEAN) True


0 件のコメント:

コメントを投稿