SE の雑記

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

Windows 2000 Server → 2003 → 2008 アップグレード時の FSE の注意点

leave a comment

Windows Server フォーラムの Windows Server 2008 のカテゴリに以下の投稿がありました。
Windows2003からwindows2008へアップデートできない(Frontpage 2000が削除できないため)

ちょうど環境を持っていたので本現象について調査をしてみました。

■Windows 2000 Server の初期インストール状態

Windows 2000 Server では、IIS 5.0 が初期状態でインストールされています。
image?

コンポーネントとして、[FrontPage 2000 Serve Extensions] もインストールされています。
image

■Windows Server 2003 アップグレード後の IIS の状況

Windows Server 2003 の初期状態では、IIS はインストールされていないのですが、Winodws 2000 Server の
初期状態からアップグレードした場合は、IIS はアップグレードインストールされた状態となります。
image?

Windows 2000 Server の状態で、[FrontPage 2000 Server Extensions] がインストールされていた場合、
2003 アップグレード後は [FrontPage 2002 Server Extensions] がインストールされた状態になります。

image

■Windows Server 2008 へのアップグレード

それでは、この状態で Windows Server 2008 へアップグレードをしてみます。

image image 

アップグレード時に [FrontPage 2002 Server Extensions] がインストールされていると、[アップグレード] がクリックできず、
インプレースアップグレードをすることができません。
image

現在、IIS の [Web サービス拡張] の設定は以下のようになっています。
image?

[FrontPage Server Extensions] が登録されていますね。
それでは、[FrontPage 2002 Server Extensions] を削除し、再度アップグレードを実行してみたいと思います。
image

[FrontPage 2002 Server Extensions] を削除してもアップグレードをすることができません…。
image

再度、IIS の Web サービス拡張を確認してみます。
image

[FrontPage Server Extensions 2002] は削除されているのですが、[FrontPage Server Extensions] と
[FrontPage Server Extensions 2000] が登録されているままですね。

Windows 2000 Server からアップグレードした場合はこの状況になってしまうみたいですね。

[FrontPage Server Extensions] は [FrontPage Server Extensions 2002] にアップグレードされたサービスのようです。
# [50] のディレクトリは [FrontPage Server Extensions 2002] のディレクトリになります。
image

[FrontPage Server Extensions 2000] は Windows 2000 Server の設定を継承しているようです。
# [40] は [FrontPage Server Extensions 2000] のディレクトリになります。
image

Windows 2000 Server からアップグレードした環境で、[FrontPage Server Extensions 2000] を使用していた場合、
Windows Server 2003 で [FrontPage Server Extensions 2002] を削除しても、2000 からアップグレードした際に
設定された FrontPage Server Extensions の設定は削除されないみたいですね。

?

■アップグレードを実行するためには

この状態でアップグレードを実行させるためには、以下のレジストリキーを削除する必要があります。

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftShared Too
lsWeb Server ExtensionsSetup PackagesWindows 2000]

image?

このレジストリキーを削除するとアップグレードをクリックできるようになります。
image image

ただし、この状態では [FrontPage Server Extensions] が完全に削除されている状態ではありません。
Web サービス拡張が許可の状態になっておりプログラム自体も削除はされていません。

完全に削除するのであれば、IIS の Web サービス拡張で FrontPage Server Extensions を禁止状態に設定。
image

[C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions] から [40] [50] を削除。
image

[C:WINNTSystem32inetsrvMetaBase.xml] から [FrontPage Server Extensions] のエントリを削除。
image? image?

レジストリから、[FrontPage Server Extensions] のエントリを削除。
image

等も実施したほうがよいとは思うのですが、[Windows 2000] のレジストリを削除することで、アップグレードを
実行することが可能となります。

■Windows Server 2008 アップグレード後

[Windows 2000] のレジストリだけを削除して、Windows Server 2008 にアップグレードした場合、IIS 7.0 を
実行すると以下のメッセージが表示されます。
image?
また、各サイトが一通り停止状態になっています。
image
各サイトを起動しようとすると、以下のエラーになってしまい、起動することができません。image

ひとまず、FrontPage Server Extensions 関連の登録を一通り消してみたいと思います。
[ISAPI および CGI の制限] に [FrontPage Server Extensions] が登録されているので一通り削除します。
image  image

[ISAPI フィルタ] にも [fpex.dll] という FrontPage 2000 Server Extensions の ISAPI フィルタが登録されているので、
こちらも削除しておきます。
image? image?

[停止] 状態となっていた、[Windows Process Activation Service] と [World Wide Web Publishing Service] を
[自動] の [開始] 状態に設定します。
image?image?

これで [FrontPage Server Extensions] のメッセージが表示されなくなりました。

?

既に Windows 2000 Server → 2003 へアップグレードした環境を 2008 にアップグレードする場合は、このような
方法を使って、FrontPage Server の設定を削除する必要があるようですが、これからアップグレードをする場合には、
Windows 2000 Server の状態で、FrontPage Server Extensions を削除しておいた方がよさそうです。

追記

Twitter で投稿したことをつぶやいたら、2003 → 2008 アップグレード時の技術情報を教えていただけました。
Windows Server 2003 を Windows Server 2008 にアップグレードしようとすると、エラー メッセージ:「セットアップ上インストールいますが FrontPage サーバー拡張機能がこのコンピューターにサーバーをアップグレードするにはこのコンポーネントをアンインストールする」

Written by Masayuki.Ozawa

2月 28th, 2010 at 9:59 am

Posted in Windows Server

MED-V 1.0 SP1 RC をインストール ? クライアント編 –

leave a comment

サーバーの準備は終わりましたので、続いてはクライアントです。

■クライアントのシステム要件

リリースノートのシステム要件の対応 OS は以下のように記載されています。

Operating System Edition Service Pack System Architecture
Windows XP Professional Edition SP2 or SP3 x86
Windows Vista Business, Enterprise, or Ultimate SP1 or SP2 x86
Windows 7 Professional, Enterprise, or Ultimate None x86 or x64

Windows 7 への対応が大きなところですね。
また、今までは x86 でのみクライアントが動作していたのですが Windows 7 のみ x64 に対応しています。
そのため、インストーラーは x86 / x64 別々のものとなっています。

今回の投稿では Windows 7 Ultimate x64 の VHD ブート環境を使用しています。

?

■ワークスペースで実行可能なゲスト OS

MED-V のワークスペースで実行可能なゲスト OS は以下になります。

Operating System Edition Service Pack System Architecture
Windows 2000 Professional SP4 X86
Windows XP Professional Edition SP2 or SP3 x86

ただしリリースノートでは XP の SP について以下の注釈があります。

SP3 is recommended to ensure that the MED-V workspace will be compatible with future versions of MED-V.

今後を考えると SP2 ではなく、SP3 が推奨されますよね。
XP で動作させる必要があるだけであればゲスト OS は SP3 で構築しておいた方が、MED-V バージョンアップ後もシステム要件を
満たすことができるかと。

?

■Windows 7 に Virtual PC 2007 SP1 をインストール

MED-V 1.0 は Virtual PC 2007 SP1 上で動作します。
これは Windows 7 を使用していても例外ではありません。(MED-V v2 で Windows Virtual PC に対応するようですが。)

MED-V をクライアントで使用するためにはまずは Virtual PC 2007 SP1 をインストールします。
必要なモジュールはダウンロードしたモジュールに含まれています。

  1. [VPC 2007 SP1 x64.exe] を実行します。
    ?image
  2. [次へ] をクリックします。
    image
  3. [使用許諾契約書に同意します] を選択し、[次へ] をクリックします。
    image
  4. [次へ] をクリックします。
    image
  5. [インストール] をクリックします。
    image image
  6. [完了] をクリックします。
    image

通常の Virtual PC 2007 SP1 のインストールですね。
この後に修正モジュールをインストールします。

Virutal PC 用の修正モジュールとして以下の 2 種類がダウンロードファイルに含まれています。

  • KB974918
  • KB979714

両方とも手順は一緒ですので KB974917 のインストール手順のみ記載しておきます。

  1. [KB974918 ? x64.msp] を実行します。
    image
  2. [使用許諾契約書に同意します] を選択し、[次へ] をクリックします。
    imageimage
  3. [完了] をクリックします。
    ?image

同様の作業を [KB979714 ? x64.msp] でも実行します。

これで Virtual PC 2007 SP1 の準備は完了です。

■MED-V クライアントのインストール

続いて MED-V のクライアントをインストールします。

  1. [MED-V_1.0.105.msi] を実行します。
    MED-V 1.0 SP1 RC のクライアントに関しては、x86 / x64 の区別は無いようです。
    拡張子が MSP のファイルに関しては、MED-V 1.0 を実行している場合のアップデートパッケージになります。
    ?image
  2. [Next] をクリックします。
    image
  3. [I accept the terms in the license agreement] を選択して、[Next] をクリックします。
    image
  4. [Next] をクリックします。
    image
  5. インストールする機能と接続先の MED-V サーバーを指定し、[Next] をクリックします。
    今回は管理コンソールも合わせてインストールしています。
    image
  6. [Install] をクリックします。
    image?? image
  7. [Finish] をクリックします。
    image

以上でクライアントのインストールは完了です。

管理コンソールを実行して、サーバーに接続ができました。
image image

続いては本題のワークスペースの起動です。
image

ワークスペースのダウンロードが開始されます。
image

ダウンロードが終了すると Virtual PC を英語表示にするかのメッセージボックスが表示されるので、[Yes] を選択しておきます。
image

ワークスペースの起動が開始されます。
image

ファイアウォールのダイアログが表示されたら、[アクセスを許可する] をクリックします。
image

MED-V のアプリケーションがスタートメニューに追加されているのでさっそく実行してみます。
image

XP の IE を Windows 7 上で起動することができました。

image

Windows 7 で実行する場合も今までの導入方法と変わらないですね。
Windows 7 で実行できると VHD ブートで環境が作れるので、取り回しが楽でいいですね。

Written by Masayuki.Ozawa

2月 25th, 2010 at 12:53 pm

Posted in MDOP

MED-V 1.0 SP1 RC をインストール – サーバー編 –

one comment

MED-V 1.0 SP1 RC を Connect からダウンロードできたのでさっそく触っています。
私がダウンロードできなかったのは、以前 MED-V 1.0 Beta の参加登録をしていたからだったようです。
一度、MED-V 1.0 Beta の参加登録を削除したところ、SP1 RC をダウンロードできるようになりました。

■Windows Server 2008 R2 への対応

さっそく、リリースノートを読んでいたのですが、今まで Windows 7 対応ばかり気を取られていたのですが、
SP1 RC で Windows Server 2008 R2 にも対応されるようです。

[MED-V 1.0 Server Operating System Requirements] に以下の記載がありました。

Operating System Edition Service Pack System Architecture
Windows Server 2008 Standard or Enterprise SP1 or SP2 X86 or x64
Windows Server 2008 R2 Standard or Enterprise None x64

?

?

■アップグレードについて

MED-V 1.0 RTM → SP1 RC へはインプレースアップグレードはできないようで、構成ファイルのバックアップを取得して、
一度アンインストールして、SP1 RC をインストーする形になるようです。

こちらもリリースノートの記載がありました。

Server Upgrade
To upgrade the MED-V 1.0 server to MED-V 1.0 SP1:

  1. Back up the following files that are located in the <InstallDir> / Servers / ConfigurationServer directory:
    1. OrganizationalPolicy.XML
    2. ClientPolicy.XML
    3. WorkspaceKeys.XML
  2. Back up the <InstallDir> / Servers / ServerSettings.xml file.
  3. Uninstall the MED-V 1.0 server.
  4. Install the MED-V 1.0 SP1 server.
  5. Restore the backup files to the appropriate directories.
  6. Restart the MED-V server service.

?

■MED-V Server の入れ替え

それではさっそく MED-V Server を入れ替えてみたいと思います。
まずは、できないとわかっているのですがアップグレードをするとどうなるか。
image
エラーになりますね。必要なファイルをバックアップして、一度アンインストールします。

  1. [プログラムと機能]から、[Microsoft Enterprise Desktop Virtualization (Server)] をアンインストールします。image
  2. [はい] をクリックします。
    imageimage

これでアンインストールは完了です。

それでは、MED-V 1.0 SP1 RC の Server をインストールします。

  1. [MED-V_SERVER_X64_1.0.105.MSI] を実行します。
    ?image
  2. [Next] をクリックします。
    image
  3. [I accept the terms in the license agreement] を選択し、[Next] をクリックします。
    image
  4. [Next] をクリックします。
    image
  5. [Install] をクリックします。
    image
    image
  6. [Finish] をクリックします。
    image

後はバックアップを取得したファイルを上書きして、サービスを再起動します。
image

以上で、MED-V 1.0 SP1 RC Server のインストールは完了です。
2008 R2 に対応しているのでバージョンチェックでもエラーにならずにインストールできました。

次の投稿で Windows 7 にクライアントをインストールしたいと思います。

Written by Masayuki.Ozawa

2月 24th, 2010 at 2:51 pm

Posted in MDOP

MDOP 2010 が TechNet/MSDN で提供開始されました

leave a comment

まだ、英語版だけですが、MDOP 2010 が TechNet/MSDN で提供開始されました。
# VL の方も提供開始されています。

英語版ですので、ダウンロードサイトで言語を [English] に変更する必要があります。

image

MDOP2010 と合わせて、MED-V 1.0 SP1 RC についての情報も。
MDOP 2010 Opens Doors for Faster Windows 7 Deployment
App-V 4.6 RTM and MED-V 1.0 SP1 RC are here!!

RC のため Connect で入手するようですね。
先ほど確認した限りではまだダウンロードができないようだったのですが、ダウンロードできるようになったら試してみたいと思います。

Written by Masayuki.Ozawa

2月 22nd, 2010 at 11:11 pm

Posted in MDOP

Hyper-V 上で実行している Exchange 2010 のバックアップについて

leave a comment

少し動作を確認しておかないといけないなと思い検証をしてみました。

■Windows Server バックアップを使用したゲスト OS のバックアップ取得

Windows Server 2008 / R2 の Windows Server バックアップは VSS に対応しており、ゲスト OS の VSS と連携して、
バックアップを取得することが可能となっています。

VSS の追加方法は以下の KB に記載されています。
Windows Server バックアップを使用して Windows Server 2008 ベースのコンピューターの親パーティションから Hyper-V 仮想マシンをバックアップする方法

