SE の雑記

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

Windows Server 2008 で crcdisk.sys の読み込みで停止してしまう

leave a comment

かなり前の機種のサーバーに Windows Server 2008 を P2P で移行していたところ、
crcdisk.sys の読み込みで停止してしまうという現象が発生してしまいました。
# セーフモードで起動し、ファイルのロード状況を眺めていたところ crcdisk.sys で
 停止していました。

マザーボードの電池が消耗していたため、BIOS の日付がクリアされていたことが
原因のようでした…。

電源を外すと BIOS の日付が 00/00/00 になってしまったので、作業をしていた日の
日付に修正したところ正常に起動しました。

試しに再度、電源ケーブルを抜き日付をクリアしたところ現象が再現できました。

今まで事象に当たっていなかったため知らなかったのですが [crcdisk.sys] で
停止する現象は結構有名みたいですね。

日付以外にも様々なことが起因して起動しなくなることがあるようですね。
とても勉強になりました。

2009/9/28 追記

Hyper-V のゲスト OS で [crcdisk.sys] の読み込みで止まってしまう現象が発生し、どうしようかと悩んでいたところ、
とりあえず VHD をマウントして、起動する Windows Server 2008?の [crcdisk.sys] を [C:windowssystem32drivers] に
コピーしたらなんとか起動しました。
BIOS で AHCI から IDE にディスク接続を変更し起動後戻したり、AHCI のディスクだけにして起動するという方法で、
解決することもあるようですが、ゲスト OS で現象が発生すると困りますね…。

Written by Masayuki.Ozawa

6月 19th, 2009 at 9:57 am

Posted in Windows Server

Active Directory のスキーマのバージョン確認

leave a comment

新しいバージョンの AD を追加 / 一部のアプリケーション (Exchange 等) をインストールする場合には
AD のスキーマ拡張が必要となります。

スキーマのバージョン確認基本的な作業は以下の KB に記載されているとおりです。

Active Directory インストール ウィザードの実行時にエラー メッセージ "ソース フォレストの Active Directory スキーマのバージョンはこのコンピュータの Active Directory のバージョンと互換性がありません" が表示される

以下の手順で確認可能です。

[確認手順]

  1. [adsiedit.msc] を起動します。
  2. [CN=Schema,CN=Configuration,DC=<ドメイン名>] を右クリックし、プロパティをクリックします。
    image
  3. [objectVersion] の値を確認します。
    image

以下が [objectVersion] と OS の対応表になります。

objectVersion OS
13 Windows 2000 Server
30 Windows Server 2003
31 Windows Server 2003 R2
44 Windows Server 2008

今のところ Windows Server 2008 R2 のスキーマバージョンは [47] となっているようですね。
Sch47.ldf

スキーマ拡張をした際に、各ドメインコントローラでスキーマ拡張が反映されているかを確認する場合は
この値を確認するのが良さそうです。

Written by Masayuki.Ozawa

6月 18th, 2009 at 1:22 pm

Posted in Active Directory

Active Directory のレプリケーションを一時的に停止する方法

leave a comment

今月は SQL Server の投稿を増そう月間にするつもりだったのですが業務都合上そうもいかず、
当初の予定とは異なり AD のメモを増やさなくてはいけなさそうです…。

AD ではサイト間、サイト内にオブジェクトを伝搬するためにレプリケーションが行われていますが、
OCS や Exchange の導入時にスキーマ拡張やドメインのオブジェクト準備をするときに特定の
ドメインコントローラーから出力方向 (変更を他のドメインコントローラーに伝搬) のrレプリケーションを
一時的に無効化したいこともあるかと思います。
# DNS を AD 統合にして自サーバー内に持っているのであればネットワークケーブルを抜いて
 代わりにループバックコネクタをつけておけばよいのかもしれませんが…。

repadmin コマンドでオプションを設定すると一時的にレプリケーションを無効にすることができます。
Windows Server 2003 まではこのコマンドはサポートツールに含まれていますので、設定する場合は
OS のメディアまたはサービスパックのメディアからインストールする必要があります。
Windows Server 2008 には AD の役割を追加すると自動でインストールされます。
# 2008 には replmon / netdiag は含まれていないようですが。

出力方向のレプリケーションを停止

repadmin /options <DC 名> +DISABLE_OUTBOUND_REPL

出力力方向ですので対象のドメインコントローラで変更した内容のレプリケーションを
ブロックする設定になります。
# 変更内容尾を伝搬させない。

入力方向のレプリケーションを停止

repadmin /options <DC 名> +DISABLE_INBOUND_REPL

入力方向ですので他のドメインコントローラの変更を取り込まない設定になります。

出力方向のレプリケーションを開始

repadmin /options <DC 名> -DISABLE_OUTBOUND_REPL

?

入力方向のレプリケーションを開始

repadmin /options <DC 名> -DISABLE_INBOUND_REPL

?

2003-AD-01 というドメインコントローラーで入力 / 出力のレプリケーションを停止する場合は
以下のようなコマンドとなります。

repadmin /options 2003-ad-01 +DISABLE_OUTBOUND_REPL
repadmin /options 2003-ad-01 +DISABLE_INBOUND_REPL

?

この状態で [repadmin /showreps] コマンでレプリケーションの状態を確認すると以下のような表示となります。
# 2003-AD-01 のレプリケーションパートナーである 2003-AD-02 のレプリケーショントポロジーを表示しています。

>repadmin /showreps 2003-ad-02
Root-Domain-Site2003-AD-02
DC Options: IS_GC
Site Options: (none)
DC object GUID: 3e5f87fa-f72d-4d0d-b09f-aee1304d3b3f
DC invocationID: d48f468f-2b08-489c-9b7f-7036cf593874

==== INBOUND NEIGHBORS ======================================

DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:49:27 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 7 consecutive failure(s).
??????? Last success @ 2009-06-17 13:43:12.

CN=Configuration,DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:47:07 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 2 consecutive failure(s).
??????? Last success @ 2009-06-17 13:42:48.

CN=Schema,CN=Configuration,DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:47:07 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 2 consecutive failure(s).
??????? Last success @ 2009-06-17 13:40:54.

DC=jp,DC=domain,DC=local
??? Root-Domain-Site2003-AD-01 via RPC
??????? DC object GUID: b7bc0b57-eed7-4168-935f-ee3904526c70
??????? Last attempt @ 2009-06-17 13:47:07 failed, result 8456 (0x2108):
??????????? ソース サーバーは現在、レプリケーション要求を拒否しています。
??????? 2 consecutive failure(s).
??????? Last success @ 2009-06-17 13:43:23.

?
2003-AD-01 でレプリケーションが拒否されていることが確認できます。
# 停止してからレプリケーションのパートナー側で停止されていると認識されるまで少し時間がかかりました。
 実運用で停止する場合は小出しに showreps を実行して停止しているかを確認したほうがよいかも。
 上記、実行結果のように全パーティションでレプリケーション要求を拒否することはできます。

入力と出力の関係によっては以下のメッセージが表示されることも。

宛先サーバーは現在、レプリケーション要求を拒否しています。

レプリケーションが停止しているドメインコントローラーはサポートツールの [replmon.exe] では
以下の画像のように表示されます。

image

[Active Directory サイトとサービス] で複製をしようとすると以下の警告となります。

image

ドメインコントローラーで今、どのようなオプションが設定されているかは以下のコマンドで確認可能です。

repadmin /showreps <DC 名>

実行すると以下のような結果
が表示されます。

>repadmin /options 2003-ad-01
Current DC Options: IS_GC DISABLE_INBOUND_REPL DISABLE_OUTBOUND_REPL

レプリケーションの停止の仕方をよく忘れてしまうのでメモとして残しておきたいと思います。

Written by Masayuki.Ozawa

6月 17th, 2009 at 5:01 am

Posted in Active Directory

Active Directory の Tombstone の設定値について

leave a comment

AD を専門にされている方は周知のことかと思いますが、私はよく忘れてしまうのでメモ。

AD のバックアップには Tombstone 期間が設定されており、この期間を過ぎると適切な
バックアップとしてみなされなくなります。
# 実際に期間を過ぎて戻したことはないので戻そうとするとどうなるかは後で調べなくては…。
  以前、情報を見た記憶があるのですがすっかり忘れています。

Windows Server 2003 SP1 以前ではこの期間は [60 日] として設定されています。
Windows Server 2003 SP1 以降では [180 日] として設定されています。

ただし、この設定は Windows Server 2003 SP1 以降をインストールした際に自動的に
変更されるのではなく、1 台めのドメインコントローラを 2003 SP1 以降で構築した場合に
180 日で設定されています。

また、この設定はエンタープライズの構成情報 (AD の構成パーティション) に含まれているため、
フォレスト内で共通の設定となっています。

新規にフォレストを構築した場合は、初期導入したドメインコントローラのバージョンに依存しますので
設定値はわかりやすいと思いますが、企業で使用しているドメインコントローラは

  • NT ドメイン
  • Windows 2000 Server AD ドメイン
  • Windows Server 2003 AD ドメイン
  • Windows Server 2008 AD ドメイン

と、段階的にアップグレードしていることが多そうですので運用担当者が固定化されていないと
実際の設定値がわからないこともあるかと。
# ADMT でマイグレーションする場合と、アップグレードする場合はどちらが多いんでしょね??

以下の KB にどこを確認すればよいか掲載されています。
Active Directory のシステム状態のバックアップの有効期間について..

[ldp.exe] または [adsiedit.msc] で以下のコンテナを開くと確認できます。
# Windows Server 2008 では標準でインストールされていますが、それ以前のバージョンでは
  サポートツールをインストールする必要があります。

  • [CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=ドメイン名]
    • [tombstoneLifeTime]? の値を確認

LDP.EXE

image

ADSIEDIT.MSC

image

ldp で検索する場合は以下のような検索条件で。
Filter と Options の Attributes を設定しています。

image?
image

上記の画像は Windows Server 2003 のサポートツールを使用しているため UI が英語表記ですが、
Windows Server 2008 になると UI が日本語化されています。

Written by Masayuki.Ozawa

6月 14th, 2009 at 11:19 pm

Posted in Active Directory

Active Directory に別環境の Windows DNS サーバーを設定

leave a comment

直近の案件は AD がらみになりそうなのでいろいろとメモを残していきたいと思います。

検証環境を構築する場合、AD と DSN を同居させるのが一番手間がかからずに楽です。
しかし、実運用環境になると同居させずに AD と DNS を別にすることが多いかと。

Windowsで DNS サーバーを用意して、AD の参照先 DNS として指定しただけでは
[dcpromo] 実行時に
[このコンピュータが使用する DNS サーバーでタイムアウト期間内に応答したものがありませんでした。]
となり、DNS に必要なレコードを登録することができません。

image

DNS サーバーで以下の手順で事前にリソースレコードを登録しておく必要があります。
(以下の手順は domain.local という ドメインを作成する際の DNS の登録内容です)

  1. 前方参照ゾーンの新しいゾーンを作成します。
    image
  2. [次へ] をクリックします。
  3. [プライマリ ゾーン] を選択し、[次へ] をクリックします。
    image
  4. ゾーン名に作成するドメイン名を入力し、[次へ] をクリックします。
    image
  5. [次の名前で新しくファイルを作成する] を選択し、[次へ] をクリックします。
    image
  6. [非セキュリティ保護およびセキュリティ保護の両方による動的更新を許可する] を選択し、[次へ] をクリックします。
    この設定により DNS の動的更新が可能となります。
    image
  7. [完了] をクリックします。

これでドメイン用のゾーンが作成されます。

image

この状態で dcpromot の [DNS の登録の診断] を実行してもまだ DNS 登録のエラーが発生します。
最低でも以下の作業を実施する必要があります。

  1. A レコードの追加
  2. SOA レコードの修正

?

[A レコードの追加]

  1. 作成したゾーンを右クリックして [新しいホスト] をクリックします。
    image
  2. DNS サーバーの名前と IP アドレスを入力し、[ホストの追加] をクリックします。
    image
  3. [OK] をクリックします。
    image

[SOA レコードの修正]

  1. SOA レコードを右クリックして、[プロパティ] をクリックします。
    image
  2. プライマリサーバーには DNS サーバー名のみが設定されているので FQDN に変更し、[OK] をクリックします。
    image

以上で DNS の設定は完了です。

再度 [DNS の登録の診断] を実行すると正常に診断が完了します。

image

これで dcpromo が終了後、AD が再起動すると DNS に AD に必要なレコードが登録されます。
# netlogon サービスが実行されることにより、DNS に動的更新がされます。

image

忘れなようにメモ書きとして残しておきたいと思います。

2009/06/27 追記

NS レコードも FQDN の形式に修正してあげないとだめですね。
NS レコードが FQDN になっていないと親ドメインでスタブゾーンとして子ドメインの DNS ゾーンを
設定しても名前解決ができないです。
親ドメインの DNS に委任で子ドメインのドメインを設定する場合は問題ないのですが。

Written by Masayuki.Ozawa

6月 13th, 2009 at 10:19 am

Posted in Active Directory

