29 クラスタアップグレードとソフトウェアパッケージの更新 #
この章では、次の2つの異なるシナリオ(SUSE Linux Enterprise High Availabilityの別バージョン(メジャーリリースまたはサービスパック)へのクラスタアップグレード、およびクラスタノード上の各パッケージの更新について説明します。29.2項 「最新の製品バージョンへのクラスタアップグレード」および29.3項 「クラスタノード上のソフトウェアパッケージの更新」を参照してください。
クラスタをアップグレードする場合、アップグレードを開始する前に、29.2.1項 「SLE HAおよびSLE HA Geoでサポートされるアップグレードパス」および29.2.2項 「アップグレード前に必要な準備」を確認してください。
29.1 用語集 #
次に、この章で使用される最も重要な用語の定義を示します。
- メジャーリリース, 一般出荷(GA)バージョン
メジャーリリースとは、新しい機能やツールを導入し、非推奨になっていたコンポーネントを削除した、新しい製品バージョンです。これには、後方互換性のない変更が存在します。
- クラスタオフラインアップグレード
新しい製品バージョンに後方互換性のない大きな変更が含まれている場合は、クラスタオフラインアップグレードによってクラスタをアップグレードする必要があります。すべてのノードをオンラインに戻す前に、すべてのノードをオフラインにして、クラスタ全体をアップグレードする必要があります。
- クラスタローリングアップグレード
クラスタローリングアップグレードでは、1度に1つのクラスタノードがアップグレードされ、残りのクラスタはまだ実行されています。最初のノードをオフラインにし、アップグレードして、オンラインに戻してから、クラスタに参加させます。その後、すべてのクラスタノードがメジャーバージョンにアップグレードされるまで、1つずつアップグレードを続けます。
- サービスパック(SP)
複数のパッチを組み合わせて、インストールまたは展開しやすい形式にします。サービスパックには番号が付けられ、通常、プログラムのセキュリティ修正、更新、アップグレード、または拡張機能が含まれます。
- この状態から
新しいマイナーバージョンのパッケージのインストールです。通常、セキュリティの修正やその他の重要な修正が含まれています。
- アップグレード
パッケージまたは配布の新しい主要バージョンのインストール。これにより新機能がもたらされます。クラスタオフラインアップグレードおよびクラスタローリングアップグレードも参照してください。
29.2 最新の製品バージョンへのクラスタアップグレード #
サポートされるアップグレードパスおよびアップグレードの実行方法は、現在の製品バージョンおよび移行したいターゲットバージョンによって異なります。
SUSE Linux Enterprise High Availabilityには、基盤となる基本システムと同じサポートされているアップグレードパスがあります。完全な概要については、『SUSE Linux Enterprise Serverアップグレードガイド』のセクションSupported Upgrade Paths to SUSE Linux Enterprise Server 15 SP6を参照してください。
また、高可用性クラスタスタックはクラスタをアップグレードするための2つの方法を提供するため、次のルールが適用されます。
クラスタローリングアップグレード. クラスタローリングアップグレードは、同じメジャーリリース内(あるサービスパックから次のサービスパックへ、または製品のGAバージョンからSP1へ)でのみサポートされます。
クラスタオフラインアップグレード. あるメジャーリリースから次のメジャーリリース(たとえば、SSLE HA 12からSLE HA 15など)、または特定のメジャーリリース内のサービスパックから次のメジャーリリース(たとえば、SLE HA 12 SP3からSLE HA 15)へアップグレードするには、クラスタオフラインアップグレードが必要です。
29.2.1項には、SLE HA (Geo)のサポートされている(あるバージョンから次のバージョンへの)アップグレードパスおよび方法が一覧表示されています。列For Detailsには、参照する必要がある特定のアップグレードドキュメント(基本システムとGeo Clustering for SUSE Linux Enterprise High Availabilityも含まれます)が一覧表示されています。このマニュアルは以下から入手できます。
SUSE Linux Enterprise High Availability 12/SUSE Linux Enterprise High Availability 15で実行する混合クラスタはサポートされていません。
製品バージョン15へのアップグレードプロセス後に、製品バージョン12に戻す処理は、サポートされていません。
29.2.1 SLE HAおよびSLE HA Geoでサポートされるアップグレードパス #
アップグレード元とアップグレード先 |
アップグレードパス |
詳細情報の参照先 |
---|---|---|
SLE HA 11 SP3から SLE HA (Geo) 12 |
クラスタオフラインアップグレード |
|
SLE HA (Geo) 11 SP4からSLE HA (Geo) 12 SP1 |
クラスタオフラインアップグレード |
|
SLE HA (Geo) 12からSLE HA (Geo) 12 SP1 |
クラスタローリングアップグレード |
|
SLE HA (Geo) 12 SP1からSLE HA (Geo) 12 SP2 |
クラスタローリングアップグレード |
|
SLE HA (Geo) 12 SP2からSLE HA (Geo) 12 SP3 |
クラスタローリングアップグレード |
|
SLE HA (Geo) 12 SP3からSLE HA (Geo) 12 SP4 |
クラスタローリングアップグレード |
|
SLE HA (Geo) 12 SP3からSLE HA 15 |
クラスタオフラインアップグレード |
|
SLE HA (Geo) 12 SP4からSLE HA (Geo) 12 SP5 |
クラスタローリングアップグレード |
|
SLE HA (Geo) 12 SP4からSLE HA 15 SP1 |
クラスタオフラインアップグレード |
|
SLE HA (Geo) 12 SP5からSLE HA 15 SP2 |
クラスタオフラインアップグレード |
|
SLE HA 15からSLE HA 15 SP1 |
クラスタローリングアップグレード |
|
SLE HA 15 SP1からSLE HA 15 SP2 |
クラスタローリングアップグレード |
|
SLE HA 15 SP2からSLE HA 15 SP3 |
クラスタローリングアップグレード |
|
SLE HA 15 SP3からSLE HA 15 SP4 |
クラスタローリングアップグレード |
|
SLE HA 15 SP4からSLE HA 15 SP5 |
クラスタローリングアップグレード |
|
最も単純なアップグレードパスは、すべてのサービスパックを連続してインストールすることです。SUSE Linux Enterprise 15製品ライン(GAおよび次のサービスパック)の場合、アップグレード時に1つのサービスパックをスキップすることもサポートされています。たとえば、SLE HA 15 GAからSLE HA 15 SP2へのアップグレードや、SLE HA 15 SP1からSLE HA 15 SP3へのアップグレードがサポートされます。
29.2.2 アップグレード前に必要な準備 #
- バックアップ
システムバックアップが最新で、復元可能かどうかを確認します。
- テスト
運用環境で実行する前に、まず、クラスタセットアップのステージングインスタンスでアップグレード手順をテストします。これにより、メンテナンス期間に要するタイムフレームを予測できます。予期しない問題を検出し、解決するのにも役立ちます。
29.2.3 クラスタオフラインアップグレード #
この項は次のシナリオに適用されます。
SLE HA 11 SP3からSLE HA 12へのアップグレード - 詳細については、手順29.1「製品バージョン11から12へのアップグレード: クラスタオフラインアップグレード」を参照してください。
SLE HA 11 SP4からSLE HA 12 SP1へのアップグレード - 詳細については、手順29.1「製品バージョン11から12へのアップグレード: クラスタオフラインアップグレード」を参照してください。
SLE HA 12 SP3からSLE HA 15へのアップグレード - 詳細については、手順29.2「製品バージョン12から15へのアップグレード: クラスタオフラインアップグレード」を参照してください。
SLE HA 12 SP4からSLE HA 15 SP1へのアップグレード - 詳細については、手順29.2「製品バージョン12から15へのアップグレード: クラスタオフラインアップグレード」を参照してください。
SLE HA 12 SP5からSLE HA 15 SP2へのアップグレード - 詳細については、手順29.2「製品バージョン12から15へのアップグレード: クラスタオフラインアップグレード」を参照してください。
クラスタがまだこれらより古い製品バージョンに基づいている場合は、まず、必要なターゲットバージョンにアップグレードするためのソースとして使用できるバージョンのSLESおよびSLE HAにクラスタをアップグレードします。
SUSE Linux Enterprise High Availability 12クラスタスタックでは、さまざまなコンポーネントに大幅な変更が導入されています(たとえば、/etc/corosync/corosync.conf
、OCFS2のディスクフォーマットなど)。したがって、SUSE Linux Enterprise High Availability 11バージョンからのcluster rolling upgrade
はサポートされません。代わりに、次に示すように、すべてのクラスタノードをオフラインにしてから、クラスタ全体をアップグレードする必要があります。
各クラスタノードにログインし、次のコマンドを使用してクラスタスタックを停止します。
#
rcopenais stop
クラスタノードごとに、目的のターゲットバージョンのSUSE Linux Enterprise ServerおよびSUSE Linux Enterprise High Availabilityへのアップグレードを実行します。29.2.1項 「SLE HAおよびSLE HA Geoでサポートされるアップグレードパス」を参照してください。
アップグレードプロセスが完了した後で、SUSE Linux Enterprise ServerおよびSUSE Linux Enterprise High Availabilityのアップグレード済みバージョンがインストールされた各ノードを再起動します。
クラスタセットアップでOCFS2を使用する場合は、次のコマンドを実行して、オンデバイス構造をアップデートします。
#
o2cluster --update PATH_TO_DEVICE
追加のパラメータがディスクに追加されます。これらのパラメータは、SUSE Linux Enterprise High Availability 12および12 SPxに付属している更新されたOCFS2バージョンで必要になります。
Corosyncバージョン2の
/etc/corosync/corosync.conf
をアップデートするには:1つのノードにログインして、YaSTクラスタモジュールを起動します。
手順4.1「最初の通信チャネルの定義(マルチキャスト)」または手順4.2「最初の通信チャネルの定義(ユニキャスト)」をそれぞれ参照してください。
カテゴリに切り替えて、新しいパラメータ( および )の値を入力します。詳細については、Corosyncバージョン2で無効になっていたり、見つからない他のオプションをYaSTが検出する場合、変更を求めるプロンプトが表示されます。
YaSTで変更内容を確認します。YaSTはこれらの内容を
/etc/corosync/corosync.conf
に書き込みます。クラスタに対してCsync2が設定されている場合は、次のコマンドを使用して、アップデートされたCorosync設定を他のクラスタノードにプッシュします。
#
csync2 -xv
Csync2の詳細については、4.7項 「すべてのノードへの設定の転送」を参照してください。
または、
/etc/corosync/corosync.conf
をすべてのクラスタノードに手動でコピーして、更新されたCorosync設定の同期を取ります。
各ノードにログインして、次のコマンドを使用してクラスタスタックを起動します。
#
crm cluster start
crm status
またはHawk2を使用してクラスタの状態を確認します。ブート時に起動するように以下のサービスを設定します。
#
systemctl enable pacemaker
#
systemctl enable hawk
#
systemctl enable sbd
新しい機能は、最新のCIB構文バージョンでのみ使用可能な場合もあります。新しい製品バージョンにアップグレードした場合でも、デフォルトではCIB構文バージョンはアップグレードされません。
バージョンをチェックします。
cibadmin -Q | grep validate-with
最新のCIB構文バージョンにアップグレードします。
#
cibadmin --upgrade --force
クラスタノードを(アップグレードするのではなく)最初からインストールすることにした場合、SUSE Linux Enterprise High Availability 15 SP6に必要なモジュールのリストについては、2.2項 「ソフトウェアの必要条件」を参照してください。モジュール、拡張機能、および関連製品の詳細については、SUSE Linux Enterprise Server 15のリリースノートを確認してください。これらは、https://www.suse.com/releasenotes/から入手できます。
SUSE Linux Enterprise High Availability 15へのオフラインアップグレードを開始する前に、注記: CIB構文バージョンのアップグレードの説明に従って現在のクラスタでCIB構文を手動でアップグレードしてください。
各クラスタノードにログインし、次のコマンドを使用してクラスタスタックを停止します。
#
crm cluster stop
クラスタノードごとに、目的のターゲットバージョンのSUSE Linux Enterprise ServerおよびSUSE Linux Enterprise High Availabilityへのアップグレードを実行します。29.2.1項 「SLE HAおよびSLE HA Geoでサポートされるアップグレードパス」を参照してください。
アップグレードプロセスが完了した後で、SUSE Linux Enterprise ServerおよびSUSE Linux Enterprise High Availabilityのアップグレード済みバージョンがインストールされた各ノードにログインして起動します。
Cluster LVMを使用する場合は、clvmdからlvmlockdに移行する必要があります。
lvmlockd
のマニュアルページのセクション「changing a clvm VG to a lockd VG」および「24.4項 「Mirror LVからCluster MDへのオンラインマイグレーション」」を参照してください。クラスタノードにログインして、すべてのノードでクラスタスタックを起動します。
#
crm cluster start --all
注記:--all
オプションはバージョン15 SP4でのみ使用可能--all
オプションは、SUSE Linux Enterprise High Availability 15 SP4で追加されました。以前のバージョンでは、各ノードでcrm cluster start
コマンドを1つずつ実行する必要があります。crm status
またはHawk2を使用してクラスタの状態を確認します。
29.2.4 クラスタローリングアップグレード #
この項は次のシナリオに適用されます。
SLE HA 12からSLE HA 12 SP1へのアップグレード
SLE HA 12 SP1からSLE HA 12 SP2へのアップグレード
SLE HA 12 SP2からSLE HA 12 SP3へのアップグレード
SLE HA 12 SP3からSLE HA 12 SP4へのアップグレード
SLE HA 12 SP4からSLE HA 12 SP5へのアップグレード
SLE HA 15からSLE HA 15 SP1へのアップグレード
SLE HA 15 SP1からSLE HA 15 SP2へのアップグレード
SLE HA 15 SP2からSLE HA 15 SP3へのアップグレード
SLE HA 15 SP3からSLE HA 15 SP4へのアップグレード
SLE HA 15 SP4からSLE HA 15 SP5へのアップグレード
シナリオに合わせて次の手順のいずれかを使用します。
ノードのアップグレードを開始する前に、「そのノード上の」クラスタスタックを「停止」します。
ソフトウェアの更新中にノード上のクラスタリソースマネージャがアクティブな場合、アクティブノードのフェンシングのような結果を招く場合があります。
最新の製品バージョンに装備されている新機能は、「すべての」クラスタノードが最新の製品バージョンにアップグレードされた後でないと使用できません。混合バージョンのクラスタは、クラスタローリングアップグレード中の短いタイムフレームでのみサポートされます。クラスタローリングアップグレードは1週間以内に完了してください。
すべてのオンラインノードでアップグレードされたバージョンが実行される場合、古いバージョンの他のノードはアップグレードせずに(再)参加できなくなります。
アップグレードするノードで
root
としてログインし、クラスタスタックを停止します。#
crm cluster stop
目的のターゲットバージョンのSUSE Linux Enterprise ServerおよびSUSE Linux Enterprise High Availabilityへのアップグレードを実行します。個々のアップグレードプロセスの詳細を確認するには、29.2.1項 「SLE HAおよびSLE HA Geoでサポートされるアップグレードパス」を参照してください。
アップグレードしたノードでクラスタスタックを起動して、ノードをクラスタに再加入させます。
#
crm cluster start
次のノードをオフラインにし、そのノードに関して手順を繰り返します。
crm status
またはHawk2を使用してクラスタの状態を確認します。クラスタノードに異なるCRMバージョンが検出される場合、Hawk2の
画面に警告も表示されます。
最新の製品バージョンに装備されている新機能は、「すべての」クラスタノードが最新の製品バージョンにアップグレードされた後でないと使用できません。混合バージョンのクラスタは、ローリングアップグレード中の短いタイムフレームでのみサポートされます。ローリングアップグレードは1週間以内に完了してください。
クラスタノードに異なるCRMバージョンが検出される場合、Hawk2の
画面に警告も表示されます。多くのお客様は、インプレースアップグレードのほかに、次のサービスパックに移行する場合でも新規インストールを希望しています。次の手順は、ノードaliceおよびbobを含む2ノードクラスタを次のサービスパック(SP)にアップグレードするシナリオを示しています。
クラスタ設定のバックアップを作成します。次のリストに、最小ファイルセットを示します。
/etc/corosync/corosync.conf /etc/corosync/authkey /etc/sysconfig/sbd /etc/modules-load.d/watchdog.conf /etc/hosts /etc/ntp.conf
リソースに応じて、次のファイルが必要になる場合もあります。
/etc/services /etc/passwd /etc/shadow /etc/groups /etc/drbd/* /etc/lvm/lvm.conf /etc/mdadm.conf /etc/mdadm.SID.conf
ノードaliceから開始します。
ノードをスタンバイモードにします。これにより、リソースをノードから移動できます。
#
crm --wait node standby alice reboot
--wait
オプションを使用すると、このコマンドはクラスタが移行を終了してアイドル状態になるまで終了しません。reboot
オプションには、ノードがもう一度オンラインになったときにはスタンバイモードではなくなるという効果があります。その名前に反して、reboot
オプションはノードがオフラインまたはオンラインである限り機能します。ノードaliceでクラスタサービスを停止します。
#
crm cluster stop
この時点で、aliceには実行中のリソースはありません。ノードaliceをアップグレードし、その後に再起動します。クラスタサービスは起動時には開始されないことが想定されます。
バックアップファイルをステップ 1から元の場所にコピーします。
ノードaliceをクラスタに戻します。
#
crm cluster start
リソースに問題がないことを確認します。
ノードbobに対してステップ 2を繰り返します。
29.3 クラスタノード上のソフトウェアパッケージの更新 #
ノードのパッケージ更新を開始する前に、クラスタスタックが影響を受けるか否かによって、「そのノード上の」クラスタスタックを「停止」するか、「ノードを保守モード」にします。詳細についてはステップ 1を参照してください。
ソフトウェアの更新中にノード上のクラスタリソースマネージャがアクティブな場合、アクティブノードのフェンシングのような結果を招く場合があります。
ノード上にパッケージ更新をインストールする前に、次の内容を確認してください。
この更新は、SUSE Linux Enterprise High Availabilityに属するパッケージに影響しますか?
yes
の場合は、ソフトウェアの更新を開始する前に、ノード上でクラスタスタックを停止します。#
crm cluster stop
パッケージ更新には再起動が必要ですか。
yes
の場合は、ソフトウェアの更新を開始する前に、ノード上でクラスタスタックを停止します。#
crm cluster stop
これらの状況のいずれにも該当しない場合は、クラスタスタックを停止する必要はありません。その場合は、ソフトウェアの更新を開始する前に、ノードを保守モードにします。
#
crm node maintenance NODE_NAME
保守モードの詳細については、28.2項 「保守タスクのためのさまざまなオプション」を参照してください。
YaSTまたはZypperを使用してパッケージ更新をインストールします。
更新が正常にインストールされたら、次のいずれかを行います。
それぞれのノードでクラスタスタックを起動します(ステップ 1で停止した場合)。
#
crm cluster start
または、ノードの保守フラグを削除して、ノードを通常モードに戻します。
#
crm node ready NODE_NAME
crm status
またはHawk2を使用してクラスタの状態を確認します。
29.4 詳細の参照先 #
アップグレード先の製品の変更点と新機能の詳細については、それぞれのリリースノートを参照してください。リリースノートは、https://www.suse.com/releasenotes/で入手できます。