フェールオーバー クラスター インスタンスのアップグレード
適用対象: SQL Server
SQL Server は、新しいバージョンの SQL Server、新しい SQL Server サービス パック、または累積的な更新プログラムへのフェールオーバー クラスターのアップグレードをサポートし、すべてのフェールオーバー クラスター ノード上での新しい Windows サービス パックや累積的な更新プログラムへのインストール時には、ダウンタイムを単一の手動フェールオーバー (元のプライマリへのフェールバックの場合は 2 個の手動フェールオーバー) に限定します。
フェールオーバー クラスター インスタンスを含むノードの Windows Server オペレーティング システムのアップグレードは、Windows Server 2012 R2 より前のオペレーティング システムではサポートされていません。 Windows Server 2012 R2 以降のバージョンで実行されている Windows Server フェールオーバー クラスター ノードをアップグレードするには、「ローリング アップグレードまたは更新の実行」を参照してください。
サポートの詳細は、次のとおりです。
ユーザー インターフェイスとコマンド プロンプトの両方からの SQL Server アップグレードがサポートされています。 各フェールオーバー クラスター ノードでコマンド プロンプトからアップグレードを実行するか、SQL Server セットアップ UI を使用して各クラスター ノードをアップグレードできます。 詳細については、次を参照してください。
新しい SQL Server フェールオーバー クラスター インスタンスを作成する
以下のシナリオは、SQL Server アップグレードの一部としてはサポートされていません。
SQL Server のスタンドアロン インスタンスからフェールオーバー クラスター インスタンスにアップグレードすることはできません。
フェールオーバー クラスター インスタンスに機能を追加することはできません。 たとえば、既存の Analysis Services 専用フェールオーバー クラスター インスタンスにデータベース エンジンを追加することはできません。
フェールオーバー クラスター インスタンスを、Windows Server フェールオーバー クラスターのいずれかのノード上のスタンドアロン インスタンスにダウングレードすることはできません。
フェールオーバー クラスター インスタンスのエディションの変更は、特定のシナリオに制限されています。 詳細については、「サポートされているバージョンとエディションのアップグレード (SQL Server 2016)」を参照してください。
フェールオーバー クラスター インスタンスのアップグレードにおけるダウンタイムは、フェールオーバー時間およびアップグレード スクリプトの実行に必要な時間のみです。 このフェールオーバー クラスター インスタンスのローリング アップグレード プロセスに従い、さらに、すべてのノードですべての前提条件を満たしてから、アップグレード プロセスを開始すると、ダウンタイムは最小限に抑えられます。 メモリ最適化テーブルを使用している場合の SQL Server のアップグレードには、余分な時間がかかります。 詳細については、「データベース エンジンのアップグレード計画の策定およびテスト」を参照してください。
前提条件
作業を開始する前に、次の重要な情報を確認してください。
サポートされるバージョンとエディションのアップグレード (SQL Server 2016): お使いの Windows オペレーティング システムのバージョンと SQL Server のバージョンから目的の SQL Server のバージョンにアップグレードできることを確認します。 たとえば、SQL Server 2005 フェールオーバー クラスタリング インスタンスから SQL Server 2014 (12.x) に直接アップグレードしたり、Windows Server 2003 上で実行されているフェールオーバー クラスターをアップグレードしたりすることはできません。
データベース エンジンのアップグレード方法の選択: サポートされているバージョンとエディションのアップグレードを確認した結果に基づいて、適切なアップグレードの方法と手順を選択します。また、自分の環境にインストールされているその他のコンポーネントに基づいて、正しい順序でコンポーネントをアップグレードします。
データベース エンジンのアップグレード計画の策定およびテスト: リリース ノート、アップグレードに関する既知の問題、アップグレード前のチェックリストを確認して、アップグレードの計画を策定してテストします。
SQL Server 2016 および 2017: ハードウェアおよびソフトウェアの要件: SQL Server をインストールするためのソフトウェア要件を確認します。 追加のソフトウェアが必要な場合は、アップグレード プロセスを開始する前に、各ノードにそれをインストールし、ダウンタイムを最小限に抑えます。
ローリング アップグレードまたは更新の実行
SQL Server フェールオーバー クラスター インスタンスにアップグレードするには、SQL Server セットアップを使用し、フェールオーバー クラスター インスタンスに関与している各ノードをパッシブ ノードから始めて、一度に 1 つずつアップグレードします。 各ノードをアップグレードすると、そのノードはフェールオーバー クラスター インスタンスの実行可能な所有者から除外されます。 セットアップにより Windows Server フェールオーバー クラスター ロールの所有権がアップグレード済みのノードに移動するまでは、予期しないフェールオーバーが発生した場合でも、アップグレード済みのノードはフェールオーバーに関与しません。
既定では、アップグレード済みのノードにフェールオーバーする時期は、 SQL Server セットアップにより自動的に決まります。 この決定は、フェールオーバー クラスター インスタンス内のノードの合計数とアップグレード済みのノードの数に基づいて行われます。 ノードの半数以上がアップグレード済みである場合、利用者が次のノード上のアップグレードを実行すると、SQL Server セットアップは、アップグレード済みのノードへのフェールオーバーを発生させます。 アップグレード済みのノードにフェールオーバーする際、クラスター グループはアップグレード済みのノードに移動します。 すべてのアップグレード済みノードは実行可能な所有者リストに記載され、まだアップグレードされていないすべてのノードは実行可能な所有者リストから削除されます。 残りの各ノードをアップグレードすると、それはフェールオーバー クラスター インスタンスの実行可能な所有者に追加されます。
ダウンタイムでのこのプロセス結果は、1 回のフェールオーバー時間、および全フェールオーバー クラスター アップグレード時のデータベース アップグレード スクリプトの実行時間に限定されます。
アップグレード プロセス中にクラスター ノードのフェールオーバーの動作を制御するには、コマンド プロンプトでアップグレード操作を実行して、/FAILOVERCLUSTERROLLOWNERSHIP パラメーターを使用します。 詳細については、「コマンド プロンプトからの Windows 上の SQL Server のインストールと構成」を参照してください。
インストール メディアを使用したアップグレード
アップグレードするエディションと一致するエディションの SQL Server インストール メディアで、ルート フォルダーの setup.exe をダブルクリックします。 前提条件がまだインストールされていない場合は、それらをインストールするように求められる場合があります。
必須コンポーネントがインストールされると、インストール ウィザードによって SQL Server インストール センターが起動します。 SQL Serverの既存のインスタンスをアップグレードするには、インスタンスを選択します。
SQL Server セットアップ サポート ファイルが必要な場合は、 SQL Server セットアップによってインストールされます。 コンピューターを再起動するように指示された場合は、続行する前に再起動してください。
システム構成チェッカーにより、コンピューターで検出処理が実行されます。 続行するには、 [OK] を選択します。
[プロダクト キー] ページで、以前の製品バージョンのエディションに一致する新しいバージョンのエディション用の PID キーを入力します。 たとえば、エンタープライズ フェールオーバー クラスターをアップグレードするには、SQL Server Enterprise エディションの PID キーを入力する必要があります。 [次へ] を選択して続行します。 フェールオーバー クラスターのアップグレードに使用する PID キーは、同じ SQL Server インスタンス内のすべてのフェールオーバー クラスター ノードで一貫している必要があります。
[ライセンス条項] ページで使用許諾契約書を読み、使用許諾条件に同意する場合は対応するチェック ボックスをオンにします。 SQL Serverの機能向上に役立てるため、機能の使用状況オプションを有効にしてレポートを Microsoftに送信することもできます。 [次へ] をクリックして次に進みます。 設定を完了するには、 [キャンセル] を選択します。
[インスタンスの選択] ページで、アップグレードする SQL Server インスタンスを指定します。 [次へ] をクリックして次に進みます。
[機能の選択] ページでは、アップグレードする機能があらかじめ選択されています。 機能名を選択すると、右側のペインに各コンポーネント グループの説明が表示されます。 アップグレードされる機能を変更することはできず、アップグレード操作中に機能を追加することもできません。 アップグレード操作の完了後に、アップグレードされた SQL Server 2014 (12.x) のインスタンスに機能を追加するには、「SQL Server のインスタンスへの機能の追加 (セットアップ)」を参照してください。
選択した機能の必須コンポーネントが、右側のペインに表示されます。 SQL Server セットアップでは、この手順の後半で説明するインストール手順の間に、まだインストールされていない前提条件がインストールされます。 時間を節約するには、各ノードにこれらの前提条件を事前インストールしておく必要があります。
フィールドが [インスタンスの構成] ページで以前のインスタンスから自動的に生成されます。 新しい InstanceID 値を指定することもできます。
[インスタンス ID] : 既定では、インスタンス名がインスタンス ID として使用されます。 これは、 SQL Serverのインスタンスのインストール ディレクトリとレジストリ キーを識別するために使用されます。 これは、既定のインスタンスの場合も名前付きインスタンスの場合も同様です。 既定のインスタンスの場合、インスタンス名とインスタンス ID は、MSSQLSERVER になります。 既定以外のインスタンス ID を使用するには、 [インスタンス ID] チェック ボックスをオンにして、値を指定します。 既定値をオーバーライドする場合、すべてのフェールオーバー クラスター ノードでアップグレードされたものと同じインスタンス ID を指定する必要があります。 アップグレード済みインスタンスのインスタンス ID は、すべてのノードに一致している必要があります。
[検出されたインスタンスと機能] : セットアップを実行中のコンピューター上にある SQL Server のインスタンスがグリッドに表示されます。 [次へ] をクリックして次に進みます。
[必要なディスク領域] ページでは、指定した機能に必要なディスク領域が計算され、セットアップを実行中のコンピューター上の空き領域と比較されます。
[フルテキスト検索アップグレード] ページで、アップグレードするデータベースのアップグレード オプションを指定します。 詳細については、「フルテキスト検索のアップグレード」を参照してください。
[エラー レポート] ページで、SQL Server の改善を手助けするために Microsoft に送信したい情報を指定します。 既定では、エラー レポートのオプションは有効になっています。
システム構成チェッカーは、アップグレード操作が開始される前に、別のルール セットを実行して、利用者が指定した SQL Server 機能に関するコンピューター構成を検証します。
フェールオーバー クラスター インスタンス内のノードの一覧、および各ノードの SQL Server コンポーネントのインスタンスのバージョン情報が [クラスター アップグレード レポート] ページに表示されます。 また、データベース スクリプト状態およびレプリケーション スクリプト状態が表示されます。 さらに、[次へ] を選択したときに何が起こるかについての情報メッセージも表示されます。 アップグレード済みのフェールオーバー クラスター ノードの数とノードの合計数に応じて、セットアップは [次へ] を選択したときに発生するフェールオーバー動作を表示します。 また、前提条件をまだインストールしていない場合に起こり得る不要なダウンタイムについての警告も表示されます。
[アップグレードの準備完了] ページには、セットアップで指定したインストール オプションのツリー ビューが表示されます。 続行するには、[アップグレード] を選択します。 SQL Server セットアップは、選択された機能に必要な前提条件を最初にインストールし、その後で該当機能をインストールします。
アップグレード中は、セットアップの進行に合わせてアップグレードの進行状況を監視できるように、[進行状況] ページに状態が表示されます。
現在のノードでアップグレードが終了すると、すべてのフェールオーバー クラスター ノード、各フェールオーバー クラスター ノードの機能、およびそのバージョン情報に関するアップグレード状態の情報が [クラスター アップグレード レポート] ページに表示されます。 表示されたバージョン情報を確認し、残りのノードでのアップグレードを続行します。 アップグレードしたノードでフェールオーバーが発生した場合は、状態ページを確認する作業も必要になります。 Windows クラスター アドミニストレーターのツールを使用して確認することもできます。
アップグレードが終了すると、[完了] ページにインストールの概要ログ ファイルへのリンクと、その他の重要な注意事項が表示されます。 SQL Server のインストール プロセスを完了するには、 [閉じる] を選択します。
コンピューターの再起動を求めるメッセージが表示されたら、再起動してください。 セットアップが完了したら、インストール ウィザードからのメッセージを読むことが重要です。 セットアップ ログ ファイルの詳細については、「 SQL Server セットアップ ログ ファイルの表示と読み取り」を参照してください。
アップグレード プロセスを完了するには、SQL Server フェールオーバー クラスター インスタンスの他のすべてのノードで、これらの手順を繰り返します。
マルチサブネット フェールオーバー クラスター インスタンスをアップグレードする
マルチサブネット環境で Always On フェールオーバー クラスター インスタンスをアップグレードするには、次の手順に従います。
SQL Server マルチサブネット フェールオーバー クラスター インスタンスへアップグレードする (既存の SQL Server クラスターがマルチサブネット クラスターではない場合)
上記の手順に従って、フェールオーバー クラスター インスタンスをアップグレードします。
AddNode セットアップ アクションを使用して別のサブネット上に新しいノードを追加するには、 [クラスター ネットワークの構成] ページで IP アドレス リソースの依存関係が OR になっていることを確認します。 詳細については、Always On フェールオーバー クラスター インスタンスでのノードの追加または削除 (セットアップ) に関するページを参照してください。
現在、Stretch VLAN を使用しているマルチサブネット フェールオーバー クラスター インスタンスがマルチサブネットを使用するようにアップグレードする
上記の手順に従って、クラスターをアップグレードします。
ネットワーク設定を変更し、リモート ノードを別のサブネットに移動します。
フェールオーバー クラスター マネージャーまたは PowerShell を使用して新しいサブネットに新しい IP アドレスを追加して、IP アドレス リソースの依存関係を OR に設定します。