本投稿作成時点は、日本語の KB では 2008 無印が対象 OS となっていますが、英語の情報では R2 も対象になっています。
# Fix it も R2 で実行可能です。
How to back up Hyper-V virtual machines from the parent partition on a Windows Server 2008-based computer by using Windows Server Backup

以下が上記の KB の作業を実施していない状態で、[vssadmin list writers] を実行した結果になります。
image

一見 Hyper-V 用の VSS が組み込まれているように見えますが、この状態では回復時にアプリケーションから [Hyper-V] を
選択することができません。
# この状態でもゲスト OS の VSS と連携はできているみたいなんですけどね。
image

KB の Fix it を適用すると回復時にアプリケーションが選択可能です。
image image

?

それでは、ここからが本題になります。

Exchange 2007 SP2 以降では、Windows Server 2008 用の Exchange 用 VSS ライターが追加されています。
このライターは Exchange 2010 でもデフォルトで追加されており、Windows Server バックアップを使用して、
Exchange のメールボックスデータベースをバックアップし、ログの切り捨てができるようになっています。
# 以前投稿した、Exchange 2007 / 2010 のバックアップについて の内容になります。

このライターが導入されたことにより、Hyper-V のホスト OS から Windows Server 2008 で稼働させている Exchange の
バックアップを取得すれば Exchange のメールボックスデータベースのバックアップも連携がされ、ログが切り捨てられるように
なるのではということに気付きました。

直近だと、Exchange 2007 で試しておいた方がよいのですが、ログがある程度たまっている Exchange の環境が 2010 しか
手元になかったため、まずは Exchange 2010 で検証をしてみました。

■バックアップ前のログの状況

最近、バックアップを取得していなかったためかなりログが溜まってしまっていました…。
image

この状態でホスト OS からバックアップを取得してみます。

■ホスト OS からバックアップを取得

今回のゲスト OS は F ドライブに配置しています。
image

そこで、Windows Server バックアップでは F ドライブのバックアップの取得を行います。
image

VSS の設定に関しては、[VSS 完全バックアップ] で設定しています。
image

このバックアップを G ドライブに取得します。
image

■ ゲスト OS で確認

バックアップを進めていると、ゲスト OS のイベントビューアに以下の情報が出力されます。
image image

ホスト OS のバックアップでゲスト OS の Exchange VSS Writer が同期して実行されていますね。
ログのディレクトリを確認してみるとログの切り捨てが行われています。
image

ゲスト OS でバックアップを取得した場合と同じ動作になっていますね。

?

バックアップも正常に完了しました。
image?

時間がある時に Exchange 2007 も同様の動きになるがきちんと確認しておきたいと思います。

Written by Masayuki.Ozawa

2月 21st, 2010 at 3:12 pm

Posted in Exchange

SQL Server の名前付きインスタンスのポート解決について

3 comments

久しぶりに SQL Server の勉強を。今日はインスタンスのポート番号の解決について。

今回は以下の環境を使って検証しています。
ポート番号をいろいろと変更してテストを行っていたので、
?image

?

■SQL Server が使用するポートのデフォルト設定

SQL Server のインスタンスには既定のインスタンスと名前付きインスタンスの 2 種類があります。

初期設定では、既定のインスタンスの場合は、デフォルトで [TCP 1433] が使用され、名前付きインスタンスの場合は、
[動的ポート] となり使用されるポートは固定されません。

既定のインスタンスに接続する場合は [サーバー名] のみ
image

名前付きインスタンスに接続する場合は、[サーバー名インスタンス名] の形式で指定します。
image?

?

■ポートの変更

ポートの設定は、[SQL Server 構成 マネージャ] で設定することができ、デフォルトでは以下の設定となっています。

image

既定のインスタンス

名前付きインスタンス

image image

SQL Server のポート番号は任意に変更することができ、既定のインスタンスを動的ポート、名前付きインスタンスで [1433] を
設定するということもできます。

名前付きインスタンスを [TCP 1433] で動かすと、名前付きインスタンスにサーバー名だけで接続ができるようになったりもします。
下の画像のオブジェクトエクスプローラーでは [SQL-TEST] というサーバー名で接続をしているのですが、[@@servername] を
実行した結果は、[SQL-TESTINSTANCE1] となっています。
image

このようにポート 1433 で実行している SQL Server インスタンスに関しては、サーバー名で接続が可能になります。

■サーバー名だけで接続した際の挙動

Network Monitor を使ってサーバー名だけで接続した場合に使用されるポートを調べてみたいと思います。
SSMS で接続するより、SQLCMD で接続をした場合の方がポートの使用状況がわかりやすかったので、
今回は SQLCMD を使用しながら、挙動を確認していきたいと思います。

接続に使用するコマンドは以下になります。

SQLCMD ?E ?S “SQL-TEST”

この時の接続状況が以下になります。

