第4章 アップグレード後のタスク

本セクションで紹介する手順の一部はオプションです。お使いのインストールに関連する手順のみを選択できます。

PXE ベースの検出プロセスを使用する場合には、Satellite の ホスト > 検出されたホスト ページに表示させるホストで、Satellite または Capsule Server 上で Discovery アップグレードの手順を実行する必要があります。

4.1. Discovery のアップグレード

このセクションでは、PXE ブートを使用して Satellite Server に登録するホストに渡した PXELinux テンプレートとブートイメージをアップデートする方法を説明します。

Satellite 6.4 以降、プロビジョニングテンプレートには別途サブネットが関連付けられるので、対象のサブネットに対して TFTP Capsule を使用するように初期設定しないようにしてください。アップグレード後にサブネットを作成する場合には、特に Satellite また Capsule が Discovery テンプレートにプロキシーサービスを提供できるようにしてから、テンプレート Capsule を使用するように、検出されたホストで全ホストを設定する必要があります。

アップグレード中は、TFTP プロキシーが設定された各サブネットが有効化されている場合には、テンプレート Capsule を TFTP Capsule と同じに設定してください。アップグレード後には、すべてのサブネットでこれが正しく設定されていることを確認してください。

ホストで PXE ブートを使用しない場合には、Satellite に新規ホストを検出させるために、これらの手順は、必要ありません。

4.1.1. Satellite Server での Discovery のアップグレード

  1. Satellite Web UI で Discovery テンプレートをアップデートします。

    1. ホスト > プロビジョニングテンプレート に移動します。
    2. PXELinux global default 行で クローン をクリックします。
    3. 名前 フィールドに、テンプレートの新しい名前を入力します (例: ACME PXE global default)。
    4. テンプレートエディターフィールドで、ONTIMEOUT local 行を ONTIMEOUT discovery に変更し、送信 をクリックします。
    5. 管理 > 設定 に移動します。
    6. Global default PXELinux template をクリックします。
    7. 新しく作成したテンプレートの名前を選択し、チェックボタンをクリックします。
    8. ホスト > プロビジョニングテンプレート に移動します。
    9. PXE デフォルトのビルド をクリックして、OK をクリックします。
  2. Satellite Web UI で 設定 > 検出ルール に移動し、選択した組織および場所を検出ルールに関連付けます。

4.1.2. Capsule Server での Discovery のアップグレード

  1. Satellite Server で、Foreman Discovery パッケージが最新であることを確認します。

    # yum upgrade tfm-rubygem-foreman_discovery
  2. 以前の手順で更新があれば、Satellite サービスを再起動します。

    # foreman-maintain service restart
  3. 検出されたホストでプロビジョニングネットワークに接続した Satellite Capsule の Discovery イメージ、または検出されたホストに TFTP サービスを提供する Satellite Capsule の Discovery イメージをアップグレードします。

    # yum upgrade foreman-discovery-image
  4. 同じインスタンスに、Proxy サービスを提供するパッケージをインストールして、foreman-proxy サービスを再起動します。

    # yum install rubygem-smart_proxy_discovery
    # service foreman-proxy restart
  5. Satellite Web UI で、インフラストラクチャー > Capsule に移動して、関連する Capsule の機能コラムに Discovery が表示されていることを確認します。必要に応じて、アクション ドロップダウンメニューから 更新 を選択します。
  6. インフラストラクチャー > サブネット に移動し、検出を使用する各サブネットで以下を行います。

    1. サブネット名をクリックします。
    2. Capsule タブで、上で設定した Capsule に Discovery Capsule が設定されているのを確認します。

4.1.3. サブネットにテンプレート Capsule があることの確認

検出されたホストが含まれる全サブネットに、テンプレート Capsule が設定されていることを確認します。

  1. Satellite Web UI で、インフラストラクチャー > Capsule に移動します。
  2. 確認するサブネットを選択します。
  3. Capsule タブで、テンプレート Capsule が、このサブネットに設定されていることを確認します。

テンプレート Capsule を使用したサブネットの設定に関する詳細は、『Red Hat Satellite ホスト管理』ガイドの「Discovery サブネットの設定」を参照してください。

