記憶域スペース ダイレクト クラスターを新しいバージョンの Windows Server にアップグレードするには、クラスター OS ローリング アップグレード プロセスを使用する 4 つのオプションがあります。 2 つのオプションには、仮想マシン (VM) の実行を維持する方法と、すべての VM を停止するオプションの 2 つがあります。 各オプションには長所と短所があるため、組織のニーズに最も適したオプションを選択します。
アップグレード オプションの詳細を確認するには、リンクを選択します。
VM がクラスター内の各サーバーで 実行されている間のインプレース アップグレードです。 このオプションでは VM のダウンタイムは発生しませんが、各サーバーがアップグレードされた後、ストレージ ジョブ (ミラー修復) が完了するまで待つ必要があります。
VM がクラスター内の各サーバーで 実行されている間に、OS のクリーン インストールを行います。 このオプションでは VM のダウンタイムは発生しませんが、各サーバーがアップグレードされた後にストレージ ジョブ (ミラー修復) が完了するまで待つ必要があります。また、各サーバーとそのすべてのアプリとロールをもう一度設定する必要があります。 インプレース アップグレードよりも、このオプションをお勧めします。
クラスター内の各サーバーで VM が 停止されている間に、インプレース アップグレードが実行されます。 このオプションでは VM のダウンタイムが発生しますが、ストレージ ジョブ (ミラー修復) を待つ必要がないため、高速です。
クラスター内の各サーバーで VM が 停止されている間に、OS のクリーン インストールが行われます。 このオプションでは VM のダウンタイムが発生しますが、ストレージ ジョブ (ミラー修復) を待つ必要がないため、高速です。 インプレース アップグレードよりも、このオプションをお勧めします。
前提条件と制限事項
アップグレードを続行する前に、次の手順を実行します。
記憶域スペース ダイレクトが有効になっています。
アップグレード プロセス中に問題が発生した場合に備えて、使用可能なバックアップがあることを確認します。
ハードウェア ベンダーに、サポートされている BIOS、ファームウェア、ドライバーがあることを確認します。
アップグレード プロセスに関するいくつかの制限事項に注意することが重要です。
アップグレードは Resilient File System (ReFS) ボリュームで完全にサポートされていますが、Windows Server 2019 では、アップグレードされたボリュームは ReFS の機能強化の恩恵を受けません。 ミラー高速化パリティのパフォーマンス向上など、ReFS の利点には、新しく作成された Windows Server 2019 以降の ReFS ボリュームが必要です。 新しい Windows Server ReFS ボリュームを作成するには、
New-Volume
コマンドレットまたはサーバー マネージャーを使用して新しいボリュームを作成する必要があります。 新しいボリュームでの ReFS の機能強化の一部を次に示します。MAP ログ バイパス: ReFS のパフォーマンスが向上しました。これは、クラスター化 (記憶域スペース ダイレクト) システムにのみ適用され、スタンドアロン記憶域プールには適用されません。
圧縮: マルチレジリエント ボリュームに特有の効率性の向上。
記憶域スペース ダイレクト クラスター サーバーをアップグレードする前に、サーバーを記憶域メンテナンス モードにすることをお勧めします。
スイッチ埋め込みチーミング (SET) スイッチを使用するソフトウェア定義ネットワーク環境で既知の問題が発生します。 この問題には、以前のバージョンのオペレーティング システム Hyper-V VM のライブ マイグレーションが含まれます。 ライブ マイグレーションを確実に成功させるには、ライブマイグレーションする VM の VM ネットワーク設定を変更することをお勧めします。
ここで説明する既知の問題により、次のセクションで説明する 4 つのプロセスのいずれかを使用して Windows Server クラスターをアップグレードするのではなく、新しいクラスターを構築し、古いクラスターからデータをコピーすることを検討する場合があります。
VM を実行したままでインプレース アップグレードを行う
このオプションでは VM のダウンタイムは発生しませんが、各サーバーがアップグレードされた後、ストレージ ジョブ (ミラー修復) が完了するまで待つ必要があります。 個々のサーバーはアップグレード プロセス中に順番に再起動されますが、クラスター内の残りのサーバーとすべての VM は引き続き実行されます。
クラスター内のすべてのサーバーに最新の Windows Update がインストールされていることを確認します。
SET スイッチでソフトウェア定義ネットワークを使用している場合は、管理者特権の PowerShell セッションを開き、次のコマンドを実行して、クラスター上のすべての VM で VM のライブ マイグレーション検証チェックを無効にします。
Get-ClusterResourceType -Cluster {clusterName} -Name "Virtual Machine" | ` Set-ClusterParameter -Create SkipMigrationDestinationCheck -Value 1
一度に 1 つのクラスター サーバーで、次の手順を実行します。
Hyper-V を使用して VM ライブ マイグレーションを行い、実行中の VM をアップグレードしようとしているサーバーから移動します。
次の PowerShell コマンドを実行して、クラスター サーバーを一時停止します。 一部の内部グループは非表示になっています。 この手順は慎重に行うことをお勧めします。 サーバーから VM をまだライブマイグレーションしていない場合、このコマンドレットはその手順を実行します。 その場合は、必要に応じて前の手順をスキップできます。
Suspend-ClusterNode -Drain
サーバーをストレージ メンテナンス モードにします。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Enable-StorageMaintenanceMode
次のコマンドレットを実行して、OperationalStatus の値がメンテナンス モード でされていることを確認します。
Get-PhysicalDisk
setup.exe を実行し、[個人用ファイルとアプリを保持する] オプション 使用して、サーバーに Windows Server のアップグレード インストール 実行します。 インストールが完了すると、サーバーはクラスターに残り、クラスター サービスが自動的に開始されます。
新しくアップグレードされたサーバーに最新の Windows Server 更新プログラムがあることを確認します。
記憶域メンテナンス モードからサーバーを削除します。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Disable-StorageMaintenanceMode
サーバーを再開します。
Resume-ClusterNode
ストレージ修復ジョブが完了し、すべてのディスクが正常な状態に戻るのを待ちます。 サーバーのアップグレード中に実行されている VM の数によっては、プロセスにかなりの時間がかかる場合があります。 正常な状態を確認するには、次のコマンドを実行します。
Get-StorageJob Get-VirtualDisk
クラスター内の次のサーバーをアップグレードします。
すべてのサーバーが最新バージョンの Windows Server にアップグレードされたら、次の PowerShell コマンドレットを使用してクラスターの機能レベルを更新します。 クラスターの機能レベルを更新した後は、以前のクラスター機能レベルに戻ることはできません。 つまり、クラスターの機能レベルを更新した後は、以前のバージョンの Windows Server ノードをクラスターに追加することはできません。 詳細については、「クラスター オペレーティング システムのローリング アップグレード 」を参照してください。
Update-ClusterFunctionalLevel
手記
クラスターの機能レベルを更新するには最大 4 週間かかりますが、できるだけ早くクラスターの機能レベルを更新することをお勧めします。
クラスターの機能レベルを更新した後、次のコマンドレットを使用して記憶域プールを更新します。 この時点で、
Get-ClusterPerf
などの新しいコマンドレットは、クラスター内の任意のサーバーで完全に動作します。Update-StoragePool
必要に応じて、各 VM を停止し、
Update-VMVersion
コマンドレットを使用して VM 構成レベルをアップグレードしてから、VM をもう一度起動します。SET スイッチでソフトウェア定義ネットワークを使用し、前に説明したように VM ライブ マイグレーション チェックを無効にしている場合は、次のコマンドレットを使用して VM のライブ検証チェックを再度有効にします。
Get-ClusterResourceType -Cluster {clusterName} -Name "Virtual Machine" | ` Set-ClusterParameter SkipMigrationDestinationCheck -Value 0
アップグレードされたクラスターが期待どおりに動作することを確認します。 ロールが正しくフェールオーバーされる必要があります。 クラスターで VM のライブ マイグレーションが使用されている場合、VM は正常にライブマイグレーションされます。
クラスター検証を実行し、クラスター検証レポートを調べることで、クラスターを検証します。 管理者特権の PowerShell セッションで、次のコマンドを実行します。
Test-Cluster
VM の実行中に OS をクリーン インストールする
このオプションでは VM のダウンタイムは発生しませんが、各サーバーがアップグレードされた後、ストレージ ジョブ (ミラー修復) が完了するまで待つ必要があります。 個々のサーバーはアップグレード プロセス中に順番に再起動されますが、クラスター内の残りのサーバーとすべての VM は引き続き実行されます。
クラスター内のすべてのサーバーで最新の更新プログラムが実行されていることを確認します。
SET スイッチでソフトウェア定義ネットワークを使用している場合は、管理者特権の PowerShell セッションを開き、次のコマンドを実行して、クラスター上のすべての VM で VM のライブ マイグレーション検証チェックを無効にします。
Get-ClusterResourceType -Cluster {clusterName} -Name "Virtual Machine" | ` Set-ClusterParameter -Create SkipMigrationDestinationCheck -Value 1
一度に 1 つのクラスター サーバーで、次の手順を実行します。
Hyper-V を使用して VM ライブ マイグレーションを行い、実行中の VM をアップグレードしようとしているサーバーから移動します。
次の PowerShell コマンドを実行して、クラスター サーバーを一時停止します。 一部の内部グループは非表示になっています。 この手順は慎重に行うことをお勧めします。 サーバーから VM をまだライブマイグレーションしていない場合、このコマンドレットはその手順を実行します。 その場合は、必要に応じて前の手順をスキップできます。
Suspend-ClusterNode -Drain
サーバーをストレージ メンテナンス モードにします。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Enable-StorageMaintenanceMode
次のコマンドレットを実行して、OperationalStatus の値がメンテナンス モード でされていることを確認します。
Get-PhysicalDisk
クラスターからサーバーを削除します。
Remove-ClusterNode <ServerName>
最新バージョンの Windows Server をサーバーにクリーン インストールします。 クリーン インストールの場合は、システム ドライブをフォーマットし、setup.exeを実行し、Nothing オプションを使用します。 セットアップが完了してサーバーが再起動した後で、サーバー ID、役割、機能、およびアプリケーションを構成する必要があります。
Hyper-V ロールと Failover-Clustering 機能をサーバーにインストールします (
Install-WindowsFeature
コマンドレットを使用できます)。記憶域スペース ダイレクトで使用するサーバーの製造元によって承認されているハードウェアの最新の記憶域およびネットワーク ドライバーをインストールします。
新しくアップグレードされたサーバーに最新の更新プログラムがあることを確認します。
サーバーをクラスターに再参加させます。
Add-ClusterNode
記憶域メンテナンス モードからサーバーを削除します。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Disable-StorageMaintenanceMode
ストレージ修復ジョブが完了し、すべてのディスクが正常な状態に戻るのを待ちます。 サーバーのアップグレード中に実行されている VM の数によっては、プロセスにかなりの時間がかかる場合があります。 正常な状態を確認するには、次のコマンドを実行します。
Get-StorageJob Get-VirtualDisk
クラスター内の次のサーバーをアップグレードします。
すべてのサーバーが最新バージョンの Windows Server にアップグレードされたら、次の PowerShell コマンドレットを使用してクラスターの機能レベルを更新します。 クラスターの機能レベルを更新した後は、以前のクラスター機能レベルに戻ることはできません。
Update-ClusterFunctionalLevel
手記
クラスターの機能レベルを更新するには最大 4 週間かかりますが、できるだけ早くクラスターの機能レベルを更新することをお勧めします。
クラスターの機能レベルを更新した後、次のコマンドレットを使用して記憶域プールを更新します。 この時点で、
Get-ClusterPerf
などの新しいコマンドレットは、クラスター内の任意のサーバーで完全に動作します。Update-StoragePool
必要に応じて、各 VM を停止し、
Update-VMVersion
コマンドレットを使用して VM 構成レベルをアップグレードしてから、VM をもう一度起動します。SET スイッチでソフトウェア定義ネットワークを使用し、前に説明したように VM ライブ マイグレーション チェックを無効にしている場合は、次のコマンドレットを使用して VM のライブ検証チェックを再度有効にします。
Get-ClusterResourceType -Cluster {clusterName} -Name "Virtual Machine" | ` Set-ClusterParameter SkipMigrationDestinationCheck -Value 0
アップグレードされたクラスターが期待どおりに動作することを確認します。 ロールが正しくフェールオーバーされる必要があります。 クラスターで VM のライブ マイグレーションが使用されている場合、VM は正常にライブマイグレーションされます。
クラスター検証を実行し、クラスター検証レポートを調べることで、クラスターを検証します。 管理者特権の PowerShell セッションで、次のコマンドを実行します。
Test-Cluster
VM を停止してインプレース アップグレードを行う
このオプションでは VM のダウンタイムが発生しますが、各サーバーのアップグレード後にストレージ ジョブ (ミラー修復) が完了するのを待つ必要がないため、アップグレード中に VM を実行したままにした場合よりも時間がかかることがあります。 アップグレード プロセス中に個々のサーバーが順番に再起動されますが、クラスター内の残りのサーバーは引き続き実行されます。
クラスター内のすべてのサーバーで最新の更新プログラムが実行されていることを確認します。
クラスターで実行されている VM を停止します。
一度に 1 つのクラスターで、次の手順を実行します。
管理者特権の PowerShell セッションを開き、次の PowerShell コマンドを実行して、クラスター サーバーを一時停止します。 一部の内部グループは非表示になっています。 この手順は慎重に行うことをお勧めします。
Suspend-ClusterNode -Drain
サーバーをストレージ メンテナンス モードにします。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Enable-StorageMaintenanceMode
次のコマンドレットを実行して、OperationalStatus の値がメンテナンス モード でされていることを確認します。
Get-PhysicalDisk
setup.exe を実行し、[個人用ファイルとアプリを保持する] オプション 使用して、サーバーに Windows Server のアップグレード インストール 実行します。 インストールが完了すると、サーバーはクラスターに残り、クラスター サービスが自動的に開始されます。
新しくアップグレードされたサーバーに最新の Windows Server 更新プログラムがあることを確認します。
記憶域メンテナンス モードからサーバーを削除します。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Disable-StorageMaintenanceMode
サーバーを再開します。
Resume-ClusterNode
ストレージ修復ジョブが完了し、すべてのディスクが正常な状態に戻るのを待ちます。 VM が実行されていないため、プロセスは比較的高速である必要があります。 次のコマンドを実行して、正常な状態を確認します。
Get-StorageJob Get-VirtualDisk
クラスター内の次のサーバーをアップグレードします。
すべてのサーバーが最新バージョンの Windows Server にアップグレードされたら、次の PowerShell コマンドレットを使用してクラスターの機能レベルを更新します。
Update-ClusterFunctionalLevel
手記
クラスターの機能レベルを更新するには最大 4 週間かかりますが、できるだけ早くクラスターの機能レベルを更新することをお勧めします。
クラスターの機能レベルを更新した後、次のコマンドレットを使用して記憶域プールを更新します。 この時点で、
Get-ClusterPerf
などの新しいコマンドレットは、クラスター内の任意のサーバーで完全に動作します。Update-StoragePool
クラスターで VM を起動し、正常に動作していることを確認します。
必要に応じて、各 VM を停止し、
Update-VMVersion
コマンドレットを使用して VM 構成レベルをアップグレードしてから、VM をもう一度起動します。アップグレードされたクラスターが期待どおりに動作することを確認します。 ロールが正しくフェールオーバーされる必要があります。 クラスターで VM のライブ マイグレーションが使用されている場合、VM は正常にライブマイグレーションされます。
クラスター検証を実行し、クラスター検証レポートを調べることで、クラスターを検証します。 管理者特権の PowerShell セッションで、次のコマンドを実行します。
Test-Cluster
VM の停止中に OS のインストールをクリーンする
このオプションでは VM のダウンタイムが発生しますが、各サーバーのアップグレード後にストレージ ジョブ (ミラー修復) が完了するのを待つ必要がないため、アップグレード中に VM を実行したままにした場合よりも時間がかかることがあります。 アップグレード プロセス中に個々のサーバーが順番に再起動されますが、クラスター内の残りのサーバーは引き続き実行されます。
クラスター内のすべてのサーバーが最新の更新プログラムを実行していることを確認します。
クラスターで実行されている VM を停止します。
一度に 1 つのクラスター サーバーで、次の手順を実行します。
管理者特権の PowerShell セッションを開き、次の PowerShell コマンドを実行して、クラスター サーバーを一時停止します。 一部の内部グループは非表示になっています。 この手順は慎重に行うことをお勧めします。
Suspend-ClusterNode -Drain
サーバーをストレージ メンテナンス モードにします。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Enable-StorageMaintenanceMode
次のコマンドレットを実行して、OperationalStatus の値がメンテナンス モード でされていることを確認します。
Get-PhysicalDisk
クラスターからサーバーを削除します。
Remove-ClusterNode <ServerName>
サーバーに Windows Server のクリーン インストールを実行します。 クリーン インストールの場合は、システム ドライブをフォーマットし、setup.exeを実行し、Nothing オプションを使用します。 セットアップが完了してサーバーが再起動した後で、サーバー ID、役割、機能、およびアプリケーションを構成する必要があります。
Hyper-V ロールと Failover-Clustering 機能をサーバーにインストールします (
Install-WindowsFeature
コマンドレットを使用できます)。記憶域スペース ダイレクトで使用するサーバーの製造元によって承認されているハードウェアの最新の記憶域およびネットワーク ドライバーをインストールします。
新しくアップグレードされたサーバーに最新の Windows Server 更新プログラムがあることを確認します。
サーバーをクラスターに再参加させます。
Add-ClusterNode
記憶域メンテナンス モードからサーバーを削除します。
Get-StorageFaultDomain -type StorageScaleUnit | ` Where FriendlyName -Eq <ServerName> | ` Disable-StorageMaintenanceMode
ストレージ修復ジョブが完了し、すべてのディスクが正常な状態に戻るのを待ちます。 サーバーのアップグレード中に実行されている VM の数によっては、プロセスにかなりの時間がかかる場合があります。 正常な状態を確認するには、次のコマンドを実行します。
Get-StorageJob Get-VirtualDisk
クラスター内の次のサーバーをアップグレードします。
すべてのサーバーが最新バージョンの Windows Server にアップグレードされたら、次の PowerShell コマンドレットを使用してクラスターの機能レベルを更新します。
Update-ClusterFunctionalLevel
手記
クラスターの機能レベルを更新するには最大 4 週間かかりますが、できるだけ早くクラスターの機能レベルを更新することをお勧めします。
クラスターの機能レベルを更新した後、次のコマンドレットを使用して記憶域プールを更新します。 この時点で、
Get-ClusterPerf
などの新しいコマンドレットは、クラスター内の任意のサーバーで完全に動作します。Update-StoragePool
クラスターで VM を起動し、正常に動作していることを確認します。
必要に応じて、各 VM を停止し、
Update-VMVersion
コマンドレットを使用して VM 構成レベルをアップグレードしてから、VM をもう一度起動します。アップグレードされたクラスターが期待どおりに動作することを確認します。 ロールが正しくフェールオーバーされる必要があります。 クラスターで VM のライブ マイグレーションが使用されている場合、VM は正常にライブマイグレーションされます。
クラスター検証を実行し、クラスター検証レポートを調べることで、クラスターを検証します。 管理者特権の PowerShell セッションで、次のコマンドを実行します。
Test-Cluster