クライアント [172.23.0.2] からサーバー [172.23.0.1] の [TCP 1433] に対して接続が行われていますね。

?image

サーバー名だけで接続をする場合は、直接 1433 に対して接続をしているのが確認できます。

?

■[サーバー名インスタンス名]で接続した場合の挙動

続いては、[サーバー名インスタンス名] で確認をしてみます。

名前付きインスタンスに接続する場合のコマンドは以下になります。

SQLCMD ?E ?S “SQL-TESTINSTANCE1”

?

この時の Network Monitor の内容が以下になります。

image

現在、[INSTANCE1] の動的ポートでは [TCP 49151] が使用されています。

image

[SQLCMD.EXE] で、172.23.0.2 から、172.23.0.1 のポート [TCP 49151] に接続している個所が、SQL Server に
接続をしている内容になります。

先ほどの既定のインスタンスへの接続と異なる個所としては、[UDP 1434] の通信が発生しているところですね。

この時のフレームサマリーが以下になります。
image

172.23.0.2 から 172.23.0.1 に [UDP 1434] で接続をし、そのあとに 172.23.0.1 の [TCP 49151] に接続をしています。

この時の [UDP 1434] の通信に使用されるサービスが、[SQL Server Browser] サービスになります。
# サーバー名だけの接続では使われないようです。

?

■SQL Server Browser サービスについて

先ほどの内容で [SQL Server Browser] サービスで [UDP 1434] が使用されていると書きました。

[SQL Server Browser] サービスは、SQL Server を起動しているサーバーで実行することのできるサービスになります。
今回の検証では、[SQL-TEST] でサービスが起動しています。
image

タスクマネージャーで確認するとプロセス ID [2896] で起動しているのが確認できますね。
# 32ビットプロセスなんですよね。
image

[netstat] コマンドを使用して、プロセス ID [2896] のポート使用状況を確認してみたいと思います。
使用するコマンドはこちらです。

netstat ?ano | find “2896”

?

実行するとこのような結果が取得できます。
[UDP 1434] がプロセス ID [2896] で実行されていることが確認できますね。
image

このサービスが何をやっているかを確認する場合は、[SQL Server Browser] サービスをサービスではなく、
コンソールモードで起動するとわかりやすいです。

コンソールモードで起動するためには、[SQL Server Browser] サービスを停止して、コマンドプロンプトで
以下のコマンドを実行します。
コンソールモードで起動すると [UDP 1434] に対してのアクセスのログがコンソールに表示されるようになります。

"C:Program Files (x86)Microsoft SQL Server90Sharedsqlbrowser.exe" -c

この状態で再度名前付きインスタンスでの接続をするとコンソールに以下の用に表示されます。
image?

172.23.0.2 から [UDP 1434] に対してアクセスがあったことを確認することができますね。

[SQL Server Browser] サービスは SQL Server のインスタンス名を指定した接続要求時に、インスタンスに対応するポートを
返答する機能になります。
# サーバー名だけで接続した場合は使用されません。そのため、既定のインスタンスのポートを変更した際には、
  SQL Server Browser が使用されないので、接続時にポート番号を指定する必要があります。
特定のインスタンスの接続をする際にポート番号を指定しなかった場合はこの機能を使用して、ポート解決をする必要があります。

下の画像が、[INSTANCE1] 接続時にクライアントから SQL Server の [UDP 1434] に対してアクセスされた際の
ネットワークフレームの情報 (Frame Number 9 の情報) になります。
パースがうまくできなかったので、[Hex Details] をみる必要があるのですが、[instance1] という情報が読み取れますね。
クライアントからサーバーに [instance1] のポート解決に対してのリクエストがされています。
image

次ネットワークフレームの情報 (Frame Number 10 の情報) が SQL Server からクライアントに対してのレスポンスになります。
こちらもパースができなかったので [Hex Details] で確認する必要があるのですが、SQL Server の情報がクライアントに渡されています。
この中にポート番号 (49195) が入っているのが確認できますね。
image

[SQL Server Browser] サーバーは、インスタンス名が指定されており、ポート番号が指定されていない場合に使用されます。
そのため、インスタンス名を指定していても、ポート番号を指定している場合は使用されません。
# [UDP 1434] にたいしてアクセスがされません。

ポート番号を指定する場合は以下のコマンドになります。

SQLCMD ?E ?S “SQL-TESTINSTANCE1,49195”

?

この場合の Network Monitor の取得内容が以下になるのですが、指定したポートに直接接続がされており、[UDP 1434] の
通信は発生していません。
image

普段何気なく使用している、[サーバー名インスタンス名] の接続ですがきちんと調べると勉強になります。

Written by Masayuki.Ozawa

2月 21st, 2010 at 7:48 am

Posted in SQL Server

インストールマニアックス 3 で作成したドキュメントを一通り SkyDrive にアップしました

leave a comment

作業しようと思ってなかなか着手できていなかった SkyDrive へのインストールマニアックス 3 のドキュメントアップロードを
先ほどようやく実施しました。

課題を SQL Server 対応せずに MySQL を使って導入しただけなので特に目新しい情報はありませんが・・・。
私は VPS コースだったのですが、Hyper-V Server 2008 R2 も触っておきたいなと思って、自宅の検証環境に
Hyper-V Server 2008 R2 をインストールして構築方法のドキュメントを作っていたりもしていたので、
こちらもあわせてアップロードしました。

インストールマニアックス 3 作成ドキュメント

インストールマニアックスは、IIS / Hyper-V Server 2008 R2 / OSS に触れるよい機会だったと思います。
こんな機会がないとここまで集中して操作することもなかったと思いますので。

今まで、OSS はインストールしたことがなかったので、オープンソースのプログラムでこんなことができるんだ~と
結構楽しみながら作業を実施することができました。

今回作成したドキュメントはすべて PDF 化してありますので、何かの参考になるようでしたらご利用いただければと思います。

Written by Masayuki.Ozawa

2月 20th, 2010 at 4:15 pm

Hyper-V で Windows NT ドメインを Active Directory にインプレースアップグレード

leave a comment

Happy Birthday Active Directory !
Active Directory 誕生 10 周年おめでとうございます。

昨日から Active Directory 関係の投稿を何かしようと考えていのですが、引き出しがありませんでした…。
そこで、Windows NT ドメインからいろいろな OS のバージョンの Active Directory ドメインへインプレースアップグレードする
検証を実施してみました。

■Hyper-V で Windows NT を起動するために

Hyper-V では Windows NT は非サポートですが、[Windows NT など、古いオペレーティングを実行する] を有効にすることで、
インストールして動作させることができます。
また、統合サービスが使用できないので、エミューレートのネットワークアダプタと、SCVMM にリモートデスクトップで
アクセスしている時はキーボードで操作する必要があります。
image
?

■Windows NT ドメインの作成

まずはインプレースアップグレード元となる NT ドメインの作成です。

  1. Windows NT 4.0 を PDC としてインストールします。
    ?image image
    image
  2. Windows NT 4.0 SP6a をインストールします。

    image image

この環境を使ってインプレースアップグレードを試していきます。

■パターン1
Windows 2000 Server Active Directory へアップグレード

まずは、NT → 2000 Active Directory にアップグレードです。

  1. Windows 2000 Server のインストールメディアを挿入し、インプレースアップグレードします。
    image image
    image
    # 上記画面の処理が長いですが待っていると進みます。
  2. インプレースアップグレードの中で Active Directory 化を実施します。
    image image
    image
  3. Windows 2000 Server SP4a をインストールして最新化の完了です。
    image image

このパターンは問題なくアップグレード完了です。

■パターン 2
Windows Server 2003 Active Directory へアップグレード

Windows NT から Windows Server 2003 へインプレースアップグレードすると Windows 2000 Server の時と同様、
Active Directory の設定画面が表示されます。

ウィザードに従って作業をすると Active Directory 化の完了です。
image image

フォレストの機能レベルの選択画面が表示されるのですがNT ドメインコントローラーとの併用モードしか選択できません。
image

無事に NT ドメイン → 2003 Active Directory への移行完了です。
image

今回は With SP2 で実施しているので SP のインストールは無しです。
こちらも問題なくアップグレード完了です。

■パターン 3
2000 → 2003 Active Directory へアップグレード

NT → 2000 → 2003 という順番でアップグレードした場合です。
NT → 2000 はパターン 1 と一緒ですね。

  1. Windows Server 2003 R2 Standard Edition with SP2 のメディアで [adprep /forestprep] [adprep /forestprep / gpprep] を
    実行します。
    image
  2. Windows Server 2003 R2 Standard Edition with SP2 のメディアでインプレースアップグレードします。
    image image

2000 の段階で統合サービスをインストールしているとこの画面の後にブルースクリーンになってしまいました。
?imageimage
image

統合サービスがインストール時にどうしてもタイムアウトしてしまうんですよね。
# 私の環境特有なのかも知れないのですが、SCVMM でWindows 2000 Server に統合サービスをインストールすると
  かなり時間がかかるんですよね。
image

マウスは動くので、統合サービスはインストールされているようではあるのですが。
image?

■回避策

ブルースクリーンが発生してしまった後の回避ができていないのですが、アップグレード前に環境を整備しておけば、
ブルースクリーンを発生させないことができます。

  1. 統合サービスをインストールしない
    統合サービスをインストールしなければ現象は発生しません。
    まぁ当然のお話だとは思いますが…。
  2. 統合サービスをインストールした場合はアンインストールするSCVMM で統合サービスのインストールに失敗した状態ではアプリケーションの追加と削除に表示がされません。
    そのため、アンインストールができない状態になります。
    image

    そこで、Hyper-V マネージャーの VMCONNECT を使って、統合サービスを一度インストールします。
    image?
    imageimage?

    一度 VMCONNECT からインストールして、アプリケーションの追加と削除に表示され、アンインストールできるようになります。
    タイムアウトしていなければ最初から表示されていると思いますので、その場合は再インストールせずに削除します。
    image image

