Red Hat Training
A Red Hat training course is available for Red Hat Satellite
第2章 Satellite Server のクローン
Satellite Server のアップグレード時に、アップグレード中にデータが損失されないように、オプションで Satellite のクローンを作成することができます。アップグレードが完了したら、Satellite Server の以前のバージョンの使用を停止できます。
以下の手順を使用して、Satellite インスタンスのクローンを作成し、環境を保存してアップグレードの準備を整えます。
Satellite クローンツールは、Capsule Server から Red Hat Enterprise Linux 7 への移行をサポートしません。代わりに、既存の Capsule Server のバックアップを作成し、Red Hat Enterprise Linux 7 に Capsule Server を復元してから再設定します。
用語
次の用語を理解するようにしてください。
ソースサーバー: クローンするサーバー
ターゲットサーバー: ファイルをコピーし、ソースサーバーのクローンを作成する先の新規サーバー
2.1. クローン作成プロセスの概要
- ソースサーバーをバックアップします。
- ソースサーバーからターゲットサーバーにクローンを作成します。
- ソースサーバーの電源を切断します。
- 新規ホスト名とターゲットサーバーの IP アドレスが一致するように、ターゲットサーバー上のネットワーク設定を更新します。
- コンテンツホストと Capsule で goferd を再起動して、接続を更新します。
- 新規ターゲットサーバーをテストします。
2.2. 前提条件
Satellite Server のクローンを作成するには、以下のリソースが用意されていることを確認します。
- ターゲットサーバーとして使用する Red Hat Enterprise Linux 7 サーバーの最小インストール。Red Hat Enterprise Linux 7 ソフトウェアグループやサードパーティーのアプリはインストールしないでください。また、『オンラインネットワークからの Satellite Server のインストール』の「インストールのために環境を準備」に記載されている仕様すべてに準拠していることを確認してください。
-
katello-backup
スクリプトを使用して作成した Satellite バージョン 6.1、6.2 または 6.3 のバックアップ。バックアップは、Pulp データありでも、なしでも使用できます。 - ターゲットサーバーの Satellite のサブスクリプション
クローンを開始する前に、以下の条件を満たしていることを確認してください。
- ターゲットサーバーが分離ネットワーク上にあること。これにより、Capsule Server とホスト間で必要のない通信を回避できます。
- ソースサーバーからのバックアップファイルすべてを格納できるだけの容量があるターゲットサーバー
2.3. Pulp データの考慮事項
Pulp データを含めずに、Satellite Server のクローンを作成できます。ただし、クローンした環境を機能させるためには、Pulp データが必要です。ターゲットサーバーに、Pulp データがない場合には、Satellite は完全に機能しません。
Pulp データをターゲットサーバーに転送するには、2 つのオプションがあります。
- Pulp データを含むバックアップを使用したクローン作成
-
Pulp データなしのバックアップを使用してクローンを作成し、ソースサーバーから手動で
/var/lib/pulp
をコピーします。
pulp_data.tar
ファイルが 500 GB 以上の場合や、pulp_data.tar
ファイルが 100 GB 以上で、NFS など、速度の遅いストレージシステムを使用している場合には、展開時にメモリーエラーが発生する可能性があるので、バックアップに pulp_data.tar
を含めないようにしてください。ソースサーバーからターゲットサーバーに pulp_data.tar
ファイルをコピーするようにしてください。
Pulp データなしでバックアップする方法
「Satellite Server のクローン」の手順の内容に従います。ただし、Pulp データが含まれるクローンを作成する手順を、以下の手順に置き換えてください。
MongoDB と PostgreSQL の両データベースをアクティブにし、Pulp データは除外してバックアップを実行します。
# katello-service stop # katello-service start --only mongod,postgresql # katello-backup --skip-pulp-content /var/backup --assumeyes
Satellite Service をすべて停止および無効にします。
# katello-service stop # for i in $(katello-service list| awk '{print $1}'|grep service); \ do systemctl disable $i ;done
Pulp データをターゲットサーバーにコピーします。
# rsync --archive --partial --progress --compress \ /var/lib/pulp target_server.example.com:/var/lib/pulp
「ターゲットサーバーのクローン作成」に進みます。
2.4. Satellite Server のクローン
以下の手順を使用して、Satellite Server のクローンを作成します。この手順の一部として大量のデータをコピーして転送する必要があるので、完了までにかなり時間がかかる可能性がある点に注意してください。
2.4.1. クローン作成のためのソースサーバーの準備
ソースサーバーで、以下の手順を実行します。
Satellite サブスクリプションのプール ID を確認します。
# subscription-manager list --consumed \ --matches 'Red Hat Satellite'|grep "Pool ID:"|awk '{print $3}'
Red Hat Satellite のサブスクリプションを削除します。
# subscription-manager remove --serial=$(subscription-manager list \ --consumed \ --matches 'Red Hat Satellite'|grep "Serial:"|awk '{print $2}')
Pulp データのサイズを判断します。
# du -sh /var/lib/pulp/
Pulp データが 500 GB 未満の場合は、MongoDB と PostgreSQL のデータベースをアクティブにし、Pulp データを含めてバックアップを実行します。Pulp データが 500 GB 以上の場合には、以下の手順は省略して、続行する前に 「Pulp データの考慮事項」 の手順を実行してください。
# katello-service stop # katello-service start --only mongod,postgresql # katello-backup /var/backup --assumeyes
Satellite サービスをすべて停止および無効にします。
# katello-service stop # for i in $(katello-service list| awk '{print $1}'|grep service); \ do systemctl disable $i ;done
「ターゲットサーバーのクローン作成」に進みます。
2.4.2. ターゲットサーバーのクローン作成
サーバーのクローンを作成するには、ターゲットサーバーで以下の手順を実行してください。
-
satellite-clone
ツールはデフォルトで、'/backup/' をバックアップフォルダーとして使用します。別のフォルダーにコピーする場合には、/etc/satellite-clone/satellite-clone-vars.yml
ファイルのbackup_dir
変数を更新してください。 -
/backup
フォルダーにバックアップファイルを配置します。共有ストレージをマウントするか、candlepin.dump
、config_files.tar.gz
、foreman.dump
のファイルと、mongo_dump
フォルダーをコピーすることができます。 - ソースサーバーの電源を切断します。
以下のコマンドを入力してカスタマーポータルに登録して、サブスクリプションのアタッチし、必要なサブスクリプションだけを有効化します。
# subscription-manager register your_customer_portal_credentials # subscription-manager attach --pool=pool_ID # subscription-manager repos --disable=* # subscription-manager repos \ --enable=rhel-7-server-rpms \ --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-satellite-maintenance-6-rpms \ --enable=rhel-7-server-satellite-6.3-rpms
satellite-clone
パッケージをインストールします。# yum install satellite-clone
satellite-clone
ツールをインストールした後に、独自のデプロイメントに合わせて/etc/satellite-clone/satellite-clone-vars.yml
ファイルで設定を調節します。satellite-clone
ツールを実行します。# satellite-clone
- DHCP、DNS、TFTP、およびリモート実行サービスを再設定します。ソースの Satellite Server と競合しないように、クローンプロセスにより、ターゲットの Satellite Server でこのサービスが無効になります。
- Satellite web UI で DHCP、DNS、TFTP を再設定し、有効にします。詳細は『オンラインネットワークからの Satellite Server のインストール』の「Satellite Server での DNS、DHCP および TFTP の設定」を参照してください。
リモート実行を有効にします。
# satellite-installer --scenario satellite \ --enable-foreman-plugin-remote-execution \ --enable-foreman-proxy-plugin-remote-execution-ssh
-
ユーザー名
admin
とパスワードchangeme
で、Satellite Web UI にログインします。 すぐに、管理者パスワードを変更して認証情報のセキュリティーを確保します。 - 正しい組織が選択されていることを確認します。
- コンテンツ > サブスクリプション に移動して、マニフェストの管理をクリックします。
- 更新 ボタンをクリックして 終了 をクリックし、サブスクリプションの一覧に戻ります。
- 利用可能なサブスクリプションが正しいことを確認します。
-
/usr/share/satellite-clone/logs/reassociate_capsules.txt
ファイルの説明に従い、Capsules とライフサイクル環境の間の関係を復元します。 -
ターゲットサーバーの IP アドレスと新規ホスト名が一致するように、DNS など、ネットワーク設定を更新します。
satellite-clone
ツールにより、ホスト名をソースサーバーのホスト名に変更します。ホスト名を別のものに変更する場合には、satellite-change-hostname
ツールを使用してください。詳細は、『Red Hat Satellite の管理』の「Satellite または Capsule Server の名前変更」を参照してください。 -
ソースサーバーが
virt-who
デーモンを使用する場合は、ターゲットサーバーにインストールして設定します。ソースサーバーのディレクトリーにあるvirt-who
設定ファイルをすべて、ターゲットサーバーにある同じディレクトリーに移動します。詳細情報は、『仮想インスタンスガイド』の「Virt-who インストールと設定の概要」を参照してください。 登録したすべてのコンテンツホストと Capsule で、goferd を再起動します。
systemctl restart goferd
以下の章を使用してアップグレードを行った後に、安全にソースサーバーの使用を停止することができます。