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