4.2. virt-who のアップグレード

Satellite または Capsule Server に virt-who がインストールされている場合は、Satellite または Capsule Server のアップグレード時に一緒にアップグレードされるため、追加の作業は必要ありません。virt-who を他の場所にインストールしている場合は、手動でアップグレードする必要があります。

作業開始前の準備

Satellite または Capsule Server に登録しているホストに virt-who がインストールされている場合は、最初にホストを、Satellite Tools リポジトリーで利用可能な最新パッケージにアップグレードします。ホストのアップグレードに関する詳細は「Satellite クライアントのアップグレード」を参照してください。

virt-who の手動アップグレード

  1. virt-who をアップグレードします。

    # yum upgrade virt-who
  2. virt-who サービスを再起動して、新しいバージョンを有効にします。

    # systemctl restart virt-who.service

4.3. 以前のバージョンの Satellite Tools リポジトリーの削除

Satellite 6.5 へのアップグレードが完了したら、コンテンツホストから Red Hat Satellite Tools 6.3 リポジトリーを削除して、無効にすることができます。

バージョン 6.4 の Satellite Tools リポジトリーを無効にします。

  1. Satellite Web UI で、コンテンツ > Red Hat サブスクリプション に移動します。
  2. 有効されたリポジトリー エリアで、Red Hat Satellite Tools 6.4 for RHEL 7 Server RPMs x86_64 を探し出します。
  3. 右側の 無効化 アイコンをクリックします。

リポジトリーがまだコンテンツビューに含まれている場合には、無効にできません。スケジュールされているタスクにより、無効にされたリポジトリーからパッケージが自動的に削除されます。

4.4. Upgrading the MongoDB Storage Engine

When you complete the upgrade, upgrade the MongoDB storage engine to WiredTiger. For more information about the WiredTiger storage engine, see WiredTiger Storage Engine in the MongoDB Manual.

前提条件

Before upgrading the storage engine, ensure that the following conditions exist:

  • Create a backup of the MongoDB storage.
  • Ensure that the /var/tmp directory has enough storage space to store the /var/lib/mongodb directory.
  • Optional: On high traffic Satellite environments, use MongoDB repair to reclaim disk space. For more information, see the KCS article How to compact MongoDB files and/or reclaim disk space in "/var/lib/mongodb" in Satellite 6?.
  • Optional: On high traffic Satellite environments, use MongoDB compact to reclaim disk space. For more information, see compact in MongoDB Manual.

Procedure

To upgrade the MongoDB storage engine, enter the following command:

# satellite-installer --upgrade-mongo-storage-engine

4.5. Reclaiming PostgreSQL Space After an Upgrade

When you complete the upgrade, you can perform a full database vacuum for PostgreSQL to reclaim space on the migrated databases.

Reclaiming Space on a PostgreSQL Database

  1. To stop all services, except for the postgresql service, enter the following command:

    # foreman-maintain service stop --exclude postgresql
  2. To switch to the postgres user and reclaim space on the database, enter the following command:

    # su - postgres -c 'vacuumdb --full --dbname=foreman'
  3. To start the other services when the vacuum completes, enter the following command:

    # foreman-maintain service start

4.6. テンプレート、パラメーター、ルックアップキーおよび値の更新

アップグレードプロセスで、Satellite は Satellite 6.5 に非推奨のマクロの場所を特定し、全テンプレート、パラメーター、ルックアップキーおよび値の以前の構文を新しい構文に変換します。このプロセスでは、以下のような単純なテキスト置換を使用します。

@host.params['parameter1'] -> host_param('parameter1')
@host.param_true?('parameter1') -> host_param_true?('parameter1')
@host.param_false?('parameter1') -> host_param_false?('parameter1')
@host.info['parameters'] -> host_enc['parameters']

このテキスト置換で、ファイルの変数を破損したり、省略したりしないように、以前の構文の全テンプレート、パラメーター、ルックアップキーおよび値すべてを確認して、手動で置き換えます。

以下のエラーは、アップグレード後にファイル内に以前の構文が残っていることが原因で発生します。

 undefined method '#params' for Host::Managed::Jail