第4章 Puppet のアップグレード


Red Hat Satellite 6.4 は Puppet 5 のみをサポートします。Puppet 5 は、Puppet 4 から Puppet 5 への移行しかサポートしません。そのため、3 以前のバージョンを使用している場合は、Satellite 6.4 にアップグレードする前に、Puppet 4 にアップグレードする必要があります。Satellite 6.3 には Puppet 4 へのアップグレードパスが含まれています。詳細は、Satellite 6.3 『Red Hat Satellite のアップグレードおよびアップデート』ガイドの「Puppet のアップグレード」セクションを参照してください。

Satellite のアップグレードプロセス時に、アップグレードプロセスの一部として、Puppet は 4 から 5 にアップグレードされます。本章では、Puppet 4 から Puppet 5 へのアップグレードの準備プロセスについて説明します。

4.1. アップグレードパス

Satellite 6.4 にアップグレードする前に、Puppet モジュールを確認し、変更を加えて Puppet 5 との互換性を確保する必要があります。Puppet 5 での変更に関する情報は、Puppet のウェブサイトの Puppet 5.0 Release Notes を参照してください。

Red Hat Satellite と Capsule を、同時にアップグレードする必要はありません。Puppet モジュールのアップグレードおよびテストに伴い、Capsules をアップグレードすることができます。もしくは、新しい Capsule をインストールして、テストしてからホストを移動することもできます。Satellite web UI、Hammer CLI、または bootstrap スクリプトを使用して、Puppet 4 Capsule から Puppet 5 Capsule へホストを移動できます。

また、アップグレードした Puppet モジュールの最終テストに使用するために、既存の Capsule のクローンを作成することが推奨されます。リポジトリーのサイズによっては、既存の Capsule のクローンを作成するのに時間がかかります。

Puppet バージョンを判断するためのパラメーターの使用

デフォルトでは、Satellite 6.4 はグローバルパラメーター enable-puppet5 を設定します。キックスタートファイルなどのプロビジョニングファイルは、enable-puppet5 を使用して Puppet 5 エージェントがある場合は、新規ホストをプロビジョニングして Puppet 5 エージェントを使用します。ただし、Puppet 4 エージェントがコンテンツビューで、ホストにアタッチされている場合には、Puppet 5 の代わりにこれが使用されます。ホストで Puppet 5 を使用する場合には、このホストに関連付けられているコンテンツビューを Puppet 5 エージェントが含まれるように更新する必要があります。

Puppet 4 を使用するために新規ホストをプロビジョニングする必要がある場合には、ホストのグループレベルでグローバルパラメーターを上書きできます。

  1. Web UI で、設定 > ホストグループ に移動し、設定するホストグループ名を選択します。
  2. パラメーター タブをクリックして、ホストのグループパラメーター のエリアで、パラメーターの追加 をクリックします。
  3. 名前 フィールドで、enable-puppet4 と入力し、 フィールドで、true と入力します。
  4. 送信 をクリックして変更を保存します。

Satellite 6.3 で enable-puppet4 のパラメーターを設定した場合には、これで安全に削除できます。

  1. Web UI で、設定 > ホストグループ に移動し、設定するホストグループ名を選択します。
  2. パラメーター タブをクリックして、ホストのグループパラメーター のエリアで、enable-puppet4 を特定します。
  3. アクション コラムで、削除 をクリックします。
  4. 送信 をクリックして変更を保存します。

Hammer コマンドを使用して削除することもできます。以下に例を示します。

# hammer hostgroup delete-parameter --hostgroup my_hostgroup --name enable-puppet4
Copy to Clipboard Toggle word wrap

4.2. Puppet モジュールのテスト

Puppet ウェブサイトの Puppet 5.0 Release Notes と以下のガイドラインを使用して、アップグレードを開始する前に Puppet モジュールをテストしてください。

  • Puppet モジュールは、最初に、Satellite に接続していないワークステーションでテストします。
  • puppet parser validate コマンドを実行して、コマンドの構文を確認します。
  • サポートされなくなっているので、クラス参照名に大文字がないかを確認してください。Class[MyClass] から Class[myclass] に変更するなど、クラス名を小文字に変更します。
  • Ruby 形式のカスタムのバージョン比較コードがある場合は、SemVer の範囲の一致を処理する Range#intersection コードは削除されている点に注意してください。
  • カスタムの Ruby コードで、文字列のフォーマット方法として、非推奨の TypeCalculator クラスが使用されている場合には、TypeCalculator の文字列フォーマット方法が削除されたため、TypeFormatter クラスが使用されるように、コードを変更してください。詳細は、Puppet ウェブサイトで Type mismatch describer should expand aliases の問題を参照してください。
  • 以前のバージョンでは、クラスが複数回定義されている場合には、ボディーがマージされていました。--strict フラグの状態によって、警告またはエラーが表示されていましたが、‘’ で指定されている上位のスコープクラス以外は、エラーが常に表示されるようになりました (‘main’ とも呼ばれる)。

4.3. アップグレードの準備

このセクションを使用して、Puppet 5 にアップグレードするためにホストを準備してください。Satellite Server と Capsule Server は、適切なアップグレード手順の一部として Puppet 5 にアップグレードされます。

作業を開始する前に

  • Satellite Server は Satellite 6.4 へのアップグレードを済ませておくようにしてください。
  • アタッチされているホストで、アップグレードするホストで、Capsule Server のアップグレードを完了してください。
  • Puppet モジュールをレビューし、Puppet 5 にアップグレードする必要がある箇所でアップグレードが行われていることを確認します。
  • 関連のあるコンテンツビュー が更新され、Puppet 5 エージェントが含まれていることを確認します。
  • グローバルの enable-puppet5 パラメーターを上書きする enable-puppet4 パラメーターがホストとホストグループに設定されていないことを確認してください。

Puppet 5 用のホストの準備

  1. Puppet 4 リポジトリーを無効にします。

    • Puppet 4 リポジトリーは、デスクトップ、サーバー、およびワークステーションから以下を取得します。

      rhel-X-platform-satellite-tools-6.3-puppet4-rpms
      Copy to Clipboard Toggle word wrap

      ここで、X は使用してるメジャーリリースのバージョンで、platformdesktopserver、または workstation になります。

    • Puppet 4 リポジトリーは、選択したアーキテクチャーから以下を取得します。

      rhel-X-for-architecture-satellite-tools-6.3-puppet4-rpms
      Copy to Clipboard Toggle word wrap

      ここで、X はメジャーリリースのバージョン、architecturearmpowerhpc-node、または system-z などです。リポジトリーの中には、延長サポートが含まれているサブスクリプション向けのものもあります。たとえば、延長アップデートサポート (EUS) の場合は、アーキテクチャーの後に eus と続きます。

      延長サポートの種類については、Red Hat ナレッジベースの記事「Red Hat Enterprise Linux のサポートポリシーについてよく利用されるナレッジ」を参照してください。

  1. コンテンツホストで、Puppet 4 RPM リポジトリーを検索します。

    # subscription-manager repos --list-enabled |grep puppet4
    Copy to Clipboard Toggle word wrap
  2. 以下のように、ホストで見つかった Puppet 4 リポジトリーを無効にします。

    # subscription-manager repos \
    --disable=rhel-7-server-satellite-tools-6.3-puppet4-rpms
    Copy to Clipboard Toggle word wrap
  3. すべてのパッケージをアップデートします。

    # yum update
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat