製品移行

製品を移行すると、SLEベースのクライアントシステムをサービスパック(SP)レベルから最新版にアップグレードできます。 たとえば、SUSE Linux Enterprise 15 SP1をSUSE Linux Enterprise 15 SP2に移行できます。

openSUSE Leapを新しいマイナーバージョンまたは対応するSLE SPレベルに移行することもできます。次に例を示します。

  • openSUSE Leap 15.1から15.2、または

  • openSUSE Leap 15.1からSUSE Linux Enterprise 15 SP1、または

  • openSUSE Leap 15.4からSUSE Linux Enterprise 15 SP4

移行中、SUSE Managerは、インストール前に必要なライセンス(EULA)を自動的に受け入れます。

SUSE Linux Enterprise 12以降では、SUSE Customer Centerがサービスパックを提供している場合、SUSEはサービスパックのスキップをサポートしています。 たとえば、SUSE Linux Enterprise 15からSP2にアップグレードできます。SP1はインストールされません。 サポートされているSUSE Linux Enterpriseのアップグレードパスは、https://documentation.suse.com/sles/15-SP3/html/SLES-all/cha-upgrade-paths.html#sec-upgrade-paths-supportedを参照してください。

製品の移行は、同じメジャーバージョン内でアップグレードするためのものです。 SUSE Linux Enterprise 12からSUSE Linux Enterprise 15への移行には、製品の移行は使用できません。 メジャーアップグレードの詳細については、client-configuration :client-upgrades-major.adocを参照してください。

製品の移行にはロールバック機能はありません。 移行プロシージャが始まると、ロールバックできません。 万一に備えて、作業システムのバックアップを用意してください。

1. 移行の実行

製品の移行を開始する前に:

  • 保留中の更新やパッチがないことを確認してください。 クライアントシステムの詳細  概要ページの[システムステータス ]を確認し、提供されているすべての更新またはパッチをインストールします。 クライアントシステムが最新でない場合、製品移行が失敗する可能性があります。

  • ターゲット製品のすべてのチャンネルが完全に同期されていることを確認してください。 Web UIで同期ステータスを確認するには、管理  セットアップウィザード  製品ページに移動します。

プロシージャ: 移行の実行
  1. システム  概要ページからクライアントを選択します。

  2. クライアントのシステム詳細ページから、ソフトウェア  製品移行タブに移動します。

  3. ターゲットの移行パスを選択し、チャンネルの選択をクリックします。

  4. 製品移行 - チャンネル]ページから、正しいベースチャンネルを選択し、必須の子チャンネルおよび追加のオプション子チャンネルを含めます。

  5. オプション: [ベンダー変更を許可する]にチェックを付け、ベンダを変更したパッケージをインストールできるようにします。 チェックを付けると、移行の開始前に詳細を示す通知が表示されます。

    openSUSE LeapをSUSE Linux Enterpriseに移行するには、[ベンダー変更を許可する]オプションにチェックを付ける必要があります。

  6. チャンネルを正しく設定したら移行のスケジュールをクリックします。

2. 製品の大量移行

多数のクライアントを次のSPバージョンに移行する場合、SUSE Manager APIコールを使用できます。

製品の大量移行操作は危険です。 システムを誤ってアップグレードしないように注意してください。 プロセスは徹底的にテストする必要があります。 少なくとも、最初に予行演習を行ってください。

spacecmdコマンドラインツールは、system_scheduleproductmigrationサブコマンドを提供します。 このコマンドを使用して、多数のクライアントの次のマイナーバージョンへの移行をスケジュールできます。

system_scheduleproductmigrationの構文の使用方法とオプションを表示するには、次のコマンドを実行します。

spacecmd system_scheduleproductmigration help

2.1. 製品の大量移行の実行

手順: 製品の大量移行の実行
  1. 実行可能な移行ターゲットをリストし、移行するシステムIDをメモします。

    spacecmd api -- system.listMigrationTargets -A 1000010001
  2. それぞれのシステムIDに対して、listMigrationTargetを呼び出し、目的の製品が使用可能であることを確認します。

    • システムIDに使用可能なターゲットがある場合は、system.scheduleProductMigrationを呼び出します。

    • 目的のターゲットを使用できない場合、そのシステムをスキップします。

次のテンプレートを環境に合わせます。

target = '[....]'
basechannel = 'channel-label'
 system_ids = [1, 2, 3]