統合サービスがインストールされていない状態であれば、ブルースクリーンは発生せずアップグレードをすることが可能です。image

?
この現象ですが

  • Windows 2000 Server SP4a + 統合サービス → Widnows Server 2003 R2 with SP2

へのアップグレードでも発生しました。
私の環境では、統合サービスありの状態でアップグレードすると発生してしまうようですね。
Windows 2000 からアップグレードをする場合は統合サービスをアンインストールしておいた方がよさそうですね。

■パターン 4
Windows Server 2008 Active Directory へアップグレード

インストールメディアの ISO をマウントしても読めなかったので、一度 VHD に ISO の内容をコピーしてアップグレードを実行しています。
Windows Server 2008 x86 With SP2 を実行しているのですが残念ながらアップグレードパスはありません。
image?

■パターン 5
2000 → 2008 Active Directory へアップグレード

SP4 以降であれば Windows Server 2008 のインストーラーを実行可能です。
image

ただし、SP4 以降にしても Windows NT では C ドライブの容量を 4G に設定するパターンになっていると思いますので、
そのままでは、容量不足でアップグレードができません。
image

仮想環境は VHD なので、一度 Hyper-V マネージャで拡張して、その仮想ディスクを VHD マウントしてパーティション拡張しました。
ボリューム拡張後はアップグレードが可能になります。
今回は 4 G から 40G に拡張しました。
image?

AD のアップグレードですので、2008 のメディアから[adprep] 関連の作業を事前に実行しています。

OS の選択はできるのですが、
image

アップグレードはできない状態です。
image

そのため、[windows.old] が使用される形でのインストールとなります。
image
どうなるかが気になるので、ひとまずこのままインストールをしてみました。
image

インストールが終了するとこの画面に。
# 統合サービスはインストールしたままですが、2008 にはアップグレード可能でした。
image

きれいに再インストールされてしまいました。
image?

■パターン 6
2000 → 2003 SP2 → 2008 Active Directory へアップグレード

2000 の段階で 4G → 40G にパーティションは拡張済みです。

Windows Server 2003 では NonSP の状態でもインストーラーを起動可能です。
image

ただし、SP1 以降でないとアップグレードはできません。
image?

NT → 2000 → 2003 R2 With SP2 というステップでアップグレードした環境に対して、 2008 x86 のインプレース
アップグレードを試してみました。

2000 → 2003 へは特に問題もなくアップグレード完了です。
image

ログオン後に統合サービスをインストールして 2008 x86 にアップグレードです。
ドメインの機能レベルを 2000 ネイティブ以上にして、2008 の [ADPREP] を実行してからアップグレードを実行します。

OS の条件とドメインの条件 (ADPREP) を満たしていると、アップグレードがクリックできます。
image

互換性のレポートを確認するとアップグレードが開始されます。
image image

[vmbus] でエラーが発生し、起動しませんでした…。
image

そのあとの画面で、[Windows セットアップ Rollback] があるのですが、これを実行すると Windows Server 2003 の状態に
ロールバックすることが可能です。
image

2008 のベースは入っているはずなので、SCVMM から統合サービスのインストールを試したのですが、残念ながらインストールできず…。
image

一度ロールバックしてみます。
# このような機能があることを知りませんでした。
image

Windows Server 2003 が起動しました!!ロールバックできるものですね~。
image image image

一度、統合サービスをアンインストールして再度 2008 にアップグレードしてみます。
image

統合サービスをアンインストールした状態だとアップグレードが成功します。
image image

2008 にアップグレードしたタイミングで、システムルートが [WINNT] → [Windows] に変更されるんですね。
image image

Active Directory 誕生 10 周年ということでいろいろな OS を使って NT ドメインからインプレースアップグレードしてみました。

10 年前といえばまだ学生で、Windows 98 を多少触れるぐらいの IT スキルだった気がします。
社会人になってから支給された社用 PC が Windows 2000 Professional でそのとき初めて NT 系の OS を触ったことを覚えています。

それから開発系の仕事をメインに携わり、プログラマーとして業務をしていきたいと考えていたこともあるのですが、
今は ITPro として製品を詳しく理解したいという気持ちが強くなっています。10 年たつとスキルの志向も変わるものですね~。

Active Directory を触り始めて 3 年ぐらい。誕生してからの半分の期間も触れていないんですね。
誕生 15 周年、20 周年の時にはもう少し Active Directory のスキルを付けていたいものです。

次の Active Directory の記念日に備え、これからも勉強に精進したいと思います!!

Written by Masayuki.Ozawa

2月 17th, 2010 at 3:00 pm

Posted in Active Directory

