第8章 ホストの Red Hat Enterprise Linux への変換
Red Hat Enterprise Linux の派生ディストリビューションは、インストールされたアプリケーションや設定を保持しながら、ホスト上でサポート可能な Red Hat Enterprise Linux に変換できます。Satellite は、変換プロセスを簡素化する Convert2RHEL ユーティリティーを提供します。
Satellite の Convert2RHEL ユーティリティーには、Ansible ロールと Ansible Playbook が含まれています。Ansible ロールを使用して Satellite Server で変換データを生成し、これには、必要なリポジトリーの有効化、製品、アクティベーションキー、およびホストグループの作成が含まれます。次に、Ansible Playbook を使用してホストで実際に変換を行い、Convert2RHEL CLI ツールをホストにインストールして実行します。
Ansible ロールを使用して、以下の変換の変換データを生成できます。
- CentOS Linux 7 から Red Hat Enterprise Linux 7
- Oracle Linux 7 から Red Hat Enterprise Linux 7
- Oracle Linux 8 から Red Hat Enterprise Linux 8
これらの変換は、Red Hat によってサポートされています。
この変換プロセスは、システム上のすべての RPM パッケージが置き換えられる Red Hat Enterprise Linux のマイナーリリースアップグレードと似ています。サードパーティーパッケージと、Red Hat Enterprise Linux で利用できない Red Hat 以外のパッケージは保持されます。
Convert2RHEL ユーティリティーは、変換中に問題を引き起こすことがわかっているロゴやパッケージなどの不要なパッケージを削除します。このユーティリティーは、CentOS-release
または Oracle-release
パッケージを rhel-release
パッケージに、CentOS または Oracle が署名したすべてのパッケージを Red Hat と同等のパッケージに置き換えます。また、このユーティリティーは、ホストを Red Hat サブスクリプション管理にサブスクライブします。
変換プロセスの期間は、置き換えが必要なパッケージ数、ネットワークの速度、ストレージの速度、および同様の要因によって異なります。
前提条件
- RPM ベースの Linux ディストリビューションから RHEL への変換 で、サポート対象の変換パス を確認済みである。
- RPM ベースの Linux ディストリビューションから RHEL への変換 の RHEL 変換の準備 に記載されている手順 1 - 5 が完了している。
サブスクリプションマニフェストを Satellite にアップロードし、対象とする変換に十分な Red Hat Enterprise Linux エンタイトルメントが割り当てられていることを確認します。または、Ansible 変数を使用して、ディスクからマニフェストをインポートするようにロールに指示することもできます。マニフェストは、変換用にホストの登録先の組織にインポートする必要があります。
割り当てを更新して、Red Hat カスタマーポータル から更新されたマニフェストをダウンロードできます。詳細は、オンライン接続されている Satellite Server に向けたマニフェストの作成および管理 の マニフェストのエクスポートおよびダウンロード を参照してください。
- ホストを変換する Red Hat Enterprise Linux のマイナーバージョン用に、Satellite で Red Hat リポジトリーを有効化および同期している。詳細は、コンテンツの管理 の Red Hat リポジトリーの有効化 と リポジトリーの同期 を参照してください。
変換手順の概要
-
redhat.satellite.convert2rhel
Ansible ロールおよび変数をインポートします。詳細は、Ansible 統合を使用した設定の管理 の Ansible ロールと変数のインポート を参照してください。 - 変換データを生成するための Ansible 変数を設定します。詳細は、「変換用の Ansible 変数」 を参照してください。
-
redhat.satellite.convert2rhel
ロールを Satellite Server を表すホストに割り当てます。詳細は、Ansible 統合を使用した設定の管理 の 既存のホストへの Ansible ロールの割り当て を参照してください。 Satellite Server で Ansible ロールを実行します。詳細は、Ansible 統合を使用した設定の管理 の ホストでの Ansible ロールの実行 を参照してください。
Ansible ロールは、ホスト変換に必要なデータ、つまりリポジトリー、証明書、アクティベーションキー、およびホストグループを生成します。以前の手順で設定した変数に合わせて、このロールは、リリースが 7Server で、アーキテクチャーが x86_64 の
rhel-7-server-rpms
リポジトリーか、rhel-8-for-x86_64-baseos-rpms
およびrhel-8-for-x86_64-appstream-rpms
、または両方を有効にします。生成されたホストグループを使用して、変換用にホストを登録します。
グローバル登録テンプレートを使用して、変換前にホストを登録してサブスクライブします。目的の変換用に生成されたホストグループを選択します。たとえば、ホストを CentOS 7 から変換する場合は、
CentOS 7 converting
になります。詳細は、「グローバル登録を使用したホストの登録」 を参照してください。ホストグループに対して変換前分析を実行して、ホストが変換の準備ができているかどうかを確認します。次の設定でリモートジョブを実行します。
-
Job category:
Convert 2 RHEL
Job template:
Convert2RHEL analyze
詳細は、「リモートジョブの実行」 を参照してください。
変換前分析レポートを確認し、変換を妨げる問題をすべて解決します。問題がすべて解決するまで、この手順を繰り返します。詳細は、RPM ベースの Linux ディストリビューションから RHEL への変換 の 変換前分析レポートの確認 を参照してください。
-
Job category:
ホストグループで Convert2RHEL Playbook を実行します。次の設定でリモートジョブを実行します。
-
Job category:
Convert 2 RHEL
-
ジョブテンプレート:
Convert to RHEL
アクティベーションキー:
-
Red Hat Enterprise Linux 7 に変換する場合は、
convert2rhel_rhel7
-
Red Hat Enterprise Linux 8 に変換する場合は、
convert2rhel_rhel8
-
Red Hat Enterprise Linux 7 に変換する場合は、
詳細は、「リモートジョブの実行」 を参照してください。
-
Job category:
関連情報
8.1. 変換用の Ansible 変数
Ansible ロールを実行して変換データを生成する前に、以下の必要な Ansible 変数の値を設定します。
Satellite は、必要なほとんどの Ansible 変数を redhat.satellite.convert2rhel
ロールからインポートします。ただし、一部の変数はインポートされません。以下の表では、これらの変数にはアスタリスク *
が付いています。これらの追加変数を手動で作成し、redhat.satellite.convert2rhel
ロールに割り当てる必要があります。
名前 | タイプ | 目的および値 |
---|---|---|
| string |
|
| string | ユーザー名 |
| string | パスワード |
| string | 組織の名前 |
| boolean |
Satellite Server がリポジトリーの同期が完了するまで待機せずに、データの生成を続行する場合は、 |
| boolean |
Ansible で証明書チェックを有効にする場合は |
| boolean |
Satellite Server にマニフェストがすでに存在する場合は、 |
| boolean |
Red Hat Enterprise Linux 7 リポジトリーを有効にします。ホストを Red Hat Enterprise Linux 7 に変換する予定がない場合は、 |
| boolean |
Oracle Linux 7 の変換データを準備する場合は |
| boolean |
Red Hat Enterprise Linux 8 リポジトリーを有効にします。ホストを Red Hat Enterprise Linux 8 に変換する予定がない場合は、 |
| boolean |
Oracle Linux 8 の変換データを準備する場合は |
名前 | タイプ | 目的および値 |
---|---|---|
| string |
ディスクからアップロードするマニフェストへのパス (例: |
| string |
|