session = auth.login(user, pass)
for system in system_ids
  if system.listMigrationTargets(session, system).ident == target
    system.scheduleProductMigration(session, system, target, basechannel, [], False, <now>)
  else
    print "Cannot migrate to requested target -- skipping system"
  endif
endfor

2.2. 製品の大量移行の例: SLES 15 SP2からSLES 15 SP3

この例では、大量移行を容易にするためにグループが一時的に作成されます。

プロシージャ: 製品の大量移行グループの作成
  1. SUSE ManagerのWeb UIで、システム  システムグループに移動し、グループの作成をクリックします。

  2. グループにmpm-target-sles15sp3という名前を付けます。

同じベースチャンネルにサブスクライブしているシステムのみを、作成したグループに追加する必要があります。 この例では、SLE-Product-SLES15-SP2-Poolforx86_64にサブスクライブされているシステムのみがグループに追加されました。

この時点でアップグレードする予定のないシステムは、グループから削除する必要があります。

プロシージャ: グループへのシステムの追加
  1. グループへのクライアントの追加の詳細については、client-configuration:system-groups.adoc#_add_clients_to_groupsを参照してください。

spacecmdサブコマンドsystem_scheduleproductmigration abd system_listmigrationtargetsは、グループの一部であるすべてのシステムをループしています。 グループに100のシステムがある場合、100のアクションがスケジュールされていることがわかります。 グループ内のすべてのシステムが同じ「移行ターゲット」をサポートすることが重要です。

次のコマンドを実行すると、グループ内のすべてのシステムのターゲットが取得されます。

spacecmd -- system_listmigrationtargets group:mpm-target-sles15sp3

すべてのシステムについて報告されるターゲットのみを選択してください。 このコマンドは、「ID」の文字列を出力します。 文字列は、他のコマンドのMIGRATIONTARGETの識別子です。

プロシージャ: 大量移行コマンドの実行
  1. この例では、グループmpm-target-sles15sp3内のすべてのシステムをSLES 12 SP2からSLES 15 SPにアップグレードするには、コマンドラインで次のように入力します。

    spacecmd -- system_scheduleproductmigration group:mpm-target-sles15sp3 \
        sle-product-sles15-sp3-pool-x86_64 [190,203,195,1242] -d

system_scheduleproductmigrationコマンドの構文は次のとおりです。

spacecmd -- system_scheduleproductmigration <SYSTEM> <BASE_CHANNEL_LABEL> \
    <MIGRATION_TARGET> [options]

詳細については、spacecmd — system_scheduleproductmigration helpを参照してください。

2.3. 必須の構文

<SYSTEM>

この例では、作成したグループを使用して、そのグループからすべてのシステムを選択します。

group:mpm-target-sles15sp3
<BASE_CHANNEL_LABEL>

これは、ターゲットベースチャンネルのラベルです。 この場合、システムはSLES 15 SP3にアップグレードされており、ラベルはsle-product-sles15-sp3-pool-x86_64です。

現在ミラーリングされているすべてのベースチャンネルのリストを表示するには、次のコマンドを実行します。

spacecmd softwarechannel_listbasechannels.

現在のベースチャンネルで使用可能なターゲットでない限り、チャンネルにアップグレードできないことに注意してください。

<MIGRATION_TARGET>

グループgroup:mpm-target-sles15sp3内のシステムのこの値を特定するには、次のコマンドを実行します。

spacecmd -- system_listmigrationtargets group:mpm-target-sles15sp3

MIGRATION_TARGETパラメータは、次の形式で渡す必要があります。

[190,203,195,1242]
オプション
  1. -s (開始時刻)

  2. -d 予行演習モード (実際には処理を行わない) (実際の移行の前に予行演習を行うことを推奨)

  3. -c (子チャンネル) (カンマ区切りで子チャンネルのラベルを指定する 。空白は使用しないこと)

    この場合、「-d」オプションが含まれています。このオプションは予行演習が成功した後に削除できます。

成功した場合は、スケジュールされたシステムごとに次のコマンド出力が表示されます。

  1. システムmpm-sles152-1の製品移行のスケジューリング

  2. スケジュールされたアクションID: 66

グループ内の特定のシステムのWeb UIで、アクション (この場合は予行演習)を追跡することもできます。 クライアントのシステム詳細ページから、イベント  履歴に移動します。 予行演習中に障害が発生した場合は、システムを調査する必要があります。

すべて問題がなければ、コマンドから「-d」オプションを削除して、実際の移行を実行できます。移行が完了したら、SUSE Manager Web UIからシステムを再起動できます。