SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Archive for 9月 26th, 2009

WSFC のログについて

without comments

WSFC / MSFC のログについて調べたことをまとめてみました。
久しぶりのクラスタ関連の投稿です。

検証環境が 2008 無印のものしか用意できていなかったため Windows Server 2008 SP1 で確認しています。
そろそろ R2 のクラスタ検証環境も構築しておきたいと思います。

WSFC のログ (状態を把握する情報) は以下の種類があります。

  1. イベントビューア
  2. Cluster.log
  3. Event Tracing for Windows (ETW)

まずはイベントビューアのログから。

[イベントビューア]

以下の 2 個所からクラスタ関連のイベントビューアのログを確認することができます。

  1. システムログ
  2. アプリケーションとサービスログ

それぞれのログの表示の仕方は以下の通りです。

システムログ

  1. サーバー マネージャを実行します。
  2. [診断] → [イベント ビューア] → [Windows ログ] → [システム] を開きます。
    image?
  3. WSFC のログのみを表示するにはソースを [FailoverClustering] でログをフィルタリングします。
    フィルタリングは [操作] の [現在のログをフィルタ] で行います。
    image
  4. [フェールオーバー クラスタ管理] の [クラスタ イベント] で表示される内容もイベントビューアと同様の内容のようですね。
    こちらは直近 24 時間以内の内容でフィルタリングされています。
    image?

アプリケーションとサービスログ

  1. サーバー マネージャを実行します。
  2. [診断] → [アプリケーションとサービス ログ] → [Microsoft] → [Windows] → [FailoverClustering] → [Operational] を開きます。
    image

こちらのログはクラスタの操作ログが出力されるようですね。
細かな動作の内容に関しては [Windows ログ] ではなく、こちらのログを確認したほうがよいかと思います。

[Cluster.log]

Windows Server 2003 まではデフォルトで出力されていたログですね。
Windows Server 2008 ではこのログはデフォルトでは出力されていません。

以下のコマンドを実行して、必要に応じて都度出力する必要があります。

cluster log /generate
または
cluster log /g

?

このコマンドを実行すると [Cluster.log] が [C:WindowsClusterReports] に出力されます。
[/node:] オプションを指定しない場合は、クラスタを構成する各ノード上にログが出力されています。

image

このファイルは以前からクラスタを触られている方であれば馴染みのある形式ですよね。
クラスタのログは Tech Center の以下の投稿がとても参考になります。
Cluster Log Level

クラスタのログのレベルは 1 ~ 5 までの 5 段階で設定ができ、デフォルトでは 3 となっています。

Level Error Warning Info Verbose Debug
0 ? ? ? ? ?
1 ? ? ? ?
2 ? ? ?
3 ? ?
4 ?
5

?
以下は [Cluster log] コマンドのヘルプになります。
[/LEVEL] は [0 ~ 10] となっていますが、6 以上は将来の予約値となっているようで現在はまだ使われていないようです。
# R2 になって使用されるようになっているかまではまだ調べられていません。

>cluster log /?
このコマンドの構文は次のとおりです:

CLUSTER [[/CLUSTER:]クラスタ名] LOG <オプション>
<オプション> =
? /G[EN[ERATE]] [/COPY[:"ディレクトリ"]] [/NODE:"ノード名"]
? [/SPAN[MIN[UTE[S]]]:分] ]
? /SIZE:MB 単位のログ サイズ
? /LEVEL:ログ レベル

注意:
? /SIZE は 8 ~ 1024 MB の間である必要があります。
? /LEVEL は 0 ~ 10 の間である必要があります。

CLUSTER LOG /?
CLUSTER LOG /HELP

ログのレベルを変更したいときは、[Cluster log /LEVEL:<レベル>] で変更します。
サイズはデフォルトでは [100 MB] になっていますので変更したい場合は [Cluster log /LEVEL:<サイズ>] で変更します。
現在の設定値を確認したい場合は、[Cluster prop] コマンドで確認することができます。
以下は、コマンドの出力結果です。
[ClusterLogLevel] [ClusterLogSize] が現在の設定値になります。