SQL Server 2008 のクラスタ環境でワークステーションコンポーネントをインストール

leave a comment

目下、Windows Server 2008 + SQL Server 2008 のクラスタ環境構築の検証中です。

SQL Server 2005 までは Microsoft 分散トランザクション コーディネータ (MSDTC) のクラスタリソースを
登録していない状態で、ワークステーションコンポーネントをインストールしようとすると、インストーラーを
実行しているのとは違うノードでワークステーションコンポーネントがインストールされるタイミングでエラーが
発生していた気がします。

SQL Server 2008 のクラスタ環境を構築する時に、MSDTC のクラスタリソースを登録していない状態で
ノード追加をするとどのような動きになるか気になったので試してみました。

結果は、MSDTC がインストールされていなくても正常にインストールすることができました。

以前のバージョンでは、一度のインストールで複数ノードを含めてインストールすることができたので、
その中で MSDTC が使われていたのでしょうか??

SQL Server 2008 ではインストール時は 1 ノードでインストールして、最初のノードのインストール終了後に
2 ノード目以降を追加する形になっていたので、ここら辺の方法の違いが影響しているのでしょうか。

MSDTC のリソース配置方法も含めていろいろと確認したい内容がありそうです。

Written by Masayuki.Ozawa

6月 10th, 2009 at 11:33 pm

Posted in SQL Server

[Web サーバー立ち上げ体験日記]SP2 を適用

leave a comment

自宅の他のサーバーには TechNet/MSDN に SP2 が公開されたタイミングでダウンロードして適用していたのですが
Web サーバー導入キットでモニターしているサーバーには適用していないことに週末気づきました…。

ということで土曜日にインストールしてみました。

今のところ問題もなく Web サイトも順調に動作しています。

適用中はルーターの設定を変更して一時的に別サーバーで Web サイトを動作するようにし、404 ページで
メンテナンス中のお知らせを表示するように設定変更しては見たのですが、メンテナンスの運用手順を
自分なりに整理しておく必要があるな~と感じました。

メンテナンス中のお知らせページも IIS 7 の Welcome ページに一文追加した味気ないものを
表示していただけですので、時間がある時に少しメンテナンスしたいです。

Written by Masayuki.Ozawa

6月 7th, 2009 at 3:23 pm

SCVMM 2008 R2 RC をインストール

leave a comment

ひとまずインストールしてみました。

Beta 版からアップグレードすることはできないため、Beta 版をインストールしている場合は
一度アンインストールしてからインストールする必要があります。

Beta 版ではイメージファイルの共有部分の注釈が文字化けしていたのですが RC では文字化けせずに
表示されていました。

image

イメージファイルの共有ですが Hyper-V でも制約付きの代理が構成されている場合は使用できるというように
記述が変更されたようです。

image

リンク先を見たところ、コンピュータアカウントと Authenticated Users に読み取り権限を付与すれば
良さそうな感じでしたが私の環境ではこの設定では共有を使用することができませんでしたので
今も CIFS の委任を設定してイメージの共有を使用しています。

Written by Masayuki.Ozawa

6月 7th, 2009 at 2:54 pm

Posted in System Center

SCVMM 2008 R2 RC のダウンロードが開始されました

leave a comment

Connect で SCVMM 2008 R2 RC がダウンロードできるようになりました。

https://connect.microsoft.com/site/sitehome.aspx?SiteID=799

現在、 VSUG DAY 2009 Summer に参加中のためダウンロードできていませんが
帰宅したらダウンロードして自宅の環境にインストールしてみたいと思います。

Written by Masayuki.Ozawa

6月 6th, 2009 at 4:30 am

Posted in System Center

SQL Server 2008 のクラスタについて記載されている書籍が発売されました

leave a comment

先日、日経 BP ソフトプレスさんから [アドバンスト SQL Server 2008 構築・管理] という書籍が販売されました。

アドバンストMicrosoft SQL Server 2008構築・管理 (マイクロソフトコンサルティングサービステクニカルリファレンスシリーズ)

この書籍の中で 50 ページほど SQL Server 2008 のクラスタについて書かれています。

ざっと読んでみたのですが、障害時の回復方法や分散トランザクションコーディネータに関してもわかりやすく書かれています。
これから SQL Server 2008 のクラスタを構築 / 運用される方にはぜひお勧めしたい一冊です。

Written by Masayuki.Ozawa

6月 5th, 2009 at 1:54 pm

Posted in SQL Server