Hyper-V のゲスト OS と VHD ブートでは BitLocker は使えないんですね

leave a comment

BitLocker 用の AD スキーマ拡張の勉強をしたいなと思って、BitLocker で暗号化された環境を作ろうと作業をしていました。
今回は、Hyper-V のゲスト OS と VHD ブートの環境で BitLocker が有効にできるか試してみました。

■Hyper-V のゲスト OS で BitLocker を設定

ゲスト OS では、TPM (トラステッド プラットフォーム モジュール) が有効にできないので、BitLocker は有効にできませんでした。

image

これについては以下の技術情報に記載がありました。
Hyper-V のセキュリティを計画する

BitLocker ドライブ暗号化を Hyper-V 管理オペレーティング システムで使用すると、構成ファイル、仮想ハード ディスク、およびスナップショットが含まれるボリュームを保護できます。仮想マシン内では BitLocker ドライブ暗号化を実行しないでください。BitLocker ドライブ暗号化は、仮想マシンではサポートされていません。

?

ゲスト OS 上での BitLocker はサポートされていないんですね。
ゲスト OS の暗号化をする場合は、ホスト OS 上で BitLocker を有効にして、ファイルを暗号化する必要があるようです。

■VHD ブートした OS で BitLocker を設定

VHD ブートした OS の場合は、TPM を有効にすることはできるのですが、BCD の構成でエラーとなってしまいます。
image

こちらについて書かれているのが以下の技術情報になります。
ネイティブ ブート仮想ハード ディスクとは

Bitlocker は、ネイティブ VHD ブートに使用される VHD ファイルを含むホスト ボリュームの暗号化には使用できず、
VHD 内に含まれるボリューム上で使用できません

VHD ブートする場合は、VHD ファイルを含んでいるボリュームの暗号化は NG なんですね。
言われてみればそうなのかな~とも思うのですが、いままで全く考えていませんでした。

BitLocker 用スキーマ拡張の勉強については BitLocker To Go が一番手頃にできるのかもしれないですね。

Written by Masayuki.Ozawa

2月 15th, 2010 at 2:22 pm

Posted in Windows Client

Exchange 2000 に対応している Active Directory について

leave a comment

ここまでの投稿で作成したドメインコントローラーをサイトを分けて以下の用に配置しました。
また、このドメインには Exchange 2000 Server が存在しています。

image

Exchange 2000 Server は使用できるドメインコントローラーのバージョンには制限があるようで、US の Exchange チームの
ブログの以下の投稿で記載がされています。
Exchange Server and Windows Server 2008

Exchange 2000 Server は Windows Server 2008 のドメインコントローラーに対応していないようです。

Exchange 2000 Server Service Pack 3 and all previous versions of Microsoft Exchange are not for use with Windows Server 2008 directory servers.

?

各サイトにサブネットを設定して Exchange 2000 を再起動し、サービスが起動するかどうかを試して見たいとおもいます。

■Windows 2000 Server のサイトにサブネットを設定

Exchange 2000 Server のサブネットを Windows 2000 Server のサイトに設定しました。

image

再起動後にドメインユーザーでログインして SET コマンドを実行してみます。
2000 のドメインコントローラーになっていますね。
image

各サービスも正常に起動しています。
image

この作業をサブネットを設定するサイトを変更しながら繰り返していきます。
# サイトリンクも初期のままなので、サブネット変更後は [repadmin /syncall /AedP "TEST-2000-01"] を実行して、
  2000 AD の変更内容をプッシュで伝搬させています。

■Windows Server 2003 R2 のサイトにサブネットを設定

今度は、Windows Server 2003 R2 x64 にサブネットを割り当てます。

?image

SET コマンドを実行すると 2003 R2 のサーバーが表示されています。
?image

各サービスも正常に起動していますね。
image

■Windows Server 2008 のサイトにサブネットを設定

ここからが本題です。
サブネットを Windows Server 2008 のサイトに設定しました。

image

SET コマンドの実行結果は、2008 になっていますね。
image

では、各サービスの起動状態を確認してみたいと思います。
image?
サービスはすべて起動していますね。
以前試したときは [Microsoft Exchange Information Store] が起動しなかったのですが、今回の環境では起動してしまいました。

■Windows Server 2008 R2 のサイトにサブネットを設定

続いて 2008 R2 で実験です。

image

SET コマンドは 2008 R2 になっています。
image

サービスも一通り起動していますね。
image

?

以前、2000
AD + 2008 AD DS の環境で試した際には、Exchange 2000 を 2000 AD のサイトに設定しないと、
正常にサービスが起動しなかった場合があったのですが、今回はうまくいってしまいましたね~。
2008 AD DS を使用する場合は 2000 または 2003 の AD が使われるようにサイトの設定をすることが
必要になるという投稿がしたかったのですがうまく結果が残せませんでした…。

Written by Masayuki.Ozawa

2月 14th, 2010 at 2:53 pm

Posted in Active Directory