今回はADが稼働しているWindows Server 2012 R2をWindows Server 2019(Standard)へアップグレードさせます。*シングル構成です。
マイクロソフトの公開ドキュメントに沿ってやってみます。
https://docs.microsoft.com/en-us/windows-server/upgrade/upgrade-2012r2-to-2019
なお、インプレースアップグレードとは、稼働中のシステムに直接ソフトウェアの更新や入れ替えを行うことで、アップグレード後に今まで動いていたシステムが動かなくなった、といったことを防ぐアップグレード手法です。
スマホのOSアップグレードと同じですね。
Windows Serverにおけるインプレースアップグレードは簡単にできるようになっており、以下の流れです。
- Windows Server 2019のメディア(ISOなど)をインプレースアップグレードしたいサーバにマウント
- メディアに含まれるsetup.exeを実行
- アップグレード完了
簡単にできるんですが、実際やるとちょこちょことハマりそうなところがあったのでスクショとともにやり方紹介します。
Contents
前準備
万が一の際の備えと、アップグレードのための準備を行います。
情報収集
システムの情報を取得しておきます。
うまくアップグレードできなかったり、壊れてしまったりした場合にこの情報をもとに修復したり、マイクロソフトに問い合わせたりするときに使用できます。
以上のコマンドの実行結果をどこかに保存しておきます。
systeminfo
ipconfig /all
Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
バックアップ
切り戻す場合を考慮し、バックアップをとっておきます。
VSS対応のバックアップアプリケーション(Windows Serverバックアップなど)で取得するか、ADが仮想マシンならシャットダウンした状態でスナップショットをとっておきます。
Windows Server 2019のメディアの用意
アップグレードさせたいWindows Server 2019のISO等取得し、対象のADサーバにマウントさせます。
言語をあわせる
日本語版のOSしか使っていないという方はここはスキップして大丈夫です。
英語版と日本語版のOSを使っている場合などは、言語について注意が必要です。
というのも言語が異なるインストーラーを使ってインプレースアップグレードができないからです。
また、言語パックを使って見た目日本語版だけと実は英語版というケースもあります。
たとえばUS版のWindowsをインストールして、日本語の言語パックを追加してシステムロケールも日本語で使っている場合においても、US版のインストールメディアを使用する必要があります。私もこの問題にあたってしまって時間をロスしてしまいました。
アップグレード
*検証に使用したOSが英語版だったのでスクリーンショットが英語版となっています。
セットアップ実行
マウントしたメディアの直下にあるsetup.exeを実行します。
事前アップデート
アップデートを事前にダウンロードするかどうか聞かれました。OSをアップグレードしたあとにアップデートするのも面倒なので、最初にアップデートを含めておきます。
イメージ選択
ライセンス同意
設定引き継ぐかどうか
ここで設定を引き継ぐほうを選択します。引き継ぐ場合はインプレースアップグレードで、引き継がない場合はクリーンインストールとなります。
アップデートダウンロード
先程アップデートを含めるオプションを選んだので、アップデートがダウンロードされます。このタイミングなんですね。
私の環境では1分程でダウンロードは終わりました。
Vsphere関連のアラート
私の環境がVsphereなので、ディスプレイ関連の警告がでました。
Confirmをクリックします。*その後特に画面が見えないなどの問題もありませんでした。
Adprep
AD関連のメッセージがでました。
このメッセージが表示されたときは、ADのスキーマ情報を更新(拡張)する必要があります。
OSセットアップ画面はそのままにして、Powershellで以下のコマンドを実行します。
DドライブにWindows Server 2019のインストールメディアがマウントされていると仮定しています。
cd /d D:\support\adprep
adprep.exe /forestprep
adprep.exe /domainprep
実行にはEnterprise AdminsとSchema Adminsの権限が必要です。
基本はビルトインadministratorで実行すればよいのですが、私の環境はadministratorが無効になっているので、私のユーザをEnterprise AdminsとSchema Adminsのグループに所属させて、ユーザ指定でコマンド実行しました。ユーザ指定する場合は以下のコマンドです。
cd /d D:\support\adprep
adprep.exe /forestprep /user <ユーザ名> /userdomain <ドメイン名> /password <パスワード>
adprep.exe /domainprep /user <ユーザ名> /userdomain <ドメイン名> /password <パスワード>
コマンドを実行すると上記のように’C’を押すように言われるので、Cをタイプするとスキーマが更新されます。
forestprepのほうは10分程度、domainprepのほうは1分程度で終わったかと思います。
インストール
adprep後、refreshを押すとこと下記画面になり、インストールボタンを押すと実際のアップグレードが開始されます。
私の場合1時間くらいで完了しました。
確認
アップグレードが終わると自動的に再起動します。
試しにRDPしたところなんの問題もなくログオンできました。
以下コマンド等でアップグレードしているか、システムに問題ないか確認します。
systeminfo
ipconfig /all
Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
dcdiag
まとめ
以上、https://docs.microsoft.com/en-us/windows-server/upgrade/upgrade-2012r2-to-2019
に沿ってやってみました。
ちょっと詰まったところもありましたが、Ready to Installになってからは問題なく上がってくれたので全体的には楽にアップグレードできました。
気をつけポイントとしては以下2つですね。
- 言語をあわせる
- adprep