T? クラスタ???????????? 名前?????????????????????????? 値
— ——————– —————————— ———————–
M? 2008-wsfc-01???????? AdminExtensions
D? 2008-wsfc-01???????? DefaultNetworkRole???????????? 2 (0x2)
S? 2008-wsfc-01???????? Description
B? 2008-wsfc-01???????? Security Descriptor??????????? 01 00 14 80 … (288 バイト)
M? 2008-wsfc-01???????? GroupsAdminExtensions
M? 2008-wsfc-01???????? NetworksAdminExtensions
M? 2008-wsfc-01???????? NetworkInterfacesAdminExtensions
M? 2008-wsfc-01???????? NodesAdminExtensions
M? 2008-wsfc-01???????? ResourcesAdminExtensions
M? 2008-wsfc-01???????? ResourceTypesAdminExtensions
D? 2008-wsfc-01???????? QuorumArbitrationTimeMax?????? 20 (0x14)
D? 2008-wsfc-01???????? QuorumArbitrationTimeMin?????? 7 (0x7)
D? 2008-wsfc-01???????? DisableGroupPreferredOwnerRandomization 0 (0x0)
D? 2008-wsfc-01???????? ClusSvcHangTimeout???????????? 60 (0x3c)
D? 2008-wsfc-01???????? ClusSvcRegroupStageTimeout???? 7 (0x7)
D? 2008-wsfc-01???????? ClusSvcRegroupOpeningTimeout?? 5 (0x5)
D? 2008-wsfc-01???????? ClusSvcRegroupPruningTimeout?? 5 (0x5)
D? 2008-wsfc-01???????? ClusSvcRegroupTickInMilliseconds 300 (0x12c)
D? 2008-wsfc-01???????? HangRecoveryAction???????????? 3 (0x3)
D? 2008-wsfc-01???????? SameSubnetDelay??????????????? 1000 (0x3e8)
D? 2008-wsfc-01???????? CrossSubnetDelay?????????????? 1000 (0x3e8)
D? 2008-wsfc-01???????? SameSubnetThreshold??????????? 5 (0x5)
D? 2008-wsfc-01???????? PlumbAllCrossSubnetRoutes????? 0 (0x0)
D? 2008-wsfc-01???????? CrossSubnetThreshold?????????? 5 (0x5)
D? 2008-wsfc-01???????? BackupInProgress?????????????? 0 (0x0)
D? 2008-wsfc-01???????? RequestReplyTimeout??????????? 60 (0x3c)
D? 2008-wsfc-01???????? WitnessRestartInterval???????? 15 (0xf)
D? 2008-wsfc-01???????? SecurityLevel????????????????? 1 (0x1)
D? 2008-wsfc-01???????? ClusterLogLevel??????????????? 3 (0x3)
D? 2008-wsfc-01???????? ClusterLogSize???????????????? 100 (0x64)
D? 2008-wsfc-01???????? WitnessDatabaseWriteTimeout??? 300 (0x12c)

[Cluster.log] はコマンドの実行の都度、生成されますがその情報は Event Tracing for Windows (ETW) で出力された
情報がベースになっているようです。

[Cluster log /g] コマンドを実行すると、[CPrepSrv.exe] が [C:WindowsSystem32winevtLogs] ディレクトリにある、
[ClusterLog.etl.001] [ClusterLog.etl.002] [ClusterLog.etl.003] を読み込み、[Cluster.log] を生成しています。

image

[Event Tracing for Windows (ETW) ]

最後に ETW のログです。

ETW は Event Tracing for Windows の略で、OS で提供されている汎用トレース機能になります。
この機能により、クラスタの状態が ETL ファイルに出力がされています。
ETW は OS の内部状態を確認するために使用することがあるようなのですが、私は全然詳しくありません・・・。
IT Pro 向けの ETW / XPerf 関連の情報を集めたいなと思っているのですが手付かずです。

ETW によりデバッグおよびパフォーマンス調整を改善する

クラスタの ETW はイベントトレースセッションで自動的に実行されるようになっています。

イベントトレースセッションの設定は以下から確認することができます。

  1. サーバー マネージャを実行します。
  2. [診断] → [信頼性とパフォーマンス] → [データ コレクタ セット] → [イベント トレース セッション] を開きます。

image?

[FailoverClustering] がクラスタのイベントトレースセッションの設定になります。

自動的に実行されているのは [スタートアップ イベント トレース] で [FailoverClustering] が [自動] で設定されているからのようですね。

image

この機能で出力されているのが、[Cluster.log] のベースになっている、[C:WindowsSystem32winevtLogs] に出力さている、
[ClusterLog.etl.xxx] ファイルになります。

このファイルを直接開いて内容を確認することはできないのですが、[tracerpt] というコマンドを使用すると、CSV や XML で
出力することができます。
以下はコマンドの例になります。

tracerpt ClusterLog.etl.001 ClusterLog.etl.002 ClusterLog.etl.003 -o log.txt ?of CSV
tracerpt ClusterLog.etl.001 ClusterLog.etl.002 ClusterLog.etl.003 -of XML

クラスタの場合は ETW を開くより、cluster.log にして開くことのほうが多いと思いますので、使用する機会は
多くないかも知れないですね。

ETL ファイルですので、xperf や xperfview で開くことも可能です。
xperf / xpwerfview は以下のリンクから WPT Kit をダウンロードすることで入手可能です。

Windows Performance Analysis

パフォーマンス系の情報が入っていないからなのか、開いても寂しい表示ですが。

image?

以上が、クラスタのログになります。
クラスタで障害が発生した場合は、これらのログを使用して状況を把握していくことになります。
ETW は Cluster.log で確認ができるので、実際にはイベントビューアと cluster.log の 2 種類を使用することになりますね。

この記事はずっと下書きに入っていたのですが、ようやく投稿まで持っていくことができました。

Written by Masayuki.Ozawa

9月 26th, 2009 at 3:19 pm

Posted in MSCS/WSFC(MSFC)

ISA でリバプロ ? HTTPS 編 ? その 2

without comments

HTTPS で ISA を公開するための手順の続きです。

[Web リスナ の作成? (SSL) ]

作成の手順は証明書関連を除くと HTTP のときとほとんど同じです。
同じ箇所は画像は省略して手順を記載しています。

  1. [スタート] → [すべてのプログラム] → [Microsoft ISA Server] から [ISA Server の管理] を開きます。
  2. [ファイアウォール ポリシー] を選択し、[ツールボックス] → [ネットワーク オブジェクト] → [Web リスナ]
    → [右クリック] → [新しい Web リスナ] をクリックします。
  3. 任意の [Web リスナ名] を入力し、 [次へ] をクリックします。
  4. [クライアントとの SSL セキュリティ保護接続を必要とする] を選択し、[次へ] をクリックします。
    image
  5. 外部からの要求を受け付ける IP アドレスが指定されているネットワークを選択し、[次へ] をクリックします。
  6. ネットワークに複数の IP を割り当てている場合は IP 単位で証明書を設定できるようです。
    今回は単一の IP を割り当てていますので、[この Web リスナに 1 つの証明書を使う] を選択し、[証明書の選択] を
    クリックします。
    image
  7. 証明書の設定が完了していると、サイト用の証明書が選択できるようになっています。
    使用する証明書を選択し、[選択] をクリックし、[次へ] をクリックします。
    image
  8. [クライアントが ISA Server に~] は [認証なし] を選択し、[次へ] をクリックします。
  9. [次へ] をクリックします。
  10. [完了] をクリックします。

これで SSL を使用するリスナーの作成は終了です。
あとは HTTP のときと同様にこのリスナーを使用するポリシーを作成します。

[ファイアウォール ポリシーの作成]

こちらも HTTP のときと同じ箇所の画像は省略で。

  1. [タスク] → [Web サイトの公開] をクリックします。
  2. 任煮の [公開ルール名] を入力し、[次へ] をクリックします。
  3. [許可] を選択し、[次へ] をクリックします。
  4. [1 つの Web サイトまたは付加分散装置を公開する] を選択し、[次へ] をクリックします。
  5. 今回は Web サーバー側も SSL を適用したサイトで作成しているのでこちらの設定を使用しています。
    [公開された Web サーバーまたはサーバー ファームへの接続に SSL を使用する] を選択し、[次へ] をクリックします。
    クライアント ←→ ISA 間は SSL で保護されているので、 ISA ←→ Web サーバー間は SSL を使用しないという
    考え方もあるかも知れません。
    その場合は下のラジオボタンを選択します。
    今まで、SSL のサイト展開をした経験がないのでわからないのですが、一般的にはどちらが多いんでしょう??
    image
  6. [内部サイト名] と、必要に応じて [コンピュータ名または IP アドレス~] を有効にして、入力を行い [次へ] をクリックします。
  7. [内部公開の詳細] はデフォルトのままで [次へ] をクリックします。
  8. [パブリック名] に外部公開のドメイン名を入力し、[次へ] をクリックします。
  9. [Web リスナ] に作成した SSL 用のリスナ名を選択し、[次へ] をクリックします。
    image
  10. 認証方式は、[委任できません。クライアントは直接認証できません] を選択し、[次へ] をクリックします。
    作成したルールを RD ゲートウェイで使用する場合は、ゲートウェイ側と ISA 側の設定にもよるかも知れませんが、
    [委任できません。クライアントは直接認証できます] に設定しないと RD ゲートウェイへの接続時に認証ダイアログに
    ユーザー情報を指定してもログインできないことがあります。
    # 設定を [クライアントは直接認証できます] にしてもユーザー名にはきちんとドメイン名を入力しないと
      接続できませんでした。
    RD ゲートウェイには SSL ブリッジという機能があるんですね~。いままで気づきませんでした。
    image
  11. [次へ] をクリックします。
  12. [完了] をクリックします。
  13. [適用] をクリックして、今までの設定を反映させます。

これで HTTPS 経由でのリバースプロキシとして使用することが可能です。

ISA のプロキシ機能がうまく使えると検証環境を柔軟に構成変更できる環境にできそうです。

Written by Masayuki.Ozawa

9月 26th, 2009 at 12:59 pm

Posted in ISA