Red Hat Satellite の管理
ユーザーと権限の管理、組織と場所の管理、Satellite のバックアップと復元、Satellite のメンテナンスなど
概要
Red Hat ドキュメントへのフィードバック (英語のみ) リンクのコピーリンクがクリップボードにコピーされました!
Red Hat ドキュメントに関するご意見やご感想をお寄せください。また、改善点があればお知らせください。
フィードバックを提供するには、Red Hat Jira の Create Issue フォームを使用します。Jira の課題が Red Hat Satellite Jira プロジェクトに作成され、その進捗状況を追跡できます。
前提条件
- Red Hat アカウント が登録されていることを確認する。
手順
- Create Issue にアクセスします。Jira でログインエラーが表示された場合は、フォームにリダイレクトされた後、ログインして続行します。
- Summary フィールドと Description フィールドに入力します。Description フィールドに、ドキュメントの URL、章またはセクション番号、および問題の詳しい説明を入力します。フォーム内の他のフィールドは変更しないでください。
- Create をクリックします。
第1章 Red Hat Satellite の起動および停止 リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、コマンドラインから Satellite サービスを管理するための satellite-maintain service コマンドが含まれています。このコマンドは Satellite のバックアップの作成時に役に立ちます。バックアップ作成に関する詳細は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
satellite-installer コマンドを使用して Satellite をインストールした後に、すべての Satellite サービスは自動的に起動されて有効になります。これらのサービスのリストを表示するには、以下のコマンドを実行します。
# satellite-maintain service list
実行中のサービスのステータスを確認するには、以下のコマンドを実行します。
# satellite-maintain service status
Satellite サービスを停止するには、以下を実行します。
# satellite-maintain service stop
Satellite サービスを開始するには、以下を実行します。
# satellite-maintain service start
Satellite サービスを再起動するには、以下を実行します。
# satellite-maintain service restart
第2章 Satellite Server のクローン リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server のクローンを作成してインスタンスを作成し、インスタンスの別のマシンまたはオペレーティングシステムへのアップグレードや移行をテストできます。これは、アップグレードまたは移行中の柔軟性を高めるための任意のステップです。
Capsule Server で Satellite クローンツールは使用できません。代わりに、既存の Capsule Server をバックアップし、それをターゲットサーバーに復元してから、Capsule Server を再設定する必要があります。
Satellite Server の新規インスタンスを作成する場合は、バックアップを復元した後に以前のインスタンスを廃止します。クローン作成されたインスタンスは、実稼働環境で並行して実行することは想定されていません。
用語
次の用語を理解するようにしてください。
- ソースサーバー
- クローンの起点。
- ターゲットサーバー
- ファイルをコピーしてソースサーバーのクローンを作成する新しいサーバー。
2.1. クローン作成プロセスの概要 リンクのコピーリンクがクリップボードにコピーされました!
- ソースサーバーをバックアップします。
- ソースサーバーからターゲットサーバーにクローンを作成します。
- ソースサーバーの電源を切断します。
- ターゲットサーバーの IP アドレスを新しいホスト名と一致させるように、ターゲットサーバーのネットワーク設定を更新します。
- 新規ターゲットサーバーをテストします。
2.2. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server のクローンを作成するには、以下のリソースが用意されていることを確認します。
- ターゲットサーバーとなる Red Hat Enterprise Linux 9 の最小インストール。Red Hat Enterprise Linux 9 ソフトウェアグループやサードパーティーのアプリはインストールしないでください。サーバーがすべての必要な仕様に準拠していることを確認してください。詳細は、オンラインネットワーク環境での Satellite Server のインストール の インストールのための環境準備 を参照してください。
-
satellite-maintain backupスクリプトを使用して作成した Satellite Server のバックアップ。Pulp データありでも、なしでもバックアップを使用できます。 - ターゲットサーバーの Satellite のサブスクリプション。
クローンを開始する前に、以下の条件を満たしていることを確認してください。
- ターゲットサーバーが分離ネットワーク上にあること。これにより、Capsule Server とホスト間で必要のない通信を回避できます。
- ターゲットサーバーのストレージ容量が、ソースサーバーと少なくとも同じである。
カスタマイズした設定ファイル
satellite-installer ツールまたは Satellite バックアッププロセスのマネージドでないソースサーバーで、設定をカスタマイズしている場合には、これらのファイルを手動でバックアップする必要があります。
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 データが含まれるクローンを作成する手順を、以下の手順に置き換えてください。
PostgreSQL データベースをアクティブにし、Pulp データは除外してバックアップを実行します。
# satellite-maintain backup offline --skip-pulp-content \ --assumeyes /var/backupSatellite サービスを停止して無効にします。
# satellite-maintain service stop # satellite-maintain service disablePulp データをターゲットサーバーにコピーします。
# rsync --archive --partial --progress --compress \ /var/lib/pulp/ target_server.example.com:/var/lib/pulp/
「ターゲットサーバーへのクローン作成」 に進みます。
2.4. Satellite Server のクローン リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、Satellite Server のクローンを作成します。この手順の一部として大量のデータをコピーして転送する必要があるので、完了までにかなり時間がかかる可能性がある点に注意してください。
2.4.1. クローン作成のためのソースサーバーの準備 リンクのコピーリンクがクリップボードにコピーされました!
ソースサーバーで、以下の手順を実行します。
Pulp データのサイズを判断します。
# du -sh /var/lib/pulp/Pulp データが 500 GB 未満の場合は、PostgreSQL のデータベースをアクティブにし、Pulp データを含めてバックアップを実行します。Pulp データが 500 GB 以上の場合には、以下の手順は省略して、続行する前に「Pulp データに関する考慮事項」の手順を実行してください。
# satellite-maintain backup offline --assumeyes /var/backupSatellite サービスを停止して無効にします。
# satellite-maintain service stop # satellite-maintain service disable
「ターゲットサーバーへのクローン作成」 に進みます。
2.4.2. ターゲットサーバーへのクローン作成 リンクのコピーリンクがクリップボードにコピーされました!
サーバーのクローンを作成するには、ターゲットサーバーで以下の手順を実行してください。
-
satellite-cloneツールはデフォルトで、/backup/をバックアップフォルダーとして使用します。別のフォルダーにコピーする場合には、/etc/satellite-clone/satellite-clone-vars.ymlファイルのbackup_dir変数を更新してください。 -
更新前の Satellite のバックアップファイルを、移行先のサーバーの
/backup/フォルダーに配置します。共有ストレージをマウントするか、移行先のサーバーの/backup/フォルダーにバックアップファイルをコピーします。 - ソースサーバーの電源を切断します。
インスタンスを Red Hat カスタマーポータルに登録し、必要なリポジトリーのみを有効にします。
# subscription-manager register # subscription-manager repos --disable=* # subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms \ --enable=rhel-9-for-x86_64-baseos-rpms \ --enable=satellite-maintenance-6.17-for-rhel-9-x86_64-rpmssatellite-cloneパッケージをインストールします。# dnf install satellite-clonesatellite-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 での外部サービスの設定 を参照してください。
-
ユーザー名
adminとパスワードchangemeで、Satellite Web UI にログインします。すぐに、管理者パスワードを変更して認証情報のセキュリティーを確保します。 - 正しい組織が選択されていることを確認します。
- Satellite Web UI で、Content > Subscriptions に移動します。
- Manage Manifest をクリックします。
- Refresh をクリックしてから Close をクリックし、サブスクリプションのリストに戻ります。
- 利用可能なサブスクリプションが正しいことを確認します。
-
/usr/share/satellite-clone/logs/reassociate_capsules.txtファイルの説明に従い、Capsules とライフサイクル環境の間の関係を復元します。 -
ターゲットサーバーの IP アドレスと新規ホスト名が一致するように、DNS など、ネットワーク設定を更新します。
satellite-cloneツールにより、ホスト名をソースサーバーのホスト名に変更します。ホスト名を別のものに変更する場合には、satellite-change-hostnameツールを使用してください。詳細は、Red Hat Satellite の管理 の Satellite Server の名前変更 を参照してください。 -
ソースサーバーが
virt-whoデーモンを使用する場合は、ターゲットサーバーにインストールして設定します。ソースサーバーのディレクトリー/etc/virt-who.d/にあるvirt-who設定ファイルをすべて、ターゲットサーバーにある同じディレクトリーに移動します。詳細は、仮想マシンサブスクリプションの virt-who の設定 を参照してください。以下の章を使用してアップグレードを行った後に、安全にソースサーバーの使用を停止することができます。
第3章 事前定義済みプロファイルを使用した Satellite Server の調整 リンクのコピーリンクがクリップボードにコピーされました!
Satellite のデプロイメントに 5000 台を超えるホストが含まれる場合には、事前定義済みの tuning プロファイルを使用して Satellite のパフォーマンスを向上できます。
Capsule では tuning プロファイルを使用できない点に注意してください。
Satellite が管理するホストの数と利用可能なハードウェアリソースに応じて、プロファイルの 1 つを選択できます。
tuning プロファイルは、/usr/share/foreman-installer/config/foreman.hiera/tuning/sizes ディレクトリーにあります。
--tuning オプションを指定して satellite-installer コマンドを実行した場合には、デプロイメント設定が以下の順番で Satellite に適用されます。
-
/usr/share/foreman-installer/config/foreman.hiera/tuning/common.yamlファイルで定義したデフォルトの tuning プロファイル -
/usr/share/foreman-installer/config/foreman.hiera/tuning/sizes/ディレクトリーで定義され、デプロイメントに適用する tuning プロファイル -
オプション:
/etc/foreman-installer/custom-hiera.yamlファイルを設定した場合、Satellite はこれらの設定を適用します。
/etc/foreman-installer/custom-hiera.yaml ファイルで定義した設定は、tuning プロファイルで定義した設定を上書きすることに注意してください。
したがって、tuning プロファイルを適用する前に、/usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml のデフォルトの tuning プロファイルに定義されている設定、適用する tuning プロファイル、および /etc/foreman-installer/custom-hiera.yaml ファイルを比較して、重複する設定内容を /etc/foreman-installer/custom-hiera.yaml ファイルから削除する必要があります。
- default
ホスト数: 0 - 5000
RAM: 20G
CPU コア数: 4
- medium
ホスト数: 5001 - 10000
RAM: 32G
CPU コア数: 8
- large
ホスト数: 10001 - 20000
RAM: 64G
CPU コア数: 16
- extra-large
ホスト数: 20001 - 60000
RAM: 128G
CPU コア数: 32
- extra-extra-large
ホスト数: 60000 以上
RAM: 256G
CPU コア数: 48+
手順
オプション: Satellite Server で、
custom-hiera.yamlファイルを設定した場合、/etc/foreman-installer/custom-hiera.yamlファイルをcustom-hiera.originalにバックアップします。/etc/foreman-installer/custom-hiera.yamlファイルが破損した場合には、バックアップファイルを使用して、ファイルを元の状態に戻します。# cp /etc/foreman-installer/custom-hiera.yaml \ /etc/foreman-installer/custom-hiera.original-
オプション: Satellite Server で
custom-hiera.yamlファイルを設定した場合、/usr/share/foreman-installer/config/foreman.hiera/tuning/common.yamlのデフォルト tuning プロファイルの定義と、/usr/share/foreman-installer/config/foreman.hiera/tuning/sizes/に適用する tuning プロファイルを確認します。/etc/foreman-installer/custom-hiera.yamlファイルの設定内容と比較して、/etc/foreman-installer/custom-hiera.yamlファイルで重複設定を削除します。 適用するプロファイルに対して、
--tuningオプションを指定してsatellite-installerコマンドを入力します。たとえば、medium tuning プロファイル設定を適用するには、以下のコマンドを入力します。# satellite-installer --tuning medium
第4章 内部 Satellite データベースから外部データベースへの移行 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite のインストールプロセスの一部として、satellite-installer コマンド、PostgreSQL のデータベースを Satellite と同じサーバー上にインストールします。デフォルトの内部データベースを使用している場合で、サーバーの負荷を軽減するために外部データベースを使い初める必要がある場合は、内部データベースを外部データベースに移行することが可能です。
Satellite Server のデータベースが内部または外部なのかを確認するには、データベースのステータスをクエリーすることができます。
PostgreSQL の場合は、以下のコマンドを実行します。
# satellite-maintain service status --only postgresql
Red Hat では、外部データベースのメンテナンスのサポートやそのためのツールは提供していません。これにはバックアップ、アップグレード、データベースのチューニングが含まれます。外部データベースをサポートし、管理する自社のデータベース管理者が必要です。
デフォルトの内部データベースから外部データベースに移行するには、以下の手順を完了する必要があります。
- 「PostgreSQL のインストール」 を参照してください。Foreman、Pulp、Candlepin のデータベースおよびそれぞれを所有する専用のユーザーを作成して、PostgreSQL をセットアップします。
-
「外部データベースへの移行」 を参照してください。新規データベースを参照するように
satellite-installerのパラメーターを編集し、satellite-installerを実行します。
4.1. 外部データベースとして PostgreSQL を使用する際の注意点 リンクのコピーリンクがクリップボードにコピーされました!
Foreman、Katello、および Candlepin は PostgreSQL データベースを使用します。PostgreSQL を外部データベースとして使用する場合は、以下の情報を参照してお使いの Satellite 設定にこのオプションが適しているかどうかを判別してください。Satellite は PostgreSQL バージョン 13 をサポートします。
外部 PostgreSQL の利点
- Satellite 上の空きメモリーと空き CPU が増えます。
-
PostgreSQL データベースで
shared_buffersを高い値に設定しても、Satellite 上の他のサービスの妨げるリスクがありません。 - Satellite 操作にマイナスの影響をもたらすことなく PostgreSQL サーバーのシステムを調整する柔軟性が得られます。
外部 PostgreSQL のデメリット
- デプロイメントの複雑性が増し、問題解決がより困難になります。
- 外部 PostgreSQL サーバーの場合は、パッチおよびメンテナンス対象に新たなシステムが加わることになります。
- Satellite または PostgreSQL データベースサーバーのいずれかにハードウェアまたはストレージ障害が発生すると、Satellite が機能しなくなります。
- Satellite Server とデータベースサーバーの間でレイテンシーが発生すると、パフォーマンスに影響が出ます。
お使いの Satellite 上の PostgreSQL データベースが原因でパフォーマンスの低下が生じている可能性がある場合は、Satellite 6: How to enable postgres query logging to detect slow running queries を参照して時間のかかっているクエリーがあるかどうか判定します。1 秒以上かかるクエリーがある場合は、通常、大規模インストールのパフォーマンスが原因であることが多く、外部データベースに移行しても問題解決が期待できません。時間のかかっているクエリーがある場合は、Red Hat サポートチームまでお問い合わせください。
4.2. PostgreSQL のインストール リンクのコピーリンクがクリップボードにコピーされました!
インストール可能な PostgreSQL は、内部データベースのインストール中に satellite-installer ツールでインストールされたものと同じバージョンの PostgreSQL のみになります。Satellite は PostgreSQL バージョン 13 をサポートします。
前提条件
- 準備されたホストは、Satellite Storage の要件 を満たしている。
- 準備されたホストでは、基本オペレーティングシステムリポジトリーが有効になっている。
手順
新しいデータベースサーバーに PostgreSQL をインストールします。
# dnf install postgresql-server postgresql-contribPostgreSQL データベースを初期化します。
# postgresql-setup --initdb/var/lib/pgsql/data/postgresql.confファイルで以下を行います。# vi /var/lib/pgsql/data/postgresql.confSatellite で機能するには、外部 PostgreSQL のデフォルト設定を調整する必要があることに注意してください。基本的に推奨される外部データベース設定の調整は次のとおりです。
- checkpoint_completion_target: 0.9
- max_connections: 500
- shared_buffers: 512MB
- work_mem: 4MB
#を削除して、着信接続をリッスンするようにします。listen_addresses = '*'ファイルの最後に以下の行を追加して、認証に SCRAM を使用します。
password_encryption=scram-sha-256/var/lib/pgsql/data/pg_hba.confファイルを編集します。# vi /var/lib/pgsql/data/pg_hba.conf以下の行をファイルに追加します。
host all all Satellite_ip/32 scram-sha-256PostgreSQL サービスを起動して有効にします。
# systemctl enable --now postgresqlpostgresql ポートを開きます。
# firewall-cmd --add-service=postgresql変更を永続化します。
# firewall-cmd --runtime-to-permanentpostgresユーザーに切り替え、PostgreSQL クライアントを起動します。$ su - postgres -c psql3 つのデータベースと専用ロールを作成します。1 つは Foreman 用、1 つは Candlepin 用、1 つは Pulp 用です。
CREATE USER "foreman" WITH PASSWORD 'Foreman_Password'; CREATE USER "candlepin" WITH PASSWORD 'Candlepin_Password'; CREATE USER "pulp" WITH PASSWORD 'Pulpcore_Password'; CREATE DATABASE foreman OWNER foreman; CREATE DATABASE candlepin OWNER candlepin; CREATE DATABASE pulpcore OWNER pulp;postgresユーザーをログアウトします。# \qSatellite Server から、データベースにアクセスできることをテストします。接続に成功した場合には、コマンドは
1を返します。# PGPASSWORD='Foreman_Password' psql -h postgres.example.com -p 5432 -U foreman -d foreman -c "SELECT 1 as ping" # PGPASSWORD='Candlepin_Password' psql -h postgres.example.com -p 5432 -U candlepin -d candlepin -c "SELECT 1 as ping" # PGPASSWORD='Pulpcore_Password' psql -h postgres.example.com -p 5432 -U pulp -d pulpcore -c "SELECT 1 as ping"
4.3. 外部データベースへの移行 リンクのコピーリンクがクリップボードにコピーされました!
既存のデータをバックアップおよび転送してから、satellite-installer コマンドを使用して、外部の PostgreSQL データベースに接続するように Satellite を設定します。
前提条件
- Red Hat Enterprise Linux サーバーに PostgreSQL サーバーをインストールおよび設定していること。
手順
Satellite Server で、PostgreSQL 以外の Satellite サービスをすべて停止します。
# satellite-maintain service stop --exclude postgresqlSatellite バックアップのターゲットディレクトリーを作成します。
# mkdir /var/My_Migration_Backup_Directory内部データベースのバックアップを作成します。
# satellite-maintain backup online \ --preserve-directory \ --skip-pulp-content \ /var/My_Migration_Backup_Directoryデータを新規外部データベースに転送します。
PGPASSWORD='Foreman_Password' pg_restore -h postgres.example.com -U foreman -d foreman < /var/My_Migration_Backup_Directory/foreman.dump PGPASSWORD='Candlepin_Password' pg_restore -h postgres.example.com -U candlepin -d candlepin < /var/My_Migration_Backup_Directory/candlepin.dump PGPASSWORD='Pulpcore_Password' pg_restore -h postgres.example.com -U pulp -d pulpcore < /var/My_Migration_Backup_Directory/pulpcore.dumpsatellite-installerコマンドを使用して Satellite が新規データベースを参照するように更新します。# satellite-installer \ --katello-candlepin-manage-db false \ --katello-candlepin-db-host postgres.example.com \ --katello-candlepin-db-name candlepin \ --katello-candlepin-db-user candlepin \ --katello-candlepin-db-password Candlepin_Password \ --foreman-proxy-content-pulpcore-manage-postgresql false \ --foreman-proxy-content-pulpcore-postgresql-host postgres.example.com \ --foreman-proxy-content-pulpcore-postgresql-db-name pulpcore \ --foreman-proxy-content-pulpcore-postgresql-user pulp \ --foreman-proxy-content-pulpcore-postgresql-password Pulpcore_Password \ --foreman-db-manage false \ --foreman-db-host postgres.example.com \ --foreman-db-database foreman \ --foreman-db-username foreman \ --foreman-db-password Foreman_PasswordSatellite Server 上の PostgreSQL パッケージを削除します。
# satellite-maintain packages remove postgresql-serverPostgreSQL データディレクトリーを削除します。
# rm -fr /var/lib/pgsql/data
第5章 Satellite Ansible Collection による Satellite 管理の自動化 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Ansible Collection は、Satellite API と対話する Ansible モジュールのセットです。これらのモジュールを使用して、Satellite 管理の多くの機能を自動化できます。
5.1. Satellite Ansible モジュールのインストール リンクのコピーリンクがクリップボードにコピーされました!
Satellite Ansible Collection のモジュールは、ansible-collection-redhat-satellite パッケージで提供されます。このパッケージは、Satellite Server にデフォルトでインストールされています。Playbook を別のシステムで実行する場合は、まず Playbook を提供するパッケージをインストールする必要があります。
Playbook は、Satellite API にアクセスできる任意のシステムで、実行できます。これは Satellite Server 自体でも使用できます。
手順
ansible-collection-redhat-satelliteパッケージをインストールします。# dnf install ansible-collection-redhat-satellite
検証
システムで利用できるようになった Ansible モジュールの一覧を表示します。
# ansible-doc --list redhat.satellite
次のステップ
- インストールされている Ansible モジュールを使用して Playbook を実行できるようになりました。
5.2. Satellite Ansible コレクションのモジュールを使用した Playbook の作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Ansible Collection からの Ansible モジュールは、HTTPS 経由で Satellite API と通信できる必要があります。Playbook に、API への接続を有効にするために認証方法を指定するパラメーターを含めます。
ユーザー名とパスワードなどの機密認証情報は、Playbook または環境変数に直接保存しないでください。以下の例では、Ansible Vault を使用して機密データを管理します。
前提条件
- Satellite にユーザーアカウントがあり、Playbook で定義したアクションを実行する権限がある。
そのユーザーの認証情報として、以下のいずれかを利用できる。
- ユーザー名およびパスワード
- ユーザー名および Personal Access Token
Playbook の実行対象とするシステム。以下の例では
localhostを使用しています。このシステムは Satellite API にアクセスできる必要があります。以下の中から選択できます。
- Satellite API に直接アクセスできるシステム。環境内の Satellite Server、Capsule Server、またはその他のシステムを使用できます。
- Satellite API に直接接続せず、HTTP プロキシーを使用して Satellite に接続するシステム。
手順
機密性の高い変数を暗号化されたファイルに保存します。
Ansible Vault を作成します。たとえば、My_Vault.yml という名前の vault を作成するには、以下を実行します。
$ ansible-vault create My_Vault.ymlansible-vault createコマンドでエディターが開いたら、必要なパラメーターを key: value 形式で入力します。Satellite のユーザー名とパスワードで認証する場合:
My_Username: My_Admin_User_Account My_Password: My_Admin_Password My_Server_URL: https://satellite.example.comSatellite ユーザー名と Personal Access Token (PAT) を使用して認証する場合:
My_Username: My_Admin_User_Account My_Password: My_PAT My_Server_URL: https://satellite.example.comHTTP プロキシーを使用して Satellite API にアクセスする場合は、そのプロキシーも vault に保存します。
My_HTTP_Proxy: "http://proxy.example.com:8080"- 変更を保存してエディターを閉じます。Ansible は vault 内のデータを暗号化します。
vault ファイルを参照する Playbook ファイルを作成します。
注記次の YAML スニペットには、Playbook で使用される redhat.satellite.satellite グループのすべてのモジュールにボールト変数をパラメーターとして渡す
module_defaultsキーワードが含まれています。モジュールのデフォルトグループを使用すると、各モジュールにパラメーターを個別に渡すのではなく、モジュールのグループに共通のパラメーターを定義できるため、パラメーター管理が簡素化されます。Satellite API への認証方法を説明します。
Satellite のユーザー名とパスワード、または PAT で認証する場合は、
username、password、およびserver_urlパラメーターを My_Vault.yml の内容にマッピングします。- name: My Playbook hosts: localhost vars_files: - My_Vault.yml module_defaults: group/redhat.satellite.satellite: username: "{{ My_Username }}" password: "{{ My_Password }}" server_url: "{{ My_Server_URL }}" tasks:HTTP プロキシーを使用して Satellite API にアクセスする必要がある場合は、
https_proxy環境変数を設定します。- name: My Playbook hosts: localhost vars_files: - My_Vault.yml environment: https_proxy: "{{ My_HTTP_Proxy }}" module_defaults: group/redhat.satellite.satellite: username: "{{ My_Username }}" password: "{{ My_Password }}" server_url: "{{ My_Server_URL }}" tasks:-
tasks:セクションで、Playbook が実行するタスクを定義します。
Playbook の構文を検証します。
$ ansible-playbook --syntax-check --ask-vault-pass My_Playbook.ymlこのコマンドは構文の検証のみを行うことに注意してください。設定が有効ではあるが、間違っている場合には、保護されません。
Playbook を実行します。
$ ansible-playbook --ask-vault-pass My_Playbook.yml
例5.1 Ansible Playbook の例: Satellite にドメイン new.example.com が存在することを確認する
redhat.satellite.domain モジュールは、ドメインを作成、更新、および削除できます。このサンプル Playbook では、redhat.satellite.domain を使用して、名前が new.example.com のドメインが存在し、Satellite によって管理されていることを確認します。追加の例は、「Satellite Ansible Collection のモジュールに基づく Playbook の例」 を参照してください。
- name: Domain management
hosts: localhost
vars_files:
- My_Vault.yml
module_defaults:
group/redhat.satellite.satellite:
username: "{{ My_Username }}"
password: "{{ My_Password }}"
server_url: "{{ My_Server_URL }}"
tasks:
- name: Ensure domain new.example.com exists
redhat.satellite.domain:
name: new.example.com
サンプル Playbook で指定されている設定は次のとおりです。
vars_files-
My_Username、My_Password、およびMy_Server_URL変数を保存する vault ファイルの名前です。 module_defaults-
vault ファイルの変数を
username、password、およびserver_urlモジュールパラメーターにマッピングするモジュールデフォルトのグループ。 name- Satellite 内に存在する必要があるドメインの名前。
詳細は、ansible-doc redhat.satellite.domain の Ansible モジュールのドキュメントを参照してください。
関連情報
- Ansible vault の使用は、Ansible コミュニティードキュメント の Protecting sensitive data with Ansible vault を参照してください。
- モジュールのデフォルトの使用方法は、Ansible コミュニティードキュメント の モジュールのデフォルト を参照してください。
5.3. Satellite Ansible Collection のモジュールに基づく Playbook の例 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Ansible Collection のモジュールに基づくすべての Playbook には、Satellite API への接続方法の詳細を示すパラメーターを含める必要があります。以下の例では、Ansible Vault およびモジュールの defaults グループを使用して、これらのパラメーターを提供し、ユーザー名とパスワードを使用して認証します。詳細は、「Satellite Ansible コレクションのモジュールを使用した Playbook の作成」 を参照してください。
例5.2 Ansible Playbook の例: リポジトリーを有効にしてコンテンツビューを作成する
このサンプル Playbook では、次のモジュールを使用します。
-
redhat.satellite.repository_set -
redhat.satellite.content_view
Playbook は、リポジトリーが有効になっていることと、これらのリポジトリーを含むコンテンツビューが存在することを確認します。
この Playbook を実行する前に、マニフェストをアップロードし、Red Hat CDN にアクセスできることを確認してください。
- name: Ensure RHEL 9 repositories are enabled and a content view exists
hosts: localhost
vars_files:
- My_Vault.yml
module_defaults:
group/redhat.satellite.satellite:
username: "{{ My_Username }}"
password: "{{ My_Password }}"
server_url: "{{ My_Server_URL }}"
tasks:
- name: Ensure RHEL 9 BaseOS repositories are enabled
redhat.satellite.repository_set:
name: "Red Hat Enterprise Linux 9 for x86_64 - BaseOS (RPMs)"
organization: "Default Organization"
product: "Red Hat Enterprise Linux for x86_64"
repositories:
- releasever: "9"
state: enabled
- name: Ensure RHEL 9 AppStream repositories are enabled
redhat.satellite.repository_set:
name: "Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs)"
organization: "Default Organization"
product: "Red Hat Enterprise Linux for x86_64"
repositories:
- releasever: "9"
state: enabled
- name: Ensure a content view for RHEL 9 repositories exists
redhat.satellite.content_view:
name: "RHEL 9 content view"
organization: "Default Organization"
repositories:
- name: "Red Hat Enterprise Linux 9 for x86_64 - BaseOS RPMs 9"
product: "Red Hat Enterprise Linux for x86_64"
- name: "Red Hat Enterprise Linux 9 for x86_64 - AppStream RPMs 9"
product: "Red Hat Enterprise Linux for x86_64"
詳細は、次のコマンドを含む Ansible モジュールのドキュメントを参照してください。
-
ansible-doc redhat.satellite.repository_sync -
ansible-doc redhat.satellite.content_view
例5.3 Ansible Playbook の例: リポジトリーを同期してコンテンツビューを公開する
このサンプル Playbook では、次のモジュールを使用します。
-
redhat.satellite.repository_sync -
redhat.satellite.content_view_version
Playbook はリポジトリーを同期し、このリポジトリーを含むコンテンツビューを公開します。
この Playbook を実行する前に、必要なリポジトリーが有効になっていて、コンテンツビューが作成されていることを確認してください。これを確認する Playbook の例は、例5.2「Ansible Playbook の例: リポジトリーを有効にしてコンテンツビューを作成する」 を参照してください。
- name: Ensure RHEL 9 repositories are synced and content view is published
hosts: localhost
vars_files:
- My_Vault.yml
module_defaults:
group/redhat.satellite.satellite:
username: "{{ My_Username }}"
password: "{{ My_Password }}"
server_url: "{{ My_Server_URL }}"
tasks:
- name: Sync RHEL repositories
redhat.satellite.repository_sync:
product: "Red Hat Enterprise Linux for x86_64"
organization: "Default Organization"
- name: Publish RHEL 9 content view
redhat.satellite.content_view_version:
content_view: "RHEL 9 content view"
organization: "Default Organization"
詳細は、次のコマンドを含む Ansible モジュールのドキュメントを参照してください。
-
ansible-doc redhat.satellite.repository_sync -
ansible-doc redhat.satellite.content_view_version
関連情報
-
システムにインストールされている Satellite Ansible モジュールを表示するには、
ansible-doc --list redhat.satelliteコマンドを使用します。 - Satellite Ansible モジュールの完全なリストとその他の関連情報は Red Hat Ansible Automation Platform を参照してください。
第6章 障害復旧の準備とデータ損失からの復旧 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、中断イベントが発生した場合に Satellite サービスの継続性を確保するために、障害復旧計画を準備することを推奨しています。これらのガイドラインは、インシデント発生後に Satellite のデプロイメントを運用状態に復元できるようにするために役立ちます。
6.1. 推奨される障害復旧計画の概要 リンクのコピーリンクがクリップボードにコピーされました!
デプロイメント内の Satellite サービスの継続性を確保するのに最も適した障害復旧計画を選択します。
- 仮想化された Satellite Server のスナップショット
- どのようにバックアップするのですか?
- Satellite Server を仮想化し、ハイパーバイザーツールを使用してサーバーの仮想マシンのスナップショットを取得します。この方法は、仮想マシンで Satellite を実行できる場合に適しています。
- 業務やサービス提供を中断するイベントが発生した場合にどのように復旧しますか?
- Satellite サービスを回復するには、仮想マシンのスナップショットを復元します。
- デメリットと予想される影響
- 最後のスナップショットがどの程度古いかによって、復元後のデータが整合性に欠ける場合があります。復元に使用しているスナップショットの作成後に発生したデータの変更は失われます。
- アクティブおよびパッシブな Satellite Server (外部ストレージ付き)
- どのようにバックアップするのですか?
-
重要なデータ (
/var/lib/pulpのコンテンツおよび、/var/lib/pgsqlのデータベース) をネットワーク接続ストレージに保存します。このストレージを別のデータセンターに複製します。プライマリー Satellite Server のクローンであるがパッシブに実行される Satellite Server にストレージをアタッチします。 - 業務やサービス提供を中断するイベントが発生した場合にどのように復旧しますか?
- Satellite サービスを復旧するには、アクティブな Satellite Server の DNS レコードをパッシブな Satellite Server に切り替えます。これにより、パッシブサーバーがアクティブサーバーになります。すべてのホストは設定の更新なしで接続されたままになります。
- デメリットと予想される影響
- ネットワークがアタッチされたストレージが別の場所に複製される場合、同期間隔によって復元後に、若干データの不整合が発生する可能性があります。
- アクティブおよびパッシブな Satellite Server (バックアップとリストア機能付き)
- どのようにバックアップするのですか?
- Satellite Server のバックアップを定期的に作成するようにしてください。このバックアップをパッシブ Satellite Server にコピーし、パッシブサーバーで復元します。
- 業務やサービス提供を中断するイベントが発生した場合にどのように復旧しますか?
- Satellite サービスを復旧するには、アクティブな Satellite Server の DNS レコードをパッシブな Satellite Server に切り替えます。これにより、パッシブサーバーがアクティブサーバーになります。すべてのホストは設定の更新なしで接続されたままになります。
- デメリットと予想される影響
- バックアップの作成頻度およびバックアップの復元頻度、および復元プロセスまでの完了時間によって、復元後にデータが不整合になる可能性があります。
- デュアルアクティブ Satellite Server
- どのようにバックアップするのですか?
アクティブで、データセンターごとに独立した Satellite Server を運用します。各データセンターのホストは、そのデータセンターの Satellite Server に登録されます。次に、業務やサービスが中断されるような事象が発生した場合に確実に回復できるように自動化を設定します。たとえば、定期的にヘルスチェックを実行し、ヘルスチェックによってホストが登録されている現在の Satellite Server が解決されないことが検出された場合、ホストは他の Satellite Server に再登録されます。
ダウンタイムを最小限に抑えるために、さまざまな方法でリカバリーを自動化できます。たとえば、Satellite Ansible コレクションを使用できます。詳細は、Red Hat Satellite の管理 の Satellite Ansible Collection を使用した Satellite 管理の自動化 を参照してください。
- 業務やサービス提供を中断するイベントが発生した場合にどのように復旧しますか?
- Satellite サービスを復元するには、すべてのホストを他のデータセンターの Satellite Server に再登録します。
- デメリットと予想される影響
- 各 Satellite で同じコンテンツビューを作成し、コンテンツのドリフトを防ぐには、コンテンツの同期とコンテンツビューの作成が同期されていることを確認する必要があります。コンテンツドリフトは、利用可能なコンテンツが、コンテンツビューで定義された目的の状態とは異なる場合に発生します。コンテンツのドリフトを防止できない場合は、ホストで利用できるコンテンツに不整合が生じることが予想されます。
6.2. Satellite Server を仮想化することによる障害復旧 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server を仮想化し、仮想マシン (VM) のスナップショットを定期的に取得するようにすると、スナップショットの 1 つから Satellite デプロイメントを復元して、さまざまな障害シナリオに対応できます。
このシナリオを実装する方法の詳細は、仮想化プラットフォームの選択によって異なります。ハイパーバイザーとその機能は多種多様であるため、Red Hat では特定の仮想化プラットフォームに関する詳細な手順を提供していません。
6.2.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- 「推奨される障害復旧計画の概要」 を参照して、この障害復旧プランが有効であることを確認してください。
- Satellite Server は仮想マシンとしてデプロイされます。
6.2.2. Satellite Server を仮想化して障害復旧に備える リンクのコピーリンクがクリップボードにコピーされました!
仮想化された Satellite Server の仮想マシンスナップショットを定期的に取得し、長期的に保存するためにスナップショットをバックアップするなど信頼性の高いプロセスを実装します。
手順
- 仮想化された Satellite Server のスナップショットを定期的に取得するためのスケジュールを定義します。万が一のデータ損失に、どの程度許容できるかを検討してください。頻繁にスナップショットを作成すると、障害発生時に失われるデータ量が少なくなります。ただし、スナップショットの作成には時間がかかり、スナップショットにもストレージの領域が必要になります。
- スナップショット保持ポリシーを定義します。保存するスナップショットの数を検討してください。古くなったスナップショットを定期的に削除すると、ストレージの使用量を最適化できます。
- ハイパーバイザーを使用して、Satellite Server の定期的なスナップショットをスケジュールします。
ハイパーバイザーに障害が発生した場合にデータが失われないように、スナップショットの定期的なバックアップをスケジュールします。
注記スナップショットはすぐにアクセスできる復元ポイントですが、スナップショットをバックアップすると長期保存が可能になり、ハイパーバイザー側で障害が発生した場合の安全性がさらに高まります。
- Satellite Server とは別のマシンで実行される外部データベースを使用している場合は、Satellite Server と同じスケジュールでスナップショットとバックアップを作成します。
検証
- ハイパーバイザーが定義したスケジュールに従ってスナップショットを作成していることを確認します。
- Satellite Server の最新のスナップショットを使用して、分離された環境で復元します。
- 障害発生時に Satellite サービスを復元できることを確認するには、テスト Satellite Server の機能を評価します。「サービスのステータスの取得」を参照してください。
- これらの検証チェックを定期的に実行してください。
6.2.3. Satellite Server の仮想マシンスナップショットを復元して障害から復旧する リンクのコピーリンクがクリップボードにコピーされました!
障害が発生した場合は、Satellite Server の仮想マシン (VM) スナップショットを使用して Satellite サービスを復元します。
復元中に Satellite Server のホスト名が変更されないようにしてください。IP アドレスは変更される可能性があります。
手順
- 復元するスナップショットを特定します。
- ハイパーバイザーツールを使用して、選択したスナップショットから復元します。
- Satellite Server とは別のマシンで実行される外部データベースを使用している場合は、Satellite Server のスナップショットと同時に、またはその前に作成されたスナップショットからデータベースを復元するようにしてください。
- Satellite Server のホスト名が新しい IP アドレスに解決されるように DNS レコードを更新します。これにより、トラフィックが古いサーバーから新しいサーバーにリダイレクトされ、ホストを再登録する必要がなくなります。
検証
- 復元された Satellite Server の機能を評価します。「サービスのステータスの取得」を参照してください。
6.2.4. サービスのステータスの取得 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、一連のバックエンドサービスを使用します。トラブルシューティングを行うときに、Satellite サービスのステータスを確認できます。
手順
Satellite Web UI で、Administer > About に移動します。
- Smart Proxies タブで、すべての Capsule のステータスを表示します。
- Compute Resources タブで、接続されているコンピュートリソースプロバイダーのステータスを表示します。
- Backend System Status テーブルで、すべてのバックエンドサービスのステータスを表示します。
CLI 手順
データベースと Satellite サービスから情報を取得します。
$ hammer pingsystemd で実行されているサービスのステータスを確認します。
# satellite-maintain service status詳細は、
satellite-maintain service --helpを実行して確認してください。ヘルスチェックを実行します。
$ satellite-maintain health check詳細は、
satellite-maintain health --helpを実行して確認してください。
6.3. 外部ストレージを使用したアクティブおよびパッシブな Satellite Server の障害復旧 リンクのコピーリンクがクリップボードにコピーされました!
障害復旧に備えるために、2 つの Satellite Server を設定し、重要なデータを外部の共有ストレージに保存できます。プライマリーサーバーはアクティブですが、セカンダリーサーバーはパッシブのままです。プライマリーサーバーに障害が発生した場合、共有ストレージはセカンダリーサーバーに接続され、セカンダリーサーバーが新しいプライマリーサーバーになります。
6.3.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- 「推奨される障害復旧計画の概要」 を参照して、この障害復旧プランが有効であることを確認する。
-
オンラインネットワーク環境での Satellite Server のインストール の ストレージ要件 と ストレージガイドライン を確認します。共有ストレージが
/var/lib/pulpおよび/var/lib/pgsqlの内容を保持するための要件を満たしている。 - 外部データベースを使用するように Satellite Server を設定した。詳細は、オンラインネットワーク環境での Satellite Server のインストール の 外部データベースの使用 を参照してください。
6.3.2. 外部ストレージを備えたアクティブおよびパッシブな Satellite Server を使用して障害復旧の準備をする リンクのコピーリンクがクリップボードにコピーされました!
アクティブ Satellite Server のクローンとしてパッシブ Satellite Server を作成します。共有ストレージ上の /var/lib/pulp ディレクトリーと /var/lib/pgsql ディレクトリーが両方のサーバーで使用可能であることを確認します。
手順
-
アクティブな Satellite Server から
/var/lib/pulpおよび/var/lib/pgsqlディレクトリーを共有ストレージに複製します。 - アクティブな Satellite Server のクローンを作成します。詳細は、2章Satellite Server のクローン を参照してください。
ソースサーバーの電源はオンのままにしておきます。新しいサーバーの電源をオフにします。
ソースサーバーはアクティブなプライマリーサーバーのままになり、新しいサーバーはパッシブなセカンダリーサーバーになります。
共有ストレージ上のデータベースコンテンツをパッシブサーバーに接続する方法を決定します。
- アクティブサーバーとパッシブサーバーの両方にストレージを直接マウントすると、サーバーは常に同じ最新のコンテンツを参照します。
- ストレージをアクティブサーバーにのみマウントすると、パッシブサーバーはアクティブサーバーとして引き継いだ場合にのみデータにアクセスします。
検証
分離されたステージング環境で、このテストを実行します。
- アクティブサーバーが完全にダウンした状態を再現します。アクティブサーバーにアクセスできないようにするには、マシンの電源をオフにするか、サーバーが仮想マシン (VM) 上で実行されている場合は仮想マシンを停止するか、ファイアウォールを使用してマシンを分離します。
- アクティブサーバーの DNS レコードをパッシブサーバーの DNS レコードと切り替えます。
- パッシブサーバーが共有ストレージに保存されているデータにアクセスできることを確認します。
- テスト Satellite Server の機能を評価します。詳細は、「サービスのステータスの取得」 を参照してください。
- これらの検証チェックを定期的に実行してください。
関連情報
- ディレクトリーのマウントの詳細は、Red Hat Enterprise Linux 9 のファイルシステムの管理 の オンデマンドでのファイルシステムのマウント を参照してください。
6.3.3. 外部ストレージを備えたアクティブサーバーとパッシブサーバーを使用して障害から復旧する リンクのコピーリンクがクリップボードにコピーされました!
アクティブな Satellite Server に障害が発生した場合は、共有ストレージから切り離し、パッシブサーバーが共有ストレージに保存されているデータにアクセスできることを確認します。これにより、パッシブサーバーが新しいアクティブサーバーになります。
手順
- 障害が発生したアクティブサーバーの電源がオフになっているか、共有ストレージから完全に切り離されていることを確認します。これにより、障害が発生したサーバーが共有ストレージへの書き込みを継続できなくなります。
- アクティブサーバーの DNS レコードをパッシブサーバーの DNS レコードと切り替えます。これにより、ホストは接続されたままになり、再登録する必要がなくなります。
- 共有ストレージがアクティブサーバーとパッシブサーバーの両方にマウントされている場合は、パッシブサーバーはすでにデータにアクセスできます。
- 共有ストレージがアクティブサーバーにのみマウントされている場合は、パッシブサーバーに再マウントします。
- 新しいアクティブ Satellite Server の機能を評価します。詳細は、「サービスのステータスの取得」 を参照してください。
6.3.4. サービスのステータスの取得 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、一連のバックエンドサービスを使用します。トラブルシューティングを行うときに、Satellite サービスのステータスを確認できます。
手順
Satellite Web UI で、Administer > About に移動します。
- Smart Proxies タブで、すべての Capsule のステータスを表示します。
- Compute Resources タブで、接続されているコンピュートリソースプロバイダーのステータスを表示します。
- Backend System Status テーブルで、すべてのバックエンドサービスのステータスを表示します。
CLI 手順
データベースと Satellite サービスから情報を取得します。
$ hammer pingsystemd で実行されているサービスのステータスを確認します。
# satellite-maintain service status詳細は、
satellite-maintain service --helpを実行して確認してください。ヘルスチェックを実行します。
$ satellite-maintain health check詳細は、
satellite-maintain health --helpを実行して確認してください。
6.4. バックアップとリストアによるアクティブおよびパッシブな Satellite Server の障害復旧 リンクのコピーリンクがクリップボードにコピーされました!
障害復旧に備えるために、アクティブなプライマリーサーバーとパッシブなセカンダリーサーバーの 2 つの Satellite Server を設定できます。プライマリーサーバーの定期的なバックアップを設定します。プライマリーサーバーに障害が発生した場合は、セカンダリーサーバーでバックアップを復元して、新しいプライマリーサーバーとして使用できます。
6.4.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- 「推奨される障害復旧計画の概要」 を参照して、この障害復旧プランが有効であることを確認する。
- Satellite Server がインストールされている。
6.4.2. アクティブおよびパッシブの Satellite Server とバックアップおよびリストアを使用して障害復旧の準備をする リンクのコピーリンクがクリップボードにコピーされました!
アクティブ Satellite Server のバックアップを復元して、パッシブ Satellite Server を作成します。アクティブサーバーの定期的なバックアップを設定します。
手順
アクティブな Satellite Server の定期的なオフラインバックアップのスケジュールを定義します。万が一のデータ損失に対する許容度とストレージオプションを考慮してください。頻繁にバックアップを取ると、障害発生時に失われるデータ量は少なくなりますが、バックアップには大量のストレージ容量が必要になります。Satellite バックアップのサイズは、「バックアップサイズの予測」 を参照してください。
完全バックアップと増分バックアップを組み合わせることができます。定期的にバックアップが作成されるようにする
cronジョブの例は、「週次の完全バックアップの後に日次の増分バックアップを実行する例」 を参照してください。- 定義したスケジュールに従って、アクティブな Satellite Server の定期的なオフラインバックアップを実行するようにスケジュールします。バックアップの実行方法は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
バックアップディレクトリーが暗号化され、安全な場所に定期的に同期されていることを確認します。デフォルトでは、Satellite はバックアップを
/var/satellite-backupディレクトリーに保存します。重要Satellite Server のバックアップには
/root/ssl-buildディレクトリーの機密情報が含まれています。たとえば、ホスト名、SSH キー、リクエストファイル、SSL 証明書などが含まれます。バックアップを暗号化するか、安全な場所に移動すると、ホストの破損や不正アクセスのリスクを最小限に抑えることができます。- パッシブ Satellite Server として機能するシステムに最新のバックアップを復元します。バックアップの復元は、12章バックアップからの Satellite Server または Capsule Server の復元 を参照してください。
オプション: バックアップの復元を自動化して、パッシブサーバーを最新のバックアップで定期的に更新します。パッシブサーバーを定期的に復元すると、アクティブサーバーに障害が発生した場合の切り替え時間を短縮できます。
バックアップを復元する頻度を検討してください。更新頻度が高いほど、データ損失の可能性は減りますが、インフラストラクチャーと自動化のコストは増加します。
- パッシブサーバーの電源をオフにします。アクティブサーバーの電源をオンのままにします。
- バックアップ保持ポリシーを定義します。保存するバックアップの数を検討してください。古いバックアップを定期的に削除すると、ストレージの使用量が最適化されます。
検証
- 定義したスケジュールに従って Satellite がバックアップを実行していることを確認します。
分離されたステージング環境でさらにテスト手順を実行します。
- アクティブサーバーが完全にダウンした状態を再現します。アクティブサーバーにアクセスできないようにするには、マシンの電源をオフにするか、サーバーが仮想マシン (VM) 上で実行されている場合は仮想マシンを停止するか、ファイアウォールを使用してマシンを分離します。
- アクティブサーバーの DNS レコードをパッシブサーバーの DNS レコードと切り替えます。
- テスト Satellite Server の機能を評価します。詳細は、「サービスのステータスの取得」 を参照してください。
- これらの検証チェックを定期的に実行してください。
6.4.3. アクティブサーバーとパッシブサーバー、バックアップとリストアで障害から復旧する リンクのコピーリンクがクリップボードにコピーされました!
アクティブな Satellite Server に障害が発生した場合は、パッシブなセカンダリーサーバーをアクティブ化します。
手順
- 障害が発生したアクティブサーバーの電源がオフになっており、バックアップがパッシブサーバーに同期されていないことを確認します。
- アクティブサーバーの DNS レコードをパッシブサーバーの DNS レコードと切り替えます。これにより、ホストは接続されたままになり、再登録する必要がなくなります。
- 新しいアクティブ Satellite Server の機能を評価します。詳細は、「サービスのステータスの取得」 を参照してください。
6.4.4. サービスのステータスの取得 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、一連のバックエンドサービスを使用します。トラブルシューティングを行うときに、Satellite サービスのステータスを確認できます。
手順
Satellite Web UI で、Administer > About に移動します。
- Smart Proxies タブで、すべての Capsule のステータスを表示します。
- Compute Resources タブで、接続されているコンピュートリソースプロバイダーのステータスを表示します。
- Backend System Status テーブルで、すべてのバックエンドサービスのステータスを表示します。
CLI 手順
データベースと Satellite サービスから情報を取得します。
$ hammer pingsystemd で実行されているサービスのステータスを確認します。
# satellite-maintain service status詳細は、
satellite-maintain service --helpを実行して確認してください。ヘルスチェックを実行します。
$ satellite-maintain health check詳細は、
satellite-maintain health --helpを実行して確認してください。
6.4.5. 週次の完全バックアップの後に日次の増分バックアップを実行する例 リンクのコピーリンクがクリップボードにコピーされました!
以下のスクリプトでは、日曜日に完全バックアップを実行した後に、増分バックアップを毎日実行します。増分バックアップが実行されるたびに、新しいサブディレクトリーが作成されます。このスクリプトでは、日次の cron ジョブが必要になります。
#!/bin/bash -e
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESTINATION=/var/backup_directory
if [[ $(date +%w) == 0 ]]; then
satellite-maintain backup offline --assumeyes $DESTINATION
else
LAST=$(ls -td -- $DESTINATION/*/ | head -n 1)
satellite-maintain backup offline --assumeyes --incremental "$LAST" $DESTINATION
fi
exit 0
satellite-maintain backup コマンドでは、PATH 内に /sbin ディレクトリーおよび /usr/sbin ディレクトリーを格納する必要があり、確認プロンプトをスキップするために --assumeyes オプションを使用することに注意してください。
6.5. 2 台のアクティブな Satellite Server による障害復旧 リンクのコピーリンクがクリップボードにコピーされました!
障害復旧に備えるために、2 台の Satellite Server を設定し、サーバーごとに別のデータセンターで運用できます。いずれかのサーバーに障害が発生した場合、障害の発生したサーバーから他のサーバーにすべてのホストを再登録できます。
6.5.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- 「推奨される障害復旧計画の概要」 を参照して、この障害復旧プランが有効であることを確認する。
- Satellite Server がインストールされている。
6.5.2. 2 台のアクティブな Satellite Server で障害復旧の準備をする リンクのコピーリンクがクリップボードにコピーされました!
最初の Satellite Server のバックアップを復元して、2 番目の Satellite Server を作成します。両方のサーバーをそれぞれのデータセンターで独立して動作するように設定しますが、時間の経過とともにコンテンツがばらばらにならないようにします。
手順
- Satellite Server をバックアップします。詳細は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
他の Satellite Server として機能するシステムでバックアップを復元します。詳細は、12章バックアップからの Satellite Server または Capsule Server の復元 を参照してください。
注記各サーバーには異なるホスト名と IP アドレスが必要です。これにより、1 台のサーバーに障害が発生した場合にホストを再登録できるようになります。
サーバーにあるコンテンツの一貫性が保たれていることを確認します。
両方のサーバーでコンテンツの同期とコンテンツビューの作成を管理する場合は、コンテンツのドリフトを防ぐために次のガイドラインに従ってください。
-
両方のサーバーのリポジトリーを定期的に同期します。リポジトリーの同期を自動化するには、
redhat.satellite.repository_syncおよびredhat.satellite.sync_planの Ansible モジュールを使用できます。 - 両方のサーバーのコンテンツビューが一致していることを確認します。
-
両方のサーバーのリポジトリーを定期的に同期します。リポジトリーの同期を自動化するには、
1 台のサーバーでコンテンツの同期とコンテンツビューの作成を管理する場合は、次のいずれかの機能を使用してコンテンツのドリフトを防止します。
- 障害復旧サイトがプライマリーサイトへのネットワークアクセスできる場合は、Inter-Satellite Synchronization (ISS) を使用して、障害復旧サーバーがプライマリーサーバーのコンテンツを同期するようにします。
- プライマリーサイトに対するネットワークアクセス権が障害復旧サイトにない場合は、エクスポートとインポートを使用してコンテンツを同期します。
- 1 台のサーバーでコンテンツビューの作成のみを管理してコンテンツの同期は管理しない場合、他のサーバーまたは複数の他のサーバーを設定して、最初のサーバーからコンテンツビューをインポートし、リポジトリーからのコンテンツを同期するように設定できます。
- 各サーバーがそれぞれのデータセンター内のホストを管理できるように、ホストをサーバーに登録します。たとえば、My_Data_Center_1 内のすべてのホストを 1 台の Satellite Server に登録し、My_Data_Center_2 内のすべてのホストを別の Satellite Server に登録します。
-
両方のサーバーで
satellite-maintain health checkコマンドの実行を自動化します。ヘルスチェックでは、サーバーが完全に動作しているかどうかを確認します。
検証
分離されたステージング環境で、このテストを実行します。
- サーバーの 1 台で完全にダウンした状態を再現します。サーバーにアクセスできないことを確認するには、マシンの電源をオフにするか、サーバーが仮想マシン (VM) 上で実行されている場合は仮想マシンを停止するか、ファイアウォールを使用してマシンを分離します。
-
satellite-maintain health checkの自動化でエラーが報告されたことを確認します。 - アクセスできないサーバーからアクセス可能なサーバーにすべてのホストを再登録します。
- ホストがアクセス可能なサーバーに適切に再登録されていることを確認します。
- これらの検証チェックを定期的に実行してください。
関連情報
- Ansible Playbook は、フェイルオーバー、再登録、同期を自動化するのに役立ちます。詳細は、Red Hat Satellite の管理 の Satellite Ansible Collection を使用した Satellite 管理の自動化 を参照してください。
- リポジトリーの同期の詳細は、コンテンツの管理 の リポジトリーの同期 を参照してください。
- ISS、エクスポート、インポートなど、Satellite Server 間でのコンテンツの同期の詳細は、コンテンツの管理 の Satellite Server 間でのコンテンツの同期 を参照してください。
6.5.3. 2 台のアクティブな Satellite Server を使用して障害から復旧する リンクのコピーリンクがクリップボードにコピーされました!
「2 台のアクティブな Satellite Server で障害復旧の準備をする」 で実装されているヘルスチェクが Satellite Server で問題を報告した場合、サーバーに障害が発生している可能性があります。サーバーがダウンしている場合は、ホストを他のサーバーに再登録する必要があります。
手順
サーバーのステータスを確認します。
# satellite-maintain health check-
satellite-maintain health checkで問題が報告された場合は、サーバーの電源がオフになっていることを確認してください。 - 障害が発生したサーバーによって管理されているデータセンターのすべてのホストを、他の正常に機能しているサーバーに再登録します。
検証
- ホストが適切に再登録されていることを確認します。
関連情報
- Ansible Playbook は、フェイルオーバー、再登録、同期を自動化するのに役立ちます。詳細は、Red Hat Satellite の管理 の Satellite Ansible Collection を使用した Satellite 管理の自動化 を参照してください。
第7章 組織の管理 リンクのコピーリンクがクリップボードにコピーされました!
組織は、所有者、目的、コンテンツ、セキュリティーレベルなどの区分に基づいて Red Hat Satellite リソースを論理グループに分割します。Red Hat Satellite で複数の組織を作成して管理し、Red Hat サブスクリプションを分割して各組織に割り当てることができます。これにより、1 つの管理システムで複数の個別の組織のコンテンツを管理できるようになります。
7.1. Satellite での組織の使用例 リンクのコピーリンクがクリップボードにコピーされました!
- 単一の組織
単一の組織の使用は、システム管理チェーンが単純な小規模企業に適しています。
この場合、企業用の組織を 1 つ作成し、それにコンテンツを割り当てます。この目的のために Default Organization を使用することもできます。
- 複数の組織
複数の組織の使用は、複数の小規模な事業部門を所有する大企業に適しています。たとえば、システム管理グループとソフトウェア開発グループが別々にある会社などです。
この場合、会社用の組織を 1 つ作成してから、会社が所有する各事業部門用の組織を作成します。その後、各部門のニーズに基づいて各組織にコンテンツを割り当てます。
- 外部組織
外部組織の使用は、他の組織の外部システムを管理する会社に適しています。たとえば、クラウドコンピューティングと Web ホストリソースを顧客に提供する会社です。
この場合、会社の独自システムインフラストラクチャー用の組織を作成してから、外部の各企業用の組織を作成します。その後、必要に応じて各組織にコンテンツを割り当てます。
7.2. 組織の作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して組織を作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Organizations に移動します。
- 新規組織 をクリックします。
- 名前 フィールドに、組織の名前を入力します。
- ラベル フィールドには、組織の一意識別子を入力します。これは、コンテンツストレージのディレクトリーなど、特定のアセットを作成し、マッピングするために使用されます。文字、数字、アンダースコア、およびダッシュを使用し、スペースは使用しないでください。
- オプション: Description フィールドに、組織の説明を入力します。
- Submit をクリックします。
- ホストに組織が割り当てられていない場合は、組織に追加するホストを選択し、Proceed to Edit をクリックします。
- 編集 ページで、組織に追加するインフラストラクチャーリソースを割り当てます。これには、ネットワークリソース、インストールメディア、キックスタートテンプレートなどのパラメーターが含まれます。Administer > Organizations に移動して、編集する組織を選択すると、いつでもこのページに戻ることができます。
- Submit をクリックします。
CLI 手順
組織を作成するには、以下のコマンドを入力します。
$ hammer organization create \ --name "My_Organization" \ --label "My_Organization_Label" \ --description "My_Organization_Description"オプション: 組織を編集するには、
hammer organization updateコマンドを入力します。たとえば、以下のコマンドはコンピュートリソースを組織に割り当てます。$ hammer organization update \ --name "My_Organization" \ --compute-resource-ids 1
7.3. 組織のデバッグ証明書の作成 リンクのコピーリンクがクリップボードにコピーされました!
組織のデバッグ証明書が必要な場合は、以下の手順を使用します。
手順
- Satellite Web UI で、Administer > Organizations に移動します。
- デバッグ証明書を生成する組織を選択します。
- Generate and Download をクリックします。
- 証明書ファイルをセキュアな場所に保存します。
プロビジョニングテンプレートのデバッグ証明書
デバッグ証明書が組織内にダウンロードされていない場合は、プロビジョニングテンプレートのダウンロード時に自動的に生成されます。
7.4. 組織のデバッグ証明書を使用したリポジトリーコンテンツの閲覧 リンクのコピーリンクがクリップボードにコピーされました!
Web ブラウザーを使用して、またはその組織のデバッグ証明書がある場合は、API を使用して組織のリポジトリーコンテンツを表示できます。
前提条件
- 組織の証明書を作成してダウンロードしました。詳細は、「組織のデバッグ証明書の作成」 を参照してください。
手順
証明書の秘密鍵と公開鍵を 2 つのファイルに分割します。
たとえば、デフォルトの組織の X.509 証明書を開きます。
$ vi 'Default Organization-key-cert.pem'-
-----BEGIN RSA PRIVATE KEY-----から-----END RSA PRIVATE KEY-----までのファイルのコンテンツをkey.pemファイルにコピーします。 -
-----BEGIN CERTIFICATE-----から-----END CERTIFICATE-----までのファイルのコンテンツをcert.pemファイルにコピーします。
- ブラウザーを使用するには、まず X.509 証明書をブラウザーがサポートする形式に変換してから、証明書をインポートする必要があります。
Firefox ユーザーの場合
次のコマンドを使用して、証明書を PKCS12 形式に変換します。
$ openssl pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in cert.pem -inkey key.pem -out My_Organization_Label.pfx -name My_Organization- Firefox ブラウザーで、Edit > Preferences > Advanced Tab に移動します。
- View Certificates を選択し、Your Certificates タブをクリックします。
-
Import をクリックして、読み込む
.pfxファイルを選択します。 アドレスバーに次の URL を入力して、すべてのリポジトリーのアクセス可能なパスを参照し、その内容を確認します。
https://satellite.example.com/pulp/content/
CURL ユーザーの場合
CURL で組織のデバッグ証明書を使用するには、以下のコマンドを入力します。
$ curl -k --cert cert.pem --key key.pem \ https://satellite.example.com/pulp/content/My_Organization_Label/Library/content/dist/rhel/server/7/7Server/x86_64/os/cert.pemおよびkey.pemへのパスが正しい絶対パスであることを確認します。そうしないと、コマンドは警告なしで失敗します。Pulp は組織ラベルを使用するため、組織ラベルを URL に入力する必要があります。
7.5. 組織の削除 リンクのコピーリンクがクリップボードにコピーされました!
組織は、ライフサイクル環境またはホストグループに関連付けられていない場合に削除できます。削除予定の組織にライフサイクル環境またはホストグループが関連付けられている場合は、Administer > Organizations に移動して関連の組織をクリックします。
インストール中に作成された Default Organization は削除しないでください。デフォルトの組織は、Satellite 環境内の関連付けられていないホスト用のプレースホルダーであるためです。環境には常に 1 つ以上の組織が必要です。
手順
- Satellite Web UI で、Administer > Organizations に移動します。
- 削除する組織名の右側にあるリストから 削除 を選択します。
- OK をクリックして組織を削除します。
CLI 手順
以下のコマンドを入力して、削除する組織の ID を取得します。
$ hammer organization list出力から、削除する組織の ID をメモします。
以下のコマンドを入力して組織を削除します。
$ hammer organization delete --id Organization_ID
第8章 ロケーションの管理 リンクのコピーリンクがクリップボードにコピーされました!
ロケーションは、リソースをグループ化してホストを割り当てる方法を提供する組織と同様に機能します。組織とロケーションには、以下の概念の違いがあります。
- ロケーションは、物理または地理的な設定に基づいています。
- ロケーションには階層構造があります。
親ロケーションを提供し、ロケーションを階層的に構造化できます。特に指定がない限り、場所は親の場所から設定を継承します。
8.1. ロケーションの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、ホストとリソースをロケーション別に管理できるようにロケーションを作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Locations に移動します。
- New Location をクリックします。
- オプション: Parent リストから、親ロケーションを選択します。これにより、ロケーションの階層が作成されます。
- Name フィールドに、ロケーションの名前を入力します。
- オプション: Description フィールドに、ロケーションの説明を入力します。
- Submit をクリックします。
- ホストにロケーションが割り当てられていない場合は、新しいロケーションに割り当てるホストを追加し、Proceed to Edit をクリックします。
- ロケーションに追加するインフラストラクチャーリソースを割り当てます。これには、ネットワークリソース、インストールメディア、キックスタートテンプレートなどのパラメーターが含まれます。Administer > Locations に移動して、編集するロケーションを選択すると、いつでもこのページに戻ることができます。
- Submit をクリックして変更を保存します。
CLI 手順
以下のコマンドを実行してロケーションを作成します。
$ hammer location create \ --description "My_Location_Description" \ --name "My_Location" \ --parent-id "My_Location_Parent_ID"
8.2. 複数のロケーションの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の Bash スクリプトでは、3 つのロケーション (ロンドン、ミュンヘン、ボストン) を作成して、これらのロケーションを Example Organization に割り当てます。
ORG="Example Organization"
LOCATIONS="London Munich Boston"
for LOC in ${LOCATIONS}
do
hammer location create --name "${LOC}"
hammer location add-organization --name "${LOC}" --organization "${ORG}"
done
8.3. ロケーションコンテキストの設定 リンクのコピーリンクがクリップボードにコピーされました!
ロケーションコンテキストは、ホストとその関連リソースに使用するロケーションを定義するものです。
手順
ロケーションメニューは、Satellite Web UI の左上にあるメニューバーの 2 番目のメニュー項目です。現在のロケーションを選択していない場合には、メニューには 任意のロケーション と表示されます。任意のロケーション をクリックして、使用するロケーションを選択します。
CLI 手順
CLI を使用する場合は、オプションとして --location "My_Location" または --location-id "My_Location_ID" を追加します。以下に例を示します。
$ hammer host list --location "My_Location"
このコマンドは、My_Location のロケーションに関連付けられたホストを一覧表示します。
8.4. ロケーションの削除 リンクのコピーリンクがクリップボードにコピーされました!
ロケーションは、ライフサイクル環境またはホストグループに関連付けられていない場合に削除できます。削除するロケーションにライフサイクル環境またはホストグループが関連付けられている場合は、Administer > Locations に移動して、関連するロケーションをクリックします。インストール中に作成されたデフォルトのロケーションは、Satellite 環境で関連付けられていないホストへのプレースホルダーであるため、削除しないでください。環境には常に 1 つ以上のロケーションが必要です。
手順
- Satellite Web UI で、Administer > Locations に移動します。
- 削除するロケーションの名前の右側にあるリストから 削除 を選択します。
- OK をクリックして、ロケーションを削除します。
CLI 手順
以下のコマンドを入力して、削除するロケーションの ID を取得します。
$ hammer location list出力から、削除するロケーションの ID をメモします。
以下のコマンドを実行してロケーションを削除します。
$ hammer location delete --id Location ID
第9章 ユーザーとロールの管理 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーは、システムを使用する各個人の一連の詳細情報を定義します。組織と環境をユーザーに関連付けることで、新しいエンティティーを作成する際にこれらのデフォルト値を自動的に使用することができます。また、ユーザーには 1 つ以上の ロール を割り当てることもでき、ユーザーには組織と環境を参照および管理する権限が与えられます。ユーザーの使用に関する詳細は、「ユーザーの管理」 を参照してください。
複数のユーザーのパーミッションは、ユーザーグループでまとめることにより一括して管理できます。また、ユーザーグループ自体をさらにグループ化してパーミッションの階層を作成できます。ユーザーグループの作成の詳細は、「ユーザーグループの作成と管理」 を参照してください。
ロールでは、一連のパーミッションおよびアクセスレベルを定義します。各ロールには、ロールに許可されたアクションを指定する 1 つ以上の パーミッションフィルター が含まれます。アクションは、リソースタイプ に従ってグループ化されます。ロールが作成されたら、そのロールにはユーザーとユーザーグループを関連付けることができます。この場合は、ユーザーの大きなグループに同じ一連のパーミッションセットを割り当てることができます。Satellite では、事前定義された一連のロールが提供され、「ロールの作成および管理」 で説明されているようにカスタムロールおよびパーミッションフィルターを作成することもできます。
9.1. ユーザーの管理 リンクのコピーリンクがクリップボードにコピーされました!
管理者は、Satellite ユーザーを作成、変更、および削除できます。また、異なる ロール をユーザーやユーザーのグループに割り当てて、アクセスパーミッションを設定することもできます。
9.1.1. ユーザーの作成 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用してユーザーを作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Users に移動します。
- Create User をクリックします。
- 新しいユーザーのアカウントの詳細を入力します。
- Submit をクリックしてユーザーを作成します。
指定できるユーザーアカウントの詳細は次のとおりです。
User タブで、Authorized by リストから認証ソースを選択します。
- INTERNAL: Satellite Server 内でユーザーを管理します。
- EXTERNAL: 外部認証を使用してユーザーを管理します。詳細は、Red Hat Satellite ユーザーの認証設定 を参照してください。
Organizations タブで、ユーザーの組織を選択します。ログイン後のユーザーに対して Satellite が選択するデフォルトの組織を、Default on login リストから指定します。
重要ユーザーが組織に割り当てられていない場合、そのユーザーのアクセスが制限されます。
CLI 手順
ユーザーを作成します。
$ hammer user create \ --auth-source-id My_Authentication_Source \ --login My_User_Name \ --mail My_User_Mail \ --organization-ids My_Organization_ID_1,My_Organization_ID_2 \ --password My_User_Password--auth-source-id 1の設定では、ユーザーは内部で認証されますが、外部認証を指定することもできます。--adminオプションを追加して、管理者権限をユーザーに付与します。組織 ID を指定する必要はありません。後で
hammer user updateコマンドを使用してユーザーの詳細を変更できます。
関連情報
-
Hammer を使用してユーザーアカウントを作成する方法の詳細を確認するには、
hammer user create --helpと入力してください。
API 要求
$ curl \
--header "Accept:application/json" \
--header "Content-Type:application/json" \
--request POST \
--user My_User_Name:My_Password \
--data "{\"firstname\":\"Test Name\",\"mail\":\"test@example.com\",\"login\":\"test_user\",\"password\":\"password123\",\"auth_source_id\":1}" \
https://satellite.example.com/api/users \
| python3 -m json.tool
9.1.2. ユーザーへのロールの割り当て リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、ロールをユーザーに割り当てます。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Users に移動します。
ロールを割り当てるユーザーの ユーザー名 をクリックします。
注記ユーザーアカウントが表示されない場合は、現在適切な組織を表示しているかどうかを確認します。Satellite の全ユーザーをリスト表示するには、デフォルトの組織 をクリックしてから 任意の組織 をクリックします。
- ロケーション タブをクリックして、ロケーションが割り当てられていない場合は選択します。
- 組織 タブをクリックして、組織が割り当てられていることを確認します。
- ロール タブをクリックして利用可能なロールのリストを表示します。
ロール リストから割り当てるロールを選択します。
利用可能な全パーミッションを付与するには、Administrator チェックボックスを選択します。
- Submit をクリックします。
ユーザーに割り当てられたロールを参照するには、ロール タブをクリックします。割り当てられたロールは、選択された項目 に表示されます。割り当てたロールを削除するには、選択された項目 でロール名をクリックします。
CLI 手順
ユーザーにロールを割り当てるには、次のコマンドを入力します。
$ hammer user add-role --id user_id --role role_name
9.1.3. 別のユーザーアカウントへの切り替え リンクのコピーリンクがクリップボードにコピーされました!
管理者は、別のユーザーとして Satellite Web UI に一時的にログオンすることにより、テストおよびトラブルシューティングの目的で他の認証済みユーザーに切り替えることができます。別のユーザーに切り替える場合、管理者は、同じメニューを含め、切り替えたユーザーとまったく同じシステム内のアクセス権限を持ちます。
監査は、管理者が別のユーザーとして実行するアクションを記録するために作成されます。ただし、管理者が別のユーザーとして実行するすべてのアクションは、切り替え後のユーザーで実行されたものとして記録されます。
前提条件
- Satellite の管理者権限を持つユーザーとして Satellite Web UI にログオンしていること。
手順
- Satellite Web UI で、Administer > Users に移動します。
- 切り替えるユーザーの右側の Actions 列のリストから、ユーザー切り替え を選択します。
切り替えセッションを停止するには、メインメニューの右上にある切り替えアイコンをクリックします。
9.1.4. API のみのユーザーの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite API とのみ対話できるユーザーを作成できます。
前提条件
ユーザーを作成し、それらにロールを割り当てました。このユーザーは内部で承認されている必要があることに注意してください。詳細は、以下のセクションを参照してください。
手順
- 管理者として Satellite にログインします。
- Administer > Users に移動して、ユーザーを選択します。
User タブで、パスワードを設定します。このパスワードを保存したり、他の人と通信したりしないでください。コンソールで疑似ランダム文字列を作成できます。
# openssl rand -hex 32- ユーザーの Personal Access Token を作成します。詳細は、「Personal Access Token の作成」 を参照してください。
9.2. SSH キーの管理 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーに SSH キーを追加すると、プロビジョニング中に SSH キーのデプロイメントが可能になります。プロビジョニング中に SSH キーをデプロイする方法の詳細は、ホストのプロビジョニング の プロビジョニング中の SSH キーのデプロイ を参照してください。
SSH キーと SSH キーの作成は、Red Hat Enterprise Linux 9 の基本的なシステム設定 の OpenSSH を使用した 2 つのシステム間の安全な通信の使用 を参照してください。
9.2.1. ユーザーの SSH キーの管理 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、ユーザーの SSH キーを追加または削除します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
前提条件
- Red Hat Satellite 管理ユーザーとして Satellite Web UI にログインするか、SSH キーの追加には create_ssh_key パーミッションを有効にしたユーザーとして、キーの削除には destroy_ssh_key パーミッションを有効にしたユーザーとしてログインすること。
手順
- Satellite Web UI で、Administer > Users に移動します。
- Username 列から必要となるユーザーのユーザー名をクリックします。
SSH キー タブをクリックします。
SSH キーの追加
- 公開 SSH キーのコンテンツをクリップボードに用意します。
- SSH キーの追加 をクリックします。
- キー フィールドに公開 SSH キーのコンテンツをクリップボードから貼り付けます。
- 名前 フィールドに SSH キーの名前を入力します。
- Submit をクリックします。
SSH キーの削除
- 削除する SSH キーの列にある 削除 をクリックします。
- 確認プロンプトで OK をクリックします。
CLI 手順
SSH キーをユーザーに追加するには、公開 SSH キーファイルへのパスを指定するか、クリップボードにコピーする公開 SSH キーのコンテンツへのパスが必要です。
公開 SSH キーファイルがある場合は、次のコマンドを入力します。
$ hammer user ssh-keys add \ --user-id user_id \ --name key_name \ --key-file ~/.ssh/id_rsa.pubSSH 公開キーのコンテンツがある場合は、次のコマンドを入力します。
$ hammer user ssh-keys add \ --user-id user_id \ --name key_name \ --key ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNtYAAABBBHHS2KmNyIYa27Qaa7EHp+2l99ucGStx4P77e03ZvE3yVRJEFikpoP3MJtYYfIe8k 1/46MTIZo9CPTX4CYUHeN8= host@user
ユーザーの SSH キーを削除するには、次のコマンドを入力します。
$ hammer user ssh-keys delete --id key_id --user-id user_id
ユーザーにアタッチされた SSH キーを表示するには、次のコマンドを入力します。
$ hammer user ssh-keys info --id key_id --user-id user_id
ユーザーにアタッチされた SSH キーを表示するには、以下のコマンドを入力します。
$ hammer user ssh-keys list --user-id user_id
9.3. Personal Access Token の管理 リンクのコピーリンクがクリップボードにコピーされました!
Personal Access Token を使用すると、パスワードを使用せずに、API リクエストを認証できます。Personal Access Token の有効期限を設定できます。有効期限が切れる前に、有効期限が切れると判断した場合は、トークンを取り消すことができます。
9.3.1. Personal Access Token の作成 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Personal Access Token を作成します。
手順
- Satellite Web UI で、Administer > Users に移動します。
- Personal Access Token を作成するユーザーを選択します。
- Personal Access Tokens タブで、Add Personal Access Token をクリックします。
- Personal Access Token の Name を入力します。
- オプション: Expires 日付を選択して、有効期限を設定します。有効期限を設定しない場合、Personal Access Token は、取り消されないかぎり、期限切れになりません。
Submit をクリックします。Personal Access Tokens タブで、Personal Access Token を使用できるようになりました。
重要ページを離れるか、新しい Personal Access Token を作成すると、再びアクセスできなくなるため、Personal Access Token を必ず保存してください。Copy to clipboard をクリックして、Personal Access Token をコピーできます。
検証
Satellite Server に API リクエストを送信し、Personal Access Token で認証します。
$ curl \ --user My_Username:My_Personal_Access_Token \ https://satellite.example.com/api/statusステータス
200のレスポンスを受け取る必要があります。次に例を示します。{"satellite_version":"6.17.0","result":"ok","status":200,"version":"3.5.1.10","api_version":2}Personal Access Tokens タブに戻ると、Personal Access Token の横に更新された Last Used 時刻が表示されます。
9.3.2. Personal Access Token の取り消し リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、有効期限が切れる前に、Personal Access Token を取り消します。
手順
- Satellite Web UI で、Administer > Users に移動します。
- Personal Access Token を取り消すユーザーを選択します。
- Personal Access Tokens タブで、取り消す Personal Access Token を見つけます。
- 取り消す Personal Access Token の横にある Actions 列の 取り消し をクリックします。
検証
Satellite Server に API リクエストを送信し、失効した Personal Access Token で認証を試みます。
$ curl \ --user My_Username:My_Personal_Access_Token \ https://satellite.example.com/api/status次のエラーメッセージが表示されます。
{ "error": {"message":"Unable to authenticate user My_Username"} }
9.4. ユーザーグループの作成と管理 リンクのコピーリンクがクリップボードにコピーされました!
9.4.1. ユーザーグループ リンクのコピーリンクがクリップボードにコピーされました!
Satellite を使用すると、ユーザーのグループに権限を割り当てることができます。また、ユーザーグループを他のユーザーグループのコレクションとして作成することもできます。外部認証ソースを使用する場合は、Red Hat Satellite ユーザーの認証の設定 の 外部ユーザーグループの設定 で説明されているように、Satellite ユーザーグループを外部ユーザーグループにマッピングできます。
ユーザーグループは組織コンテキストで定義されます。したがって、ユーザーグループにアクセスする前に組織を選択する必要があります。
9.4.2. ユーザーグループの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用してユーザーグループを作成します。
手順
- Satellite Web UI で、Administer > User Groups に移動します。
- ユーザーグループの作成 をクリックします。
ユーザーグループ タブで、新規ユーザーグループの名前を指定し、グループメンバーを選択します。
- ユーザーグループ のリストから、以前に作成したユーザーグループを選択します。
- ユーザー のリストからユーザーを選択します。
- ロール タブで、ユーザーグループに割り当てるロールを選択します。または、管理者 チェックボックスを選択して利用可能なすべてのパーミッションを割り当てます。
- Submit をクリックします。
CLI 手順
ユーザーグループを作成するには、次のコマンドを入力します。
$ hammer user-group create \ --name My_User_Group_Name \ --role-ids My_Role_ID_1,My_Role_ID_2 \ --user-ids My_User_ID_1,My_User_ID_2
9.4.3. ユーザーグループの削除 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、Satellite からユーザーグループを削除します。
手順
- Satellite Web UI で、Administer > User Groups に移動します。
- 削除するユーザーグループの右側にある Delete をクリックします。
- Confirm をクリックしてユーザーグループを削除します。
9.5. ロールの作成および管理 リンクのコピーリンクがクリップボードにコピーされました!
Satellite のユーザーには、1 つ以上のロールを割り当てることができます。これらのロールは、ユーザーが Satellite で指定された管理アクションを実行できるようにする権限に関連付けられています。パーミッションフィルターでは、特定のリソースタイプに許可されるアクションを定義します。
Satellite には、標準的なタスクを実行できるパーミッションを持つ定義済みのロールセットが用意されています。これらのロールのリストは、「Satellite で利用可能な事前定義済みロール」 を参照します。カスタムロールを設定することもできます。
定義済みのロールの 1 つは、デフォルトロール です。Satellite は、システム内のすべてのユーザーに デフォルトロール を割り当てます。デフォルトでは、デフォルトロール で付与される権限は限定されています。デフォルトロール に権限を追加すると、すべての Satellite ユーザーにその権限が付与されることに注意してください。ユーザーに別のロールを割り当てても、そのユーザーから デフォルトロール は削除されません。
さまざまな Satellite デプロイメントでは、次のタイプのロールが一般的に定義されます。
- アプリケーションまたはインフラストラクチャーの一部に関連するロール
- たとえば、アプリケーションサーバーおよびデータベースサーバーの所有者のロールではなく、オペレーティングシステムとしての Red Hat Enterprise Linux の所有者のロールなどです。
- ソフトウェアライフサイクルの特定の段階に関連するロール
- たとえば、開発、テスト、運用の各フェーズにロールが分割され、各フェーズに 1 人以上の所有者が設定される場合などです。
- 特定のタスクに関連するロール
- たとえば、組織内でユーザーが実行する必要がある特定のタスクに応じて、セキュリティー管理者のロールとライセンス管理者のロールを作成できます。
9.5.1. ロールの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用してロールを作成します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- Create Role をクリックします。
- ロールの 名前 を記入します。
- 送信 をクリックして、新しいロールを保存します。
CLI 手順
以下のコマンドを実行してロールを作成します。
$ hammer role create --name My_Role_Name
ロールにはパーミッションを含める必要があります。ロールの作成後は、「ロールへのパーミッションの追加」 に進んでください。
9.5.2. ロールのクローン作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Web UI を使用してロールのクローンを作成します。
手順
- Satellite web UI で、Administer > Roles に移動し、必要なロールの右側にあるドロップダウンメニューから Clone を選択します。
- ロールの 名前 を記入します。
- 送信 をクリックしてロールのクローンを作成します。
- クローンされたロールの名前をクリックし、フィルター に移動します。
- 必要に応じて、パーミッションを編集します。
- 送信 をクリックして、新しいロールを保存します。
9.5.3. ロールへのパーミッションの追加 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、ロールにパーミッションを追加します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 必要なロールの右側にあるドロップダウンリストから フィルターの追加 を選択します。
- ドロップダウンリストから リソースタイプ を選択します。(その他) グループには、どのリソースグループにも関連付けられていないパーミッションが含まれます。
- 選択するパーミションを パーミッション リストからクリックします。
- リソースタイプ での選択により、無制限 と 上書き のチェックボックスが表示されます。無制限 チェックボックスはデフォルトで選択され、選択されたタイプの全リソースにパーミッションが適用されます。無制限 チェックボックスを無効にすると、検索 フィールドが有効になります。このフィールドでは、Satellite 検索構文を使用してさらにフィルタリングを指定できます。詳細は、「詳細なパーミッションフィルタリング」 を参照してください。上書き チェックボックスを有効にすると、新たなロケーションと組織を追加して、それらのロケーションや組織のリソースタイプにこのロールがアクセスできるようになります。また、すでに関連付けられたロケーションや組織をリソースタイプから削除して、アクセスを制限することもできます。
- Next をクリックします。
- Submit をクリックして変更を保存します。
CLI 手順
利用可能な全パーミッションを表示します。
$ hammer filter available-permissionsロールにパーミッションを追加します。
$ hammer filter create \ --permission-ids My_Permission_ID_1,My_Permission_ID_2 \ --role My_Role_Name
ロールとパーミッションパラメーターの詳細は、hammer role --help および hammer filter --help コマンドを入力します。
9.5.4. ロールのパーミッションの表示 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Web UI を使用してロールのパーミッションを表示します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 必要なロールの右側にある フィルター をクリックして、フィルター ページを開きます。
フィルター ページでは、リソースタイプ別にグループ化されたロールに割り当てられたパーミッションの表が示されます。また、このページでは、Satellite システムで使用できるパーミッションとアクションの完全な表を生成できます。詳細は、「完全なパーミッションテーブルの作成」 を参照してください。
9.5.5. 完全なパーミッションテーブルの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite CLI を使用してパーミッションテーブルを作成します。
手順
以下のコマンドで Satellite コンソールを起動します。
# foreman-rake consoleコンソールに以下のコードを挿入します。
f = File.open('/tmp/table.html', 'w') result = Foreman::AccessControl.permissions {|a,b| a.security_block <=> b.security_block}.collect do |p| actions = p.actions.collect { |a| "<li>#{a}</li>" } "<tr><td>#{p.name}</td><td><ul>#{actions.join('')}</ul></td><td>#{p.resource_type}</td></tr>" end.join("\n") f.write(result)上記の構文により、パーミッションの表が作成され、
/tmp/table.htmlファイルに保存されます。-
Ctrl+Dを押して、Satellite コンソールを終了します。 /tmp/table.htmlの最初の行に以下のテキストを挿入します。<table border="1"><tr><td>Permission name</td><td>Actions</td><td>Resource type</td></tr>/tmp/table.htmlの最後に以下のテキストを追加します。</table>-
Web ブラウザーで
/tmp/table.htmlを開いて、表を確認します。
9.5.6. ロールの削除 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、Satellite からロールを削除します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 削除するロールの右側にあるドロップダウンリストから Delete を選択します。
- Confirm をクリックしてロールを削除します。
9.6. Satellite で利用可能な事前定義済みロール リンクのコピーリンクがクリップボードにコピーされました!
以下の表は、Satellite で事前定義されたロールがユーザーに付与するパーミッションの概要を示しています。
事前定義されたロールとそれらが付与するパーミッションの完全なセットを確認するには、Satellite Web UI に特権ユーザーとしてログインし、Administer > Roles に移動します。詳細は、「ロールのパーミッションの表示」 を参照してください。
| 事前定義されたロール | ロールが提供するパーミッション | 関連情報 |
|---|---|---|
| Auditor | 監査ログを表示します。 | |
| デフォルトロール | タスクとジョブの呼び出しを表示します。 | Satellite は、このロールをシステム内のすべてのユーザーに自動的に割り当てます。 |
| Manager | グローバル設定を表示および編集します。 | |
| Organization admin | 組織を管理するパーミッションを除くすべてのパーミッション。 | 組織ごとに定義された管理者ロール。このロールでは、他の組織のリソースは表示できません。 このロールのクローンを作成して組織を割り当てると、その組織の管理をユーザーに委譲できます。 |
| Site manager | さまざまな項目のパーミッションを表示します。 インフラストラクチャー内のホストを管理するパーミッション。 | Manager ロールの制限バージョン。 |
| システム管理者 | Administer > Settings でグローバル設定を編集します。 ユーザー、ユーザーグループ、ロールを表示、作成、編集、破棄します。 組織とロケーションを参照、作成、編集、破棄、割り当てますが、その中のリソースは参照しません。 | このロールが指定されたユーザーは、ユーザーを作成したり、そのユーザーに全ロールを割り当てたりできます。このロールは信頼できるユーザーにのみ割り当ててください。 |
| Viewer | Satellite の構造、ログ、レポート、統計情報の全要素の設定を表示します。 |
9.7. 詳細なパーミッションフィルタリング リンクのコピーリンクがクリップボードにコピーされました!
「ロールへのパーミッションの追加」 の説明にあるように、Red Hat Satellite では、リソースタイプの選択済みインスタンスに対する設定済みユーザーパーミッションを制限できます。これらの詳細なフィルターは Satellite データベースに対するクエリーであり、ほとんどのリソースタイプでサポートされています。
9.7.1. 詳細なパーミッションフィルターの作成 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、詳細なフィルターを作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
Satellite では、検索条件はアクション作成には適用されません。たとえば、検索フィールドで create_locations アクションを name = "Default Location" 式で制限しても、ユーザーが新しく作成されたロケーションにカスタム名を割り当てることができないわけではありません。
手順
フィルターの編集 ページの 検索 フィールドにクエリーを指定します。アクティブにするフィールドに対して 無制限 チェックボックスを選択解除します。クエリーの形式は以下のようになります。
field_name operator value
- field_name は、問い合わせるフィールドを示します。利用可能なフィールド名の範囲はリソースタイプによって異なります。たとえば、Partition Table リソースタイプでは、クエリーパラメーターとして family、layout、および name が提供されます。
- operator は、field_name と value との間の比較タイプを指定します。適用可能な演算子の概要は、「詳細な検索でサポートされる演算子」 を参照してください。
- value は、フィルタリングに使用される値です。この値は、組織の名前などです。2 つの種類のワイルドカード文字がサポートされ、アンダースコア (_) は単一の文字を置換し、パーセント記号 (%) はゼロ以上の文字を置換します。
ほとんどのリソースタイプに対して、検索 フィールドは利用可能なパラメーターを示すドロップダウンリストを提供します。このリストは、検索フィールドにカーソルを置くと表示されます。多くのリソースタイプに対しては、and や not、has といった論理演算子を使用してクエリーを組み合わせることができます。
CLI 手順
詳細なフィルターを作成するには、以下のように
--searchオプションを指定してhammer filter createを入力し、パーミッションフィルターで絞り込みます。$ hammer filter create \ --permission-ids 91 \ --search "name ~ ccv*" \ --role qa-user
このコマンドは、名前が ccv で始まるコンテンツビューのみを表示、作成、編集、破棄するパーミッションを qa-user ロールに追加します。
9.7.2. 詳細なパーミッションフィルターの使用例 リンクのコピーリンクがクリップボードにコピーされました!
管理者は、選択されたユーザーが環境パスの特定の部分を変更することを許可できます。以下のフィルターを使用すると、アプリケーションライフサイクルの開発段階にあるコンテンツを使用して作業できますが、実稼働環境にプッシュされるとそのコンテンツにはアクセスできなくなります。
9.7.2.1. ホストリソースタイプのパーミッションの適用 リンクのコピーリンクがクリップボードにコピーされました!
以下のクエリーは、host-editors という名前のグループのホストに対してのみ、ホストのリソースタイプに指定されたパーミッションを適用します。
hostgroup = host-editors
以下のクエリーは、XXXX, Yyyy、または zzzz の文字列に名前が一致するレコードを返します。
name ^ (XXXX, Yyyy, zzzz)
また、選択された環境に対するパーミッションを制限することもできます。これを行うには、検索 フィールドに環境名を指定します。以下に例を示します。
Dev
Search フィールドでより詳細なパーミッションフィルターを使用すると、特定の組織またはロケーションにユーザーパーミッションを制限できます。ただし、リソースタイプによっては、ロケーション および 組織 タブを提供する 上書き チェックボックスが、GUI の代わりとなります。これらのタブでは、利用可能な組織とロケーションのリストから選択できます。詳細は、「組織固有のマネージャーロールの作成」 を参照してください。
9.7.2.2. 組織固有のマネージャーロールの作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite web UI を使用して org-1 という名前の単一の組織に制限されたマネージャーロールを作成する方法を示します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 既存の Organization admin ロールをクローンします。フィルター ボタンの横にあるドロップダウンリストから クローン を選択します。この結果、クローンされたロールの名前 (たとえば、org-1 admin) を挿入するよう求められます。
- ロールに関連付けるロケーションと組織をクリックします。
- 送信 をクリックしてロールを作成します。
- org-1 admin をクリックしてから フィルター をクリックし、関連付けられたフィルターを確認します。デフォルトのフィルターはほとんどのケースで機能します。ただし、必要に応じて、編集 をクリックして各フィルターのプロパティーを変更することもできます。フィルターによっては、ロールを追加のロケーションと組織のリソースにアクセスできるようにする場合には、上書き オプションを有効にできます。たとえば、ドメイン リソースタイプを選択して 上書き オプションを選択し、ロケーション と 組織 タブを使用して追加のロケーションと組織を選択すると、このロールに関連付けられていない追加のロケーションと組織のドメインにこのロールがアクセスできるようになります。また、New filter をクリックして、新しいフィルターをこのロールに関連付けることもできます。
9.7.3. 詳細な検索でサポートされる演算子 リンクのコピーリンクがクリップボードにコピーされました!
| 演算子 | 説明 |
| and | 検索条件を組み合わせます。 |
| not | 式を否定します。 |
| has | オブジェクトには指定したプロパティーが必要です。 |
| 演算子 | 説明 |
| = | Is equal to。テキストフィールドで使用する等価比較。大文字と小文字の区別あり。 |
| != | Is not equal to。= 演算子の反転。 |
| ~ | Like。テキストフィールドで使用するキーワード出現検索。大文字と小文字の区別なし。 |
| !~ | Not like。~ 演算子の反転。 |
| ^ | In。テキストフィールドで使用する等価比較。大文字と小文字を区別した検索。これは、Is equal to 比較とは別の SQL クエリーを生成し、複数値の比較をより効率的に行えます。 |
| !^ | Not in。^ 演算子の反転。 |
| >, >= | Greater than、greater than or equal to.数値フィールドのみに対応します。 |
| <, ⇐ | Less than、less than or equal to.数値フィールドのみに対応します。 |
第10章 メール通知の設定 リンクのコピーリンクがクリップボードにコピーされました!
メール通知は Satellite Server が定期的に作成するか、特定イベントの完了後に作成されます。定期通知は、毎日、毎週、または毎月送信することができます。
利用可能な通知タイプの概要は、「メール通知の種類」 を参照してください。
デフォルトでは、ユーザーにはメールは通知されません。通知のタイプや頻度などの基準に基づいて、ユーザーが通知を受信するように管理者が設定できます。
Satellite Server は、デフォルトで送信メールを有効化していないため、メール設定を確認する必要があります。詳細は、オンラインネットワーク環境での Satellite Server のインストール の Satellite Server での送信メールの設定 を参照してください。
10.1. メール通知の種類 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は次のメール通知を作成できます。
- 監査サマリー
- Satellite Server によって監査されたすべてのアクティビティーの概要。
- Capsule 同期失敗
- Capsule の同期が失敗した後に送信される通知。
- コンプライアンスポリシーサマリー
- OpenSCAP ポリシーレポートとその結果の概要。
- コンテンツビューのプロモート失敗
- コンテンツビューのプロモートが失敗した後に送信される通知。
- コンテンツビューの公開失敗
- コンテンツビューの公開が失敗した後に送信される通知。
- ホストの構築
- ホストが構築された後に送信される通知。
- ホストエラータアドバイザリー
- ユーザーが管理するホストに適用可能でインストール可能なエラータの概要。
- エラータのプロモート
- コンテンツビューのプロモート後にのみ送信される通知。プロモートされたコンテンツビューに登録されているホストに適用可能でインストール可能なエラータの概要が含まれています。これにより、どの更新がどのホストに適用されたかを監視できます。
- リポジトリーの同期失敗
- リポジトリーの同期が失敗した後に送信される通知。
- エラータの同期
- リポジトリーの同期後にのみ送信される通知。同期によって導入された新しいエラータの概要が含まれています。
メール通知タイプの完全なリストは、Satellite Web UI で Administer > Users に移動し、必要なユーザーの Username をクリックして、Email Preferences タブを選択します。
10.2. メール通知の設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite に登録されている個々のユーザーに電子メールメッセージを送信するように Satellite を設定できます。Satellite は、アカウントに追加されている電子メールアドレス (存在する場合) に電子メールを送信します。ユーザーは、Satellite web UI の右上にある自分の名前をクリックし、My account を選択することで、電子メールアドレスを編集できます。
Satellite Web UI でメール通知を設定します。
メール通知を個人のメールアドレスではなくグループのメールアドレスに送信する場合は、グループのメールアドレスと最小の Satellite パーミッションでユーザーアカウントを作成し、そのユーザーアカウントを必要な通知タイプにサブスクライブします。
前提条件
-
メール通知を受け取るように設定するユーザーに、
view_mail_notifications権限が指定されたロールがある。
手順
- Satellite Web UI で、Administer > Users に移動します。
- 編集する ユーザー名 をクリックします。
- ユーザー タブで、メール フィールドの値を確認します。メール通知は、このフィールドのアドレスに送信されます。
- メール設定 タブで メールの有効化 を選択します。
通知タイプの横にあるドロップダウンメニューから、ユーザーが受信する通知を選択します。
注記メールクエリー テキストボックスに必要なクエリーを記入すると、監査サマリー 通知をフィルターすることができます。
Submit をクリックします。
通知メールのユーザーへの送信が開始されます。
10.3. メール配信のテスト リンクのコピーリンクがクリップボードにコピーされました!
メールの配信を確認するには、テストメールをユーザーに送信します。メールが配信されれば、設定が適切であることを確認できます。
手順
- Satellite Web UI で、Administer > Users に移動します。
- ユーザー名をクリックします。
メール設定 タブで テストメール をクリックします。
ユーザーのメールアドレスにすぐにテストメッセージが送信されます。
メールが配信されれば、確認は完了です。配信されない場合は、以下の診断ステップを実行してください。
- ユーザーのメールアドレスを確認します。
- Satellite Server のメール設定を確認します。
- ファイアウォールおよびメールサーバーのログを調べます。
Satellite Server がメール配信に Postfix サービスを使用している場合、テストメールがキューに保持される可能性があります。確認するには、
mailqコマンドを入力して現在のメールキューを一覧表示します。テストメールがキューに保持されている場合、mailqは次のメッセージを表示します。postqueue: warning: Mail system is down -- accessing queue directly -Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient------- BE68482A783 1922 Thu Oct 3 05:13:36 satellite-noreply@example.comこの問題を修正するには、Satellite Server で Postfix サービスを開始します。
# systemctl start postfix
10.4. メール通知のテスト リンクのコピーリンクがクリップボードにコピーされました!
ユーザーが通知に正しく登録されていることを確認するには、通知を手動でトリガーします。
手順
通知をトリガーするには、以下のコマンドを実行します。
# foreman-rake reports:_My_Frequency_My_Frequency を次のいずれかに置き換えます。
- daily
- weekly (毎週)
- monthly (毎月)
これでサブスクライブしている全ユーザーに指定された頻度ですべての予定されている通知が配信されます。サブスクライブしているユーザーがすべて通知を受信すれば、検証に成功しています。
現在、手動でトリガーした通知の個別ユーザーへの送信は、サポート対象外です。
10.5. ホストのメール通知設定の変更 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、ホストのイベント通知をホストの登録済み所有者に送信できます。個々のユーザーまたはユーザーグループのいずれかに電子メール通知を送信するように Satellite を設定できます。ユーザーグループに設定すると、電子メールタイプにサブスクライブしているすべてのグループメンバーがメッセージを受信します。
ホストの電子メール通知を受信することは便利ですが、たとえば、既知の問題や回避しているエラーが原因で頻繁にエラーを受信することが予想される場合は、圧倒されます。
手順
- Satellite Web UI で、Hosts > All Hosts に移動し、表示するホストを見つけて、Actions 列の Edit をクリックします。
- Additional Information タブに移動します。Include this host within Satellite reporting チェックボックスがオンになっている場合、そのホストでメール通知が有効になります。
オプション: メール通知を有効または無効にするには、チェックボックスを切り替えます。
注記メール通知を受け取る場合は、ユーザー設定でメールアドレスが設定されていることを確認してください。
第11章 Satellite Server および Capsule Server のバックアップ リンクのコピーリンクがクリップボードにコピーされました!
障害発生時に Red Hat Satellite デプロイメントと関連データの継続性を確保するために、Satellite デプロイメントをバックアップできます。デプロイメントでカスタム設定を使用する場合は、バックアップおよび障害復旧ポリシーを計画するときに、これらのカスタム設定を処理する方法を考慮する必要があります。
Satellite Server の新規インスタンスを作成する場合は、バックアップを復元した後に以前のインスタンスを廃止します。クローン作成されたインスタンスは、実稼働環境で並行して実行することは想定されていません。
Satellite Server と Capsule Server のどちらか、およびすべての関連データのバックアップを作成するには、satellite-maintain backup コマンドを使用します。別のシステム上の別のストレージデバイスにバックアップすることを強く推奨します。
バックアップ中は Satellite サービスは利用できません。したがって、他の管理者が他のタスクをスケジュールしていないか確認する必要があります。cron を使用してバックアップをスケジュールできます。詳細は、「週次の完全バックアップの後に日次の増分バックアップを実行する例」 を参照してください。
オフラインバックアップ中は、サービスは非アクティブになり、Satellite はメンテナンスモードになります。ポート 443 上での外部からのトラフィックはすべてファイアウォールで拒否され、修正がトリガーされないようになります。
バックアップには、/root/ssl-build ディレクトリーの機密情報が含まれます。たとえば、ホスト名、SSH キー、要求ファイル、SSL 証明書が含まれる場合があります。バックアップを暗号化するか、安全なロケーションに移動し、破損のリスクやホストへの不正アクセスを最小限に抑えます。
従来のバックアップ方法
従来のバックアップ方法を使用することもできます。詳細は、Red Hat Enterprise Linux 9 の基本的なシステム設定 の システムの回復と復元 を参照してください。
satellite-maintain backup コマンドを使用してバックアップを作成する場合は、Satellite サービスを停止しないでください。
スナップショットまたは従来のバックアップを作成するときは、以下のようにすべてのサービスを停止する必要があります。
# satellite-maintain service stopスナップショットまたは従来のバックアップを作成したら、サービスを起動します。
# satellite-maintain service start
11.1. バックアップサイズの予測 リンクのコピーリンクがクリップボードにコピーされました!
完全バックアップでは、PostgreSQL および Pulp のデータベースファイルと Satellite 設定ファイルの非圧縮アーカイブを作成します。Satellite サービスが利用できない時間を短縮するため、圧縮はアーカイブの作成後に実行されます。
完全バックアップには、以下のデータを格納するための領域が必要です。
- 非圧縮の Satellite データベースおよび設定ファイル。
- 圧縮された Satellite データベースおよび設定ファイル。
- バックアップを確実にするため、予測領域全体の 20% を追加。
手順
duコマンドを入力して、Satellite データベースおよび設定ファイルを含む非圧縮ディレクトリーのサイズを予測します。# du -sh /var/lib/pgsql/data /var/lib/pulp 100G /var/lib/pgsql/data 100G /var/lib/pulp # du -csh /var/lib/tftpboot /etc /root/ssl-build \ /var/www/html/pub /opt/puppetlabs 16M /var/lib/tftpboot 37M /etc 900K /root/ssl-build 100K /var/www/html/pub 2M /opt/puppetlabs 942M total圧縮データを保存するために必要な領域を計算します。
以下の表は、バックアップに含まれるすべてのデータ項目の圧縮率を示しています。
Expand 表11.1 バックアップデータ圧縮率 データのタイプ ディレクトリー 比率 圧縮結果の例 PostgreSQL データベースファイル
/var/lib/pgsql/data80 – 85%
100 GB → 20 GB
Pulp RPM ファイル
/var/lib/pulp(非圧縮)
100 GB
設定ファイル
/var/lib/tftpboot/etc/root/ssl-build/var/www/html/pub/opt/puppetlabs85%
942 MB → 141 MB
この例では、圧縮されたバックアップデータは合計 120 GB を占有します。
バックアップの保存に必要な利用可能な領域を計算するには、圧縮および非圧縮のバックアップデータの予測値を合計し、合計値の 20% をさらに追加してバックアップの信頼性を高めます。
この例では、非圧縮および圧縮のバックアップデータに 201 GB と 120 GB の合計 321 GB が必要です。64 GB の予備領域もあわせ、385-21-2 GB をバックアップのロケーションに割り当てる必要があります。
11.2. Satellite Server または Capsule Server の完全バックアップの実行 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite は、satellite-maintain backup コマンドを使用してバックアップを作成します。
Satellite Server をバックアップするには、主に 2 つの方法があります。
オフラインバックアップ
オフラインバックアップ中は、すべての Satellite サービスがシャットダウンされます。
オンラインバックアップ
バックアッププロセスの実行中は、すべてのバックグラウンドワーカーを含む、バックアップの一貫性に影響する Satellite サービスのみがシャットダウンされます。オンラインバックアップでは一貫性がチェックされるため、オフラインバックアップよりも時間がかかります。
それぞれの方法の詳細は、各バックアップ方法の使用法ステートメントを表示できます。
オフラインバックアップ
# satellite-maintain backup offline --help
オンラインバックアップ
# satellite-maintain backup online --help
ディレクトリーの作成
satellite-maintain backup コマンドを実行すると、指定したバックアップディレクトリーにタイムスタンプの付いたサブディレクトリーが作成されます。satellite-maintain backup コマンドではバックアップは上書きされないので、バックアップまたは増分バックアップから復元する際には、適切なディレクトリーまたはサブディレクトリーを選択する必要があります。satellite-maintain backup コマンドは、必要に応じてサービスを停止したり、再開したりします。
satellite-maintain backup offline コマンドを実行すると、以下のデフォルトのバックアップディレクトリーが作成されます。
-
Satellite では
satellite-backup -
Capsule では
foreman-proxy-backup
カスタムディレクトリー名を設定する場合は、--preserve-directory オプションを追加して、ディレクトリー名を追加します。バックアップはその後、コマンドラインで指定したディレクトリーに保存されます。--preserve-directory オプションを使用する場合、バックアップが失敗してもデータは削除されません。
ローカルの PostgreSQL データベースを使用する場合、postgres ユーザーには、バックアップディレクトリーへの書き込みアクセス権が必要です。
リモートデータベース
satellite-maintain backup コマンドを使用して、リモートデータベースをバックアップできます。
リモートデータベースをバックアップするには、オンラインとオフラインの両方の方法を使用できますが、オフラインの方法を使用する場合は、satellite-maintain backup コマンドによってデータベースのダンプが実行されます。
リモート NFS 共有へのバックアップ
Satellite がバックアップを NFS 共有に保存できるようにするには、Satellite Server または Capsule Server の root ユーザーが NFS 共有に書き込みできることを確認します。root_squash や all_squash などの NFS エクスポートオプションは、これを防ぐことが知られています。
詳細は、Red Hat Enterprise Linux ネットワークファイルサービスの設定と使用 および Red Hat Enterprise Linux ネットワークサービスのセキュリティー保護 を参照してください。
前提条件
- バックアップロケーションには、バックアップを保存するのに十分な空きディスク領域があること。詳細は、「バックアップサイズの予測」 を参照してください。
Satellite Server および Capsule Server の他のユーザーにすべての変更を保存するよう指示して、バックアップ中は Satellite サービスが利用できないことを警告してください。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
手順
Satellite Server で以下のコマンドを入力します。
# satellite-maintain backup offline /var/satellite-backupCapsule Server で以下のコマンドを入力します。
# satellite-maintain backup offline /var/foreman-proxy-backup
11.3. Pulp コンテンツなしでのバックアップの実行 リンクのコピーリンクがクリップボードにコピーされました!
Pulp ディレクトリーの内容を除外するオフラインバックアップを実行できます。Pulp コンテンツなしのバックアップはデバッグに役に立ち、Pulp データベースのバックアップなしに設定ファイルへのアクセスを提供することを目的としています。実稼働ユースケースでは、Pulp コンテンツが含まれていないディレクトリーから復元しないでください。
Satellite Server および Capsule Server の他のユーザーにすべての変更を保存するよう指示して、バックアップ中は Satellite サービスが利用できないことを警告してください。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
前提条件
- バックアップロケーションには、バックアップを保存するのに十分な空きディスク領域があること。詳細は、「バックアップサイズの予測」 を参照してください。
手順
Pulp コンテンツなしでオフラインバックアップを実行するには、以下のコマンドを入力します。
# satellite-maintain backup offline --skip-pulp-content /var/backup_directory
11.4. 増分バックアップの実行 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、前回のバックアップ以降のすべての変更のオフラインバックアップを実行します。
増分バックアップを実行するには、シーケンスの最初の増分バックアップを作成するための参照として完全バックアップを実行する必要があります。復元用として、最新の完全バックアップと、増分バックアップの完全なシーケンスを保持します。
Satellite Server および Capsule Server の他のユーザーにすべての変更を保存するよう指示して、バックアップ中は Satellite サービスが利用できないことを警告してください。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
前提条件
- バックアップロケーションには、バックアップを保存するのに十分な空きディスク領域があること。詳細は、「バックアップサイズの予測」 を参照してください。
手順
完全なオフラインバックアップを実行するには、以下のコマンドを入力します。
# satellite-maintain backup offline /var/backup_directoryバックアップディレクトリー内にディレクトリーを作成し、初回増分バックアップを保存するには、
--incrementalオプションを使用するsatellite-maintain backupコマンドを入力します。# satellite-maintain backup offline --incremental /var/backup_directory/full_backup /var/backup_directory2 回目増分バックアップを作成するには、
--incrementalオプションを使用するsatellite-maintain backupコマンドを入力し、次回増分の開始点を示すために、初回増分バックアップへのパスを追加します。これで 2 回目増分バックアップのディレクトリーがバックアップディレクトリー内に作成されます。# satellite-maintain backup offline --incremental /var/backup_directory/first_incremental_backup /var/backup_directoryオプション: 別のバージョンのバックアップをポイントし、開始点としてそのバックアップバージョンでの増分シリーズを作成する場合は、いつでもこれを行うことができます。たとえば、初回もしくは 2 回目増分バックアップからではなく、完全バックアップから新しい増分バックアップを作成するには、完全バックアップディレクトリーをポイントします。
# satellite-maintain backup offline --incremental /var/backup_directory/full_backup /var/backup_directory
11.5. 週次の完全バックアップの後に日次の増分バックアップを実行する例 リンクのコピーリンクがクリップボードにコピーされました!
以下のスクリプトでは、日曜日に完全バックアップを実行した後に、増分バックアップを毎日実行します。増分バックアップが実行されるたびに、新しいサブディレクトリーが作成されます。このスクリプトでは、日次の cron ジョブが必要になります。
#!/bin/bash -e
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESTINATION=/var/backup_directory
if [[ $(date +%w) == 0 ]]; then
satellite-maintain backup offline --assumeyes $DESTINATION
else
LAST=$(ls -td -- $DESTINATION/*/ | head -n 1)
satellite-maintain backup offline --assumeyes --incremental "$LAST" $DESTINATION
fi
exit 0
satellite-maintain backup コマンドでは、PATH 内に /sbin ディレクトリーおよび /usr/sbin ディレクトリーを格納する必要があり、確認プロンプトをスキップするために --assumeyes オプションを使用することに注意してください。
11.6. オンラインバックアップの実行 リンクのコピーリンクがクリップボードにコピーされました!
オンラインバックアップに関するリスク
オンラインバックアップを実行しても、ほとんどの Satellite サービスは停止せず、そのまま利用できます。バックアップの一貫性を確保するために、バックグラウンドワーカーはシャットダウンされます。バックグラウンドワーカーを必要とする操作は保留状態のままになります。バックアッププロセスにより、バックアップ中に Pulp データ (/var/lib/pulp) が変更されないようになっています。バックアップ中に Pulp データに変更を加えると、バックアッププロセスが再開され、追加の時間がかかります。
Satellite Server または Capsule Server の他のユーザーに、変更を保存するように要求し、バックアップ中は一部の Satellite サービスが利用できなくなる可能性があることを警告します。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
前提条件
- バックアップロケーションには、バックアップを保存するのに十分な空きディスク領域があること。詳細は、「バックアップサイズの予測」 を参照してください。
手順
オンラインバックアップを実行するには、以下のコマンドを入力します。
# satellite-maintain backup online /var/backup_directory
第12章 バックアップからの Satellite Server または Capsule Server の復元 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server または Capsule Server は、11章Satellite Server および Capsule Server のバックアップ の一部として作成したバックアップデータから復元することができます。このプロセスでは、バックアップを生成したサーバーと同じサーバーでバックアップを復元する方法を概説します。バックアップに含まれる全データはターゲットシステムで削除されます。元のシステムが利用できない場合は、同じ設定およびホスト名でシステムをプロビジョニングしてください。
FIPS が有効なシステムでは、FIPS が有効でないシステムのバックアップを復元することはできません。
12.1. 完全バックアップからの復元 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、完全バックアップから Red Hat Satellite または Capsule Server を復元します。復元プロセスが完了するとすべてのプロセスがオンラインになり、すべてのデータベースおよびシステム設定がバックアップ時の状態に戻ります。
前提条件
- 適切なインスタンスを復元していること。Red Hat Satellite インスタンスでホスト名、設定が同一であり、マイナーバージョン (X.Y) が元のシステムと同じである必要があります。
- 既存のターゲットディレクトリーがあること。ターゲットディレクトリーは、アーカイブ内に含まれている設定ファイルから読み取られます。
Satellite Server または Capsule Server のベースシステムにこのデータを格納するのに十分な領域と、復元後にバックアップ内に含まれる
/etc/と/var/ディレクトリー内のすべてのデータを格納するのに十分な領域があること。ディレクトリーの使用量を確認するには、以下のコマンドを入力します。
# du -sh /var/backup_directory空き領域のサイズを確認するには、以下のコマンドを入力します。
# df -h /var/backup_directory--totalオプションを追加すると複数ディレクトリーの合計結果が取得できます。すべての SELinux コンテキストが適切であること。以下のコマンドを入力して、適切な SELinux コンテキストを復元します。
# restorecon -Rv /
手順
Satellite または Capsule のインストールに適した方法を選択します。
- オンライン接続されているネットワークで Satellite Server をインストールするには、オンラインネットワーク環境での Satellite Server のインストール の手順に従います。
- オンライン接続されていないネットワークから Satellite Server をインストールするには、オフラインネットワーク環境での Satellite Server のインストール の手順に従います。
- Capsule Server をインストールするには、Capsule Server のインストール の手順に従います。
-
バックアップデータを Satellite Server 上のローカルファイルシステムにコピーします。
/var/または/var/tmp/を使用します。 復元スクリプトを実行します。
# satellite-maintain restore /var/backup_directoryここでの backup_directory は、バックアップされたデータを格納しているタイムスタンプ付きのディレクトリーまたはサブディレクトリーになります。
コピーするデータサイズが原因で、復元プロセスの完了に長い時間がかかることがあります。
関連情報
-
トラブルシューティングを行うには、
/var/log/foreman/production.logおよび/var/log/messagesにあるファイルを参照してください。
12.2. 増分バックアップからの復元 リンクのコピーリンクがクリップボードにコピーされました!
増分バックアップから Satellite または Capsule Server を復元するには、以下の手順を実行します。複数の増分バックアップの branch がある場合は、完全バックアップと復元するブランチの各増分バックアップを時系列で選択します。
復元プロセスが完了するとすべてのプロセスがオンラインになり、すべてのデータベースおよびシステム設定がバックアップ時の状態に戻ります。
手順
- 「完全バックアップからの復元」 の手順を使用して、最新の完全バックアップを復元します。
-
Satellite Server 上のローカルファイルシステム (例:
/var/または/var/tmp/)から完全バックアップデータを削除します。 -
増分バックアップデータを Satellite Server 上のローカルファイルシステム (例:
/var/または/var/tmp/)にコピーします。 増分バックアップが作成された順序で復元します。
# satellite-maintain restore /var/backup_directory/FIRST_INCREMENTAL # satellite-maintain restore /var/backup_directory/SECOND_INCREMENTAL
関連情報
-
トラブルシューティングを行うには、
/var/log/foreman/production.logおよび/var/log/messagesにあるファイルを参照してください。
12.3. 仮想マシンのスナップショットを使用した Capsule Server のバックアップと復元 リンクのコピーリンクがクリップボードにコピーされました!
Capsule Server が仮想マシンである場合、スナップショットから復元することができます。復元元となるスナップショットは、毎週作成することが推奨されます。失敗した場合は、新規 Capsule Server をインストールまたは設定し、Satellite Server からデータベースコンテンツを同期します。
必要な場合は、新規 Capsule Server をデプロイして、ホスト名が以前のものと同じであることを確認し、その後に Capsule 証明書をインストールします。これは、-certs.tar で終わるパッケージ名で、Satellite Server にまだ残っている可能性があります。他のオプションとして、新規に作成します。Capsule Server のインストール にある手順に従い、Satellite Web UI で Capsule Server が Satellite Server に接続されたことを確認します。この後に、「Satellite Server から Capsule Server へのコンテンツの同期」 の手順で Satellite から同期します。
12.3.1. Satellite Server から Capsule Server へのコンテンツの同期 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite Server から Capsule Server にコンテンツを同期します。
前提条件
- Capsule Server の関連する組織およびロケーションのコンテキストを選択するか、任意の Any Organization および Any Location を選択します。
手順
- Satellite Web UI で、Infrastructure > Capsules に移動します。
- Capsule Server を選択します。
Overview タブで Synchronize をクリックします。
- Optimized Sync を選択すると、Satellite Server から Capsule Server にコンテンツが同期され、不必要な手順が省略され、パフォーマンスが向上します。
- Complete Sync を選択すると、Satellite Server から Capsule Server への完全同期が実行され、メタデータが変更されていない場合でもコンテンツが同期されます。
第13章 Satellite Server または Capsule Server の名前の変更 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server または Capsule Server の名前を変更するには、satellite-change-hostname スクリプトを使用します。
Satellite Server または Capsule Server のドメイン名を変更する場合は、ネットワークの問題を回避するために、satellite-change-hostname スクリプトを使用してホスト名を更新する必要があります。
13.1. Satellite Server の名前の変更 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server のホスト名は、Satellite Server のコンポーネント、すべての Capsule Server、および Satellite Server に登録されているホストが通信用に使用しています。この手順により、Satellite Server の名前を変更するだけでなく、新しいホスト名を指すようにすべての参照も更新されます。
Satellite Server ホストの名前を変更すると、そのホスト上のすべての Satellite サービスがシャットダウンされます。名前変更が完了すると、サービスが再起動されます。
前提条件
- ホスト名を変更する前に、Satellite Server をバックアップしてください。名前の変更に失敗した場合は、バックアップから復元してください。詳細は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
Satellite Server で
hostnameおよびhostname -fコマンドを実行します。どちらのコマンドも Satellite Server の FQDN を返さない場合、satellite-change-hostnameスクリプトは完了できません。hostnameコマンドが FQDN ではなく Satellite Server のショートネームを返す場合は、satellite-change-hostnameスクリプトを使用する前に、hostnamectl set-hostname My_Old_FQDNを使用して古い FQDN を正しく設定します。- Satellite Server にカスタム SSL 証明書がインストールされている場合は、ホストの新しい FQDN の新しい証明書を取得します。詳細は、オンラインネットワーク環境からの Satellite Server のインストール の カスタムの SSL 証明書を使用した Satellite Server の設定 を参照してください。
手順
Satellite Server で、
satellite-change-hostnameスクリプトを実行し、新しいホスト名を指定します。以下の方法のいずれかを選択します。Satellite Server をデフォルトの自己署名 SSL 証明書を使用してインストールした場合は、以下を実行します。
# satellite-change-hostname new-satellite \ --username My_Username \ --password 'My_Password'Satellite Server をカスタムの SSL 証明書を使用してインストールした場合は、以下を実行します。
# satellite-change-hostname new-satellite \ --username My_Username \ --password 'My_Password' \ --custom-cert "/root/ownca/test.com/test.com.crt" \ --custom-key "/root/ownca/test.com/test.com.key"
- Satellite Server の新しいホスト名用にカスタム SSL 証明書を作成した場合は、Satellite インストールスクリプトを実行して証明書をインストールします。カスタム SSL 証明書のインストールに関する詳細は、オンラインネットワーク環境での Satellite Server のインストール の Satellite Server へのカスタム SSL 証明書のデプロイ を参照してください。
- Satellite Server に登録されているすべてのホストと Capsule Server を再登録します。詳細は、ホストの管理 の グローバル登録を使用したホストの登録 を参照してください。
すべての Capsule Server で、Satellite インストールスクリプトを実行して、新規ホスト名への参照を更新します。
# satellite-installer \ --foreman-proxy-foreman-base-url https://new-satellite.example.com \ --foreman-proxy-trusted-hosts new-satellite.example.comSatellite Server で、すべての Capsule Server をリスト表示します。
# hammer capsule listSatellite Server で、コンテンツを各 Capsule Server に同期します。
# hammer capsule content synchronize \ --id My_Capsule_ID- virt-who エージェントを使用する場合は、新しいホスト名で virt-who 設定ファイルを更新します。詳細は、仮想マシンサブスクリプションの virt-who 設定 の virt-who 設定の変更 を参照してください。
-
外部認証を使用している場合は、
satellite-change-hostnameスクリプトの実行後に、外部認証向けに Satellite Server を再設定します。詳細は、Red Hat Satellite ユーザーの認証設定 を参照してください。
13.2. Capsule Server の名前の変更 リンクのコピーリンクがクリップボードにコピーされました!
Capsule Server のホスト名は、Satellite Server のコンポーネントおよび Capsule Server に登録されている全ホストが参照しています。この手順により、Capsule Server の名前変更に加えて、新しいホスト名へのすべての参照も更新されます。
Capsule Server ホストの名前を変更すると、そのホスト上のすべての Satellite サービスがシャットダウンされます。名前変更が完了すると、サービスが再起動されます。
前提条件
- 名前を変更する前に、Capsule Server をバックアップしてください。名前の変更に失敗した場合は、バックアップから復元してください。詳細は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
Capsule Server で
hostnameおよびhostname -fコマンドを実行します。どちらのコマンドも Capsule Server の FQDN を返さない場合、satellite-change-hostnameスクリプトは完了できません。hostnameコマンドが FQDN ではなく Capsule Server のショートネームを返す場合、satellite-change-hostnameスクリプトを使用する前に、hostnamectl set-hostname My_Old_FQDNを使用して古い FQDN を正しく設定する必要があります。
手順
Satellite Server で、Capsule Server 用の新しい証明書アーカイブファイルを生成します。
デフォルトの SSL 証明書を使用している場合は、デフォルトの SSL 証明書を再生成します。
# capsule-certs-generate \ --certs-tar /root/new-capsule.example.com-certs.tar \ --foreman-proxy-fqdn new-capsule.example.com.tarファイルへの完全パスを必ず入力してください。- カスタムの SSL 証明書を使用している場合は、Capsule Server 用の新しい SSL 証明書を作成します。詳細は、Capsule Server のインストール の カスタム SSL 証明書を使用した Capsule Server の設定 を参照してください。
Satellite Server で、証明書アーカイブファイルを Capsule Server にコピーします。たとえば、アーカイブファイルを
rootユーザーのホームディレクトリーにコピーするには、次のようにします。# scp /root/new-capsule.example.com-certs.tar root@capsule.example.com:Capsule Server で、
satellite-change-hostnameスクリプトを実行し、ホストの新しい名前、Satellite 認証情報、および証明書アーカイブファイル名を指定します。# satellite-change-hostname new-capsule.example.com \ --certs-tar /root/new-capsule.example.com-certs.tar \ --password 'My_Password' \ --username My_Username.tarファイルへの完全パスを必ず入力してください。-
Capsule Server 用のカスタム証明書を作成した場合は、前のステップで
capsule-certs-generateコマンドが返したsatellite-installerコマンドを入力して、証明書を Capsule Server にデプロイします。詳細は、Capsule Server のインストール の Capsule Server へのカスタム SSL 証明書のデプロイ を参照してください。 - Capsule Server に登録されている全ホストを再登録します。詳細は、ホストの管理 の ホストの登録とホスト統合の設定 を参照してください。
Satellite Web UI で Capsule のホスト名を更新します。
- Satellite Web UI で、Infrastructure > Capsules に移動します。
- リストで Capsule Server を見つけて、Edit をクリックします。
- 名前 と URL フィールドが Capsule Server の新規ホスト名に一致するように変更して、送信 をクリックします。
- DNS サーバーで、Capsule Server の新しいホスト名のレコードを追加し、以前のホスト名のレコードを削除します。
第14章 Satellite Server のメンテナンス リンクのコピーリンクがクリップボードにコピーされました!
この章では、完全なディスクから Pulp を復元する方法、監査レコードの使用方法、未使用タスクの消去方法などの Satellite Server のメンテナンス方法を説明します。
14.1. 監査レコードの手動削除 リンクのコピーリンクがクリップボードにコピーされました!
foreman-rake audits:expire コマンドを使用すると、いつでも監査レコードを削除できます。
手順
foreman-rake audits:expireコマンドを使用して、監査レコードを削除します。# foreman-rake audits:expire days=Number_Of_Daysこのコマンドは、
Number_Of_Daysよりも古いすべての監査レコードを削除します。
14.2. 監査レコードの自動削除 リンクのコピーリンクがクリップボードにコピーされました!
Saved audits interval 設定を使用して、自動的に監査レコードを削除できます。この設定はデフォルトでは空です。つまり、Satellite は監査レコードを自動的に削除しません。
手順
- Satellite Web UI で、Administer > Settings に移動します。
- General タブで、Saved audits interval の設定を見つけます。
- 設定の値を、Satellite が監査レコードを削除する日数に設定します。
14.3. 監査レコードの匿名化 リンクのコピーリンクがクリップボードにコピーされました!
foreman-rake audits:anonymize コマンドを使うと、データベースで監査レコードを保持しつつ、ユーザーアカウントや IP 情報を削除できます。また、cron ジョブを使用して、設定した間隔で、監査レコードの匿名化をスケジューリングすることも可能です。
デフォルトでは、foreman-rake audits:anonymize コマンドを使用すると 90 日以上経過した監査レコードが匿名化されます。days オプションに日数を追加して、監査レコードを保持する日数を指定することが可能です。
たとえば、7 日以上経過した監査レコードを匿名化する場合は、以下のコマンドを実行します。
# foreman-rake audits:anonymize days=7
14.4. レポートレコードの削除 リンクのコピーリンクがクリップボードにコピーされました!
レポートレコードは Satellite で自動作成されます。foreman-rake reports:expire コマンドを使用して、いつでもレポートを削除できます。また、cron ジョブを使用して、設定した間隔で、レポートレコードの削除をスケジューリングすることも可能です。
デフォルトでは、foreman-rake reports:expire コマンドを使用すると 90 日以上経過したレポートレコードが削除されます。days オプションに日数を追加して、レポートレコードを保持する日数を指定することが可能です。
たとえば、7 日以上経過したレポートレコードを削除する場合は、以下のコマンドを実行します。
# foreman-rake reports:expire days=7
14.5. 未使用タスクのクリーニング機能の設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite はクリーニングを定期的に実行することで、データベース内のディスク領域を削減し、ディスク増加率を制限します。その結果、Satellite のバックアップがより短時間で完了し、全体的なパフォーマンスも向上します。
デフォルトでは、Satellite は毎日 19 時 45 分にタスクをクリーンアップする cron ジョブを実行します。Satellite は、クリーニング中に以下のタスクを削除します。
- 正常に実行され、30 日を超過したタスク
- 1 年を超過したすべてのタスク
次のオプションを使用して、未使用のタスクのクリーニング機能を設定できます。
Satellite が cron ジョブを実行する時刻を設定するには、
--foreman-plugin-tasks-cron-lineパラメーターを cron 形式で希望する時刻に設定します。たとえば、cron ジョブを毎日 15 時 00 分に実行するようにスケジュールするには、以下のコマンドを入力します。# satellite-installer --foreman-plugin-tasks-cron-line "00 15 * * *"-
Satellite がタスクを削除するまでの期間を設定するには、
/etc/foreman/plugins/foreman-tasks.yamlファイルの:rules:セクションを編集します。 Satellite で定期的なタスクのクリーンアップを無効にするには、次のコマンドを入力します。
# satellite-installer --foreman-plugin-tasks-automatic-cleanup falseSatellite で定期的なタスクのクリーンアップを再度有効にするには、次のコマンドを入力します。
# satellite-installer --foreman-plugin-tasks-automatic-cleanup true
14.6. タスクレコードの削除 リンクのコピーリンクがクリップボードにコピーされました!
タスクレコードは Satellite で自動作成されます。foreman-rake foreman_tasks:cleanup コマンドを使用して、いつでもタスクを削除できます。また、cron ジョブを使用して、設定した間隔で、タスクレコードの削除をスケジューリングすることも可能です。
たとえば、正常なレポジトリー同期からタスクレコードを削除する場合には、以下のコマンドを実行します。
# foreman-rake foreman_tasks:cleanup TASK_SEARCH='label = Actions::Katello::Repository::Sync' STATES='stopped'
14.7. ID によるタスクの削除 リンクのコピーリンクがクリップボードにコピーされました!
誤って機密データを送信した場合など、ID でタスクを削除できます。
手順
SSH を使用して Satellite Server に接続します。
# ssh root@satellite.example.comオプション: タスクを表示します。
$ hammer task info --id My_Task_IDタスクを削除します。
# foreman-rake foreman_tasks:cleanup TASK_SEARCH="id=My_Task_ID"オプション: タスクが Satellite Server から削除されていることを確認します。
$ hammer task info --id My_Task_IDタスクが削除されているため、このコマンドはゼロ以外の終了コードを返すことに注意してください。
14.8. ディスクがいっぱいになった場合の回復方法 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順では、Pulp データベースのある論理ボリューム (LV) に空き領域がない場合の解決方法を説明します。
手順
- 実行中の Pulp タスクを完了させます。新たなタスクは開始しないでください。ディスクに空きスペースがないため、失敗することになります。
/var/lib/pulpディレクトリーのある LV に十分な空き領域があることを確認します。以下のような方法があります。孤立したコンテンツを削除します:
# foreman-rake katello:delete_orphaned_content RAILS_ENV=productionこれは 1 週間ごとに実行されるので、多くの領域が解放されるわけではありません。
- できるだけ多くのリポートのダウンロードポリシーを 即時 から オンデマンド に変更し、ダウンロード済みパッケージを削除します。手順は、Red Hat カスタマーポータルのナレッジベースのソリューション How to change syncing policy for Repositories on Satellite from "Immediate" to "On-Demand" を参照してください。
/var/lib/pulpディレクトリーのある LV 上のファイルシステムを拡張します。詳細は、Red Hat Enterprise Linux 9 論理ボリュームとファイルシステムの拡張 の 論理ボリュームの設定と管理 を参照してください。注記(ext3、ext4、または xfs などの) 通常外のファイルシステムを使用している場合は、そのファイルシステムをアンマウントして使用されていない状態にする必要があります。その場合は、以下を実行します。
Satellite サービスを停止します。
# satellite-maintain service stop- LV 上のファイルシステムを拡張します。
Satellite サービスを起動します。
# satellite-maintain service start
- ディスクに空きスペースがないために Pulp タスクが失敗していた場合は、それらのタスクを再実行します。
14.9. PostgreSQL の領域の回収 リンクのコピーリンクがクリップボードにコピーされました!
PostgreSQL データベースは、特に負荷の高いデプロイメントで、大量のディスク領域を使用することがあります。Satellite でこのディスク領域の一部を回収するには、この手順を使用します。
手順
postgresqlサービス以外の全サービスを停止します。# satellite-maintain service stop --exclude postgresqlpostgresユーザーに切り替えて、データベースの領域を回収します。# su - postgres -c 'vacuumdb --full --all'Vacuum が完了したら、他のサービスを開始します。
# satellite-maintain service start
14.10. オンデマンドリポジトリーの領域の回収 リンクのコピーリンクがクリップボードにコピーされました!
download policy をオンデマンドに設定すると、Satellite はクライアントがパッケージを要求した場合にのみパッケージをダウンロードします。これらのパッケージをクリーンアップして、領域を回収できます。
スペースの再利用には既存のリポジトリーが必要です。削除されたリポジトリーの場合は、次にスケジュールされている孤立したクリーンアップを待つか、孤立したコンテンツを手動で削除します。
# foreman-rake katello:delete_orphaned_content
単一のリポジトリーの場合
- Satellite Web UI で、Content > Products に移動します。
- 製品を選択します。
- Repositories タブで、リポジトリー名をクリックします。
- Select Actions リストから、Reclaim Space を選択します。
複数のリポジトリーの場合
- Satellite Web UI で、Content > Products に移動します。
- 製品名を選択します。
- Repositories タブで、リポジトリーのチェックボックスを選択します。
- 右上隅にある Reclaim Space をクリックします。
Capsules の場合
- Satellite Web UI で、Infrastructure > Capsules に移動します。
- Capsule Server を選択します。
- Reclaim space をクリックします。
第15章 証明書の更新 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server 上の CA 証明書、または Satellite Server と Capsule Server 上のカスタム SSL 証明書を更新できます。
15.1. 自己署名 CA 証明書の更新計画 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server 上の認証局 (CA) 証明書を更新する必要がある場合は、新しい CA 証明書を追加し、一時的なデュアル CA 証明書ファイルを使用して、更新中に Satellite Server への HTTPS 接続を保持します。
手順
- 新しい SSL 証明書を Satellite Server 上の CA 証明書ファイルに追加し、古い SSL 証明書を保持します。
- Satellite Server およびすべての Capsule Server で証明書を更新します。
- ホストにデュアル CA 証明書をデプロイします。
- Satellite Server 上の CA 証明書ファイルから古い証明書を削除し、CA 証明書ファイルに新しい SSL 証明書のみが含まれるようにします。
- Satellite Server およびすべての Capsule Server で証明書を更新します。
- ホストに新しい CA 証明書をデプロイします。
15.2. Satellite Server でのカスタム SSL 証明書の更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Satellite Server のカスタム SSL 証明書を更新します。
前提条件
-
新しい証明書署名要求 (CSR) を作成し、それを認証局に送信して証明書への署名を依頼する必要があります。Server 証明書には、必要な値で X.509 v3
Key UsageおよびExtended Key Usageエクステンションが必要であるため、新しい CSR を作成する前に、カスタムの SSL 証明書を使用した Satellite Server の設定 ガイドを参照してください。送信すると、Satellite Server 証明書と CA バンドルが返却されます。
手順
更新されたカスタム証明書を Satellite Server にデプロイする前に、カスタムの SSL 入力ファイルを検証します。
katello-certs-checkコマンドが正しく実行されるには、証明書のコモンネーム (CN) が Satellite Server の FQDN と一致する必要があることに注意してください。# katello-certs-check -t satellite \ -b /root/satellite_cert/ca_cert_bundle.pem \ -c /root/satellite_cert/satellite_cert.pem \ -k /root/satellite_cert/satellite_cert_key.pemコマンドが正常に実行されると、以下の
satellite-installerコマンドが返されます。このコマンドを使用して、更新された CA 証明書を Satellite Server にデプロイできます。# satellite-installer --scenario satellite \ --certs-server-cert "/root/satellite_cert/satellite_cert.pem" \ --certs-server-key "/root/satellite_cert/satellite_cert_key.pem" \ --certs-server-ca-cert "/root/satellite_cert/ca_cert_bundle.pem" \ --certs-update-server \ --certs-update-server-ca
証明書のデプロイ後に証明書ファイルを削除しないでください。これらは Satellite Server のアップグレード時に必要です。
検証
-
ローカルマシンから Satellite Web UI にアクセスします。たとえば、
https://satellite.example.comからアクセスします。 - ブラウザーで、証明書の詳細を表示して、デプロイした証明書を確認します。
次のステップ
- Satellite Server 上の CA 証明書を変更した場合は、ホスト上の CA 証明書を更新します。詳細は、ホストの管理 の ホスト上の自己署名 CA 証明書の更新 を参照してください。
15.3. Capsule Server でのカスタム SSL 証明書の更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順を使用して、Capsule Server のカスタム SSL 証明書を更新します。capsule-certs-generate コマンドが返す satellite-installer コマンドは、各 Capsule Server ごとに異なります。複数の Capsule Server で同じコマンドを使用することはできません。
前提条件
-
新しい証明書署名要求を作成し、認証局に送信して証明書に署名する必要があります。Satellite Server 証明書には、必要な値を含む X.509 v3
Key UsageおよびExtended Key Usageエクステンションが必要であるため、新しい CSR を作成する前に、カスタムの SSL 証明書を使用した Satellite Server の設定 ガイドを参照してください。代わりに、Capsule Server 証明書と CA バンドルを受け取ります。
手順
Satellite Server で、カスタムの SSL 証明書の入力ファイルを検証します。
# katello-certs-check -t capsule \ -b /root/capsule_cert/ca_cert_bundle.pem \ -c /root/capsule_cert/capsule_cert.pem \ -k /root/capsule_cert/capsule_cert_key.pemSatellite Server で、Capsule Server の証明書アーカイブファイルを生成します。
# capsule-certs-generate \ --certs-tar "/root/My_Certificates/capsule.example.com-certs.tar" \ --certs-update-server \ --foreman-proxy-fqdn "capsule.example.com" \ --server-ca-cert "/root/My_Certificates/ca_cert_bundle.pem" \ --server-cert "/root/My_Certificates/capsule_cert.pem" \ --server-key "/root/My_Certificates/capsule_cert_key.pem"Satellite Server から、証明書アーカイブファイルを Capsule Server にコピーします。
# scp /root/My_Certificates/capsule.example.com-certs.tar user@capsule.example.com:必要に応じて、コピーしたファイルを該当するパスに移動できます。
-
証明書を Capsule Server にデプロイするために、
capsule-certs-generateコマンドが返すsatellite-installerコマンドのコピーを保存しておきます。 capsule-certs-generateコマンドで返されたsatellite-installerコマンドを使用して、Capsule Server に証明書をデプロイします。# satellite-installer --scenario capsule \ --certs-tar-file "/root/My_Certificates/capsule.example.com-certs.tar" \ --certs-update-server \ --foreman-proxy-foreman-base-url "https://satellite.example.com" \ --foreman-proxy-register-in-foreman "true"
証明書のデプロイ後に、Capsule Server で証明書アーカイブファイルを削除しないでください。これらは、Capsule Server のアップグレード時に必要です。
次のステップ
- Satellite Server 上の CA 証明書を変更した場合は、ホスト上の CA 証明書を更新します。詳細は、ホストの管理 の ホスト上の自己署名 CA 証明書の更新 を参照してください。
第16章 テンプレートリポジトリーの同期 リンクのコピーリンクがクリップボードにコピーされました!
Satellite では、Satellite Server とバージョン管理システムまたはローカルディレクトリー間で、ジョブテンプレート、プロビジョニングテンプレート、レポートテンプレート、およびパーティションテーブルテンプレートのリポジトリーを同期できます。
このセクションでは、Template Sync プラグインをインストールおよび設定し、エクスポートおよびインポートタスクを実行するためのワークフローを詳しく説明します。
16.1. テンプレートを既存のリポジトリーと同期する リンクのコピーリンクがクリップボードにコピーされました!
テンプレートをバージョン管理システムのリポジトリーに保存する場合は、Satellite Server とリポジトリー間でテンプレートを同期できます。
この手順では、Git リポジトリーをデモ目的で使用します。
手順
HTTPS を使用してリポジトリーに接続し、Git サーバーで自己署名認証局 (CA) を使用する場合は、次の手順を実行します。
証明書の Git 設定を保存するために、
/usr/share/foreman/ディレクトリーの下に新しいディレクトリーを作成します。# mkdir --parents /usr/share/foreman/.config/git新しいディレクトリーに
configという名前のファイルを作成します。# touch /usr/share/foreman/.config/git/configforemanユーザーに.configディレクトリーへのアクセスを許可します。# chown --recursive foreman /usr/share/foreman/.config自己署名 CA 証明書へのパスを使用して、
foremanユーザーの Git グローバル設定を更新します。# sudo --user foreman git config --global http.sslCAPath Path_To_CA_Certificate
SSH を使用してリポジトリーに接続する場合は以下を実行します。
SSH 鍵ペアがない場合は作成します。パスフレーズは指定しないでください。
# sudo --user foreman ssh-keygen-
Satellite の公開鍵を使用してバージョン管理サーバーを設定します。公開鍵は、
/usr/share/foreman/.ssh/id_rsa.pubにあります。 Git SSH ホストキーを
foremanユーザーとして受け取ります。# sudo --user foreman ssh git.example.com
Satellite Web UI で、Git リポジトリーの詳細を入力します。
- Administer > Settings に移動します。
- Template Sync タブをクリックします。
- Branch 設定を変更して、リポジトリーのターゲットブランチを定義します。
- リポジトリー URL を定義するには、Repo 設定を変更します。
-
HTTP プロキシーを使用してリポジトリーに接続する場合は、HTTP proxy policy 設定を
Global default HTTP proxyまたはCustom HTTP proxyに変更します。
次のステップ
- リポジトリーからテンプレートをインポートするには、「テンプレートのインポート」 に進みます。
- テンプレートをリポジトリーにエクスポートするには、「テンプレートのエクスポート」 に進みます。
16.2. ローカルディレクトリー リンクのコピーリンクがクリップボードにコピーされました!
テンプレートをバージョン管理システムで追跡されるローカルディレクトリーに保存する場合は、Satellite Server とローカルディレクトリーの間でテンプレートを同期できます。
前提条件
各テンプレートに、テンプレートが属するロケーションおよび組織が含まれている必要がある。これは、すべてのタイプのテンプレートタイプに適用されます。テンプレートをインポートする前に、以下のセクションをテンプレートに追加します。
<%# kind: provision name: My_Provisioning_Template oses: - My_first_Operating_System - My_second_Operating_System locations: - My_first_Location - My_second_Location organizations: - My_first_Organization - My_second_Organization %>
手順
Satellite Server の
/var/lib/foremanで、テンプレートを保存するディレクトリーを作成します。# mkdir /var/lib/foreman/My_Templates_Dir注記テンプレートを
/var/lib/foremanの外部のカスタムディレクトリーに配置できますが、Foremanサービスがその内容を読み取れるようにする必要があります。ディレクトリーには正しいファイルパーミッションとforeman_lib_tSELinux ラベルが必要です。新しいテンプレートディレクトリーの所有者を
foremanユーザーに変更します。# chown foreman /var/lib/foreman/My_Templates_Dir-
Template Sync タブの Repo 設定を
/var/lib/foreman/My_Templates_Dir/ディレクトリーと一致するように変更します。
16.3. テンプレートのインポート リンクのコピーリンクがクリップボードにコピーされました!
任意のリポジトリーからテンプレートをインポートできます。/tmp/dir、git://example.com、https://example.com、ssh://example.com などの異なるプロトコルを使用してリポジトリーにポイントさせることもできます。
Satellite が提供するテンプレートはロックされ、デフォルトではインポートできません。この動作を上書きするには、Template Sync メニューの Force import 設定を yes に変更するか、force パラメーター -d '{ "force": "true" }' を import コマンドに追加します。
前提条件
各テンプレートに、テンプレートが属するロケーションおよび組織が含まれている必要がある。これは、すべてのタイプのテンプレートタイプに適用されます。テンプレートをインポートする前に、以下のセクションをテンプレートに追加します。
<%# kind: provision name: My_Provisioning_Template oses: - My_first_Operating_System - My_second_Operating_System locations: - My_first_Location - My_second_Location organizations: - My_first_Organization - My_second_Organization %>
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
API を使用するには、API の手順 を参照してください。
Ansible を使用するには、Ansible の手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Sync Templates に移動します。
- Import をクリックします。
- 各フィールドに、Administer > Settings > Template Sync で設定した値が入力されます。インポートするテンプレートに従って値を変更します。各フィールドの詳細は、「テンプレート同期設定」 を参照してください。
- Submit をクリックします。
Satellite Web UI はインポートのステータスを表示します。ステータスは永続的ではありません。ステータスページを離れると、ページに戻ることはできません。
CLI 手順
リポジトリーからテンプレートをインポートするには、以下のコマンドを実行します。
$ hammer import-templates \ --branch "My_Branch" \ --filter '.*Template Name$' \ --organization "My_Organization" \ --prefix "[Custom Index] " \ --repo "https://git.example.com/path/to/repository"テンプレートのインデックス化と管理には、
--prefixを使用してテンプレートにカテゴリーを設定することができます。大型リポジトリーから特定のテンプレートを選択するには、--filterを使用してインポートするテンプレートのタイトルを定義します。たとえば、--filter '.*Ansible Default$'とすると、各種 Ansible Default テンプレートをインポートします。
API の手順
POSTリクエストをapi/v2/templates/importに送信します。# curl -H "Accept:application/json" \ -H "Content-Type:application/json" \ -u login:password \ -k https://satellite.example.com/api/v2/templates/import \ -X POSTインポートが成功すると、
{"message":"Success"}が表示されます。
Ansible の手順
-
redhat.satellite.templates_importモジュールを使用します。
詳細は、Ansible モジュールのドキュメント ansible-doc redhat.satellite.templates_import を参照してください。
16.4. テンプレートのエクスポート リンクのコピーリンクがクリップボードにコピーされました!
既存のリポジトリーにテンプレートをエクスポートできます。
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
API を使用するには、API の手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Sync Templates に移動します。
- Export をクリックします。
- 各フィールドに、Administer > Settings > Template Sync で設定した値が入力されます。エクスポートするテンプレートに従って値を変更します。各フィールドの詳細は、「テンプレート同期設定」 を参照してください。
- Submit をクリックします。
Satellite Web UI はエクスポートのステータスを表示します。ステータスは永続的ではありません。ステータスページを離れると、ページに戻ることはできません。
CLI 手順
テンプレートをリポジトリーにエクスポートするには、次のコマンドを入力します。
$ hammer export-templates \ --organization "My_Organization" \ --repo "https://git.example.com/path/to/repository"注記このコマンドは、リポジトリーのクローンを作成し、コミットに変更を加えて、リポジトリーにプッシュして戻します。
--branch "My_Branch"オプションを使用すると、テンプレートを特定のブランチにエクスポートできます。
API の手順
POSTリクエストをapi/v2/templates/exportに送信します。# curl -H "Accept:application/json" \ -H "Content-Type:application/json" \ -u login:password \ -k https://satellite.example.com/api/v2/templates/export \ -X POSTエクスポートが成功すると、
{"message":"Success"}が表示されます。
-d パラメーターを使用して、リクエストでデフォルトの API 設定を上書きします。以下の例では、git.example.com/templates リポジトリーにテンプレートをエクスポートします。
# curl -H "Accept:application/json" \
-H "Content-Type:application/json" \
-u login:password \
-k https://satellite.example.com/api/v2/templates/export \
-X POST \
-d "{\"repo\":\"git.example.com/templates\"}"
第17章 問題のログとレポート リンクのコピーリンクがクリップボードにコピーされました!
次のセクションでは、Satellite で使用できる最も一般的なログファイルとデバッグツールを説明します。
17.1. Satellite コンポーネントのログレベル リンクのコピーリンクがクリップボードにコピーされました!
個々の Satellite コンポーネントのログレベルを設定できます。デフォルトのログレベルは info です。Satellite のトラブルシューティングを行うために、Satellite コンポーネントのログレベルを上げることができます。ログレベルを debug に上げると、最も詳細な情報を取得できます。
17.1.1. Foreman のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、ログは /var/log/foreman/production.log にあります。詳細は、「ロギングの種類とレイアウトの設定」 を参照してください。
手順
ログレベルを
debugに設定します。# satellite-installer --foreman-logging-level debugデバッグが完了したら、ログレベルをデフォルト値にリセットします。
# satellite-installer --reset-foreman-logging-level
関連情報
Satellite のロギング設定の詳細は、satellite-installer を使用し、--full-help オプションを指定します。
# satellite-installer --full-help | grep logging
17.1.2. Hammer のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
ログは ~/.hammer/log/hammer.log にあります。
手順
/etc/hammer/cli_config.ymlで、:log_level:オプションをdebugに設定します。:log_level: 'debug'
17.1.3. Capsule のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、ログは /var/log/foreman-proxy/proxy.log にあります。詳細は、「ロギングの種類とレイアウトの設定」 を参照してください。
手順
ログレベルを
debugに設定します。# satellite-installer --foreman-proxy-log-level DEBUGデバッグが完了したら、ログレベルをデフォルト値にリセットします。
# satellite-installer --reset-foreman-proxy-log-level
17.1.4. Candlepin のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
ログは /var/log/candlepin/candlepin.log および /var/log/candlepin/error.log にあります。
手順
ログレベルを
DEBUGに設定します。# satellite-installer --katello-candlepin-loggers log4j.logger.org.candlepin:DEBUGcandlepin ログファイルが冗長すぎる場合は、デフォルトのデバッグレベルを下げることができます。
# satellite-installer \ --katello-candlepin-loggers log4j.logger.org.candlepin:DEBUG \ --katello-candlepin-loggers log4j.logger.org.candlepin.resource.ConsumerResource:WARN \ --katello-candlepin-loggers log4j.logger.org.candlepin.resource.HypervisorResource:WARNデバッグが完了したら、ログレベルをデフォルト値にリセットします。
# satellite-installer --reset-katello-candlepin-loggers
17.1.5. Redis のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
Redis のログは /var/log/redis/redis.log にあります。
手順
/etc/redis/redis.confで、ログレベルをdebugに設定します。loglevel debugRedis サービスを再起動します。
# systemctl restart redis
satellite-installer を実行すると、設定がデフォルトに戻ります。
17.1.6. satellite-installer のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
satellite-installer は /var/log/foreman-installer/ にログを書き込みます。
手順
satellite-installerユーティリティーのログレベルを上げます。# satellite-installer --verbose-log-level debugこれは標準出力にのみ影響し、ディスクに書き込まれるログファイルには影響しないことに注意してください。
17.1.7. Pulp のログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
Pulp は systemd ジャーナルにログを記録します。このログは journalctl --unit 'pulpcore*' を使用して表示できます。
手順
/etc/pulp/settings.pyで、ログレベルをDEBUGに設定します。LOGGING = {"dynaconf_merge": True, "loggers": {'': {'handlers': ['console'], 'level': 'DEBUG'}}}Pulp サービスを再起動します。
# systemctl restart \ pulpcore-api \ pulpcore-content \ pulpcore-resource-manager \ pulpcore-worker@\*
satellite-installer を実行すると、設定がデフォルトに戻ります。
17.1.8. Puppet エージェントのログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
ログは /var/log/puppetlabs/puppet/ にあります。
前提条件
- Satellite で Puppet が有効になっている。詳細は、Puppet 統合を使用した設定の管理 の Satellite と Puppet の統合の有効化 を参照してください。
手順
ログレベルを
debugに設定します。# satellite-installer --puppet-agent-additional-settings log_level:debug
17.1.9. Puppet サーバーのログレベルを上げる リンクのコピーリンクがクリップボードにコピーされました!
ログは /var/log/puppetlabs/puppetserver/ にあります。
前提条件
- Satellite で Puppet が有効になっている。詳細は、Puppet 統合を使用した設定の管理 の Satellite と Puppet の統合の有効化 を参照してください。
手順
ログレベルを
debugに設定します。# satellite-installer --puppet-server-additional-settings log_level:debug
17.2. Hammer CLI を使用したログレベルの設定 リンクのコピーリンクがクリップボードにコピーされました!
Hammer を設定して、さまざまな Satellite コンポーネントのデバッグ情報をログに記録できます。デフォルトのログレベルは INFO です。
hammer使用してログレベルを変更できるコンポーネントをリストするには、以下を実行します。$ hammer admin logging --listすべてのコンポーネントのログレベルを
DEBUGに設定するには、以下を実行します。$ hammer admin logging --all --level-debug # satellite-maintain service restartすべてのコンポーネントのログレベルを
PRODUCTIONに設定するには、以下を実行します。$ hammer admin logging --all --level-production # satellite-maintain service restart特定のコンポーネントのログレベルを
DEBUGに設定するには、以下を実行します。$ hammer admin logging --components My_Component --level-debug # satellite-maintain service restart利用可能なロギングオプションをリスト表示するには、以下のコマンドを使用します。
$ hammer admin logging --help
17.3. ロギングの種類とレイアウトの設定 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Satellite はファイルベースのロギングを使用します。satellite-installer を使用して、ロギングの種類とレイアウトを変更できます。
ジャーナルを使用したロギングの設定手順
以下の
satellite-installerコマンドを入力して、ロギングをjournaldサービスに設定します。# satellite-installer \ --foreman-logging-type journald \ --foreman-proxy-log JOURNALオプション: ログメッセージを検査するには、
journalctlユーティリティーを使用します。以下に例を示します。-
journalctl --unit foremanおよびjournalctl --unit foreman-proxyは、foremanおよびforeman-proxyユニットのメッセージを表示します。 -
journalctl REQUEST=request_IDは、指定されたリクエストのメッセージを表示します。
-
ファイルベースのロギングを設定する手順
次の
satellite-installerコマンドを入力して、ファイルベースのログを設定します。# satellite-installer \ --reset-foreman-logging-type \ --reset-foreman-proxy-logオプション: ログメッセージを検査するには、次のファイルを表示します。
-
/var/log/foreman/production.log -
/var/log/foreman-proxy.log
-
JSON 出力へのロギングを設定する手順
Satellite Server で、
satellite-installerの JSON 出力へのロギングを有効にします。# satellite-installer \ --foreman-logging-layout json \ --foreman-logging-type fileオプション:
jqを使用してログメッセージを検査します。# cat /var/log/foreman/production.log | jq
関連情報
ジャーナルの詳細は、Red Hat Enterprise Linux 9 の基本的なシステム設定 の コマンドラインを使用したログの表示 を参照してください。
17.4. 個別のロガーを使用した選択的デバッグ リンクのコピーリンクがクリップボードにコピーされました!
ロガーを個別に有効にして、選択的にデバッグを実行できます。
手順
必要なロガーを個別に有効にします。たとえば、
sqlとldapのロガーを有効にするには、以下のコマンドを入力します。# satellite-installer \ --foreman-loggers ldap:true \ --foreman-loggers sql:trueオプション: すべてのロガーをデフォルト値にリセットします。
# satellite-installer --reset-foreman-loggers
17.5. 個別のロガーの概要 リンクのコピーリンクがクリップボードにコピーされました!
次のリストは、選択したロガーの概要を示しています。すべてのロガーを含むリストと、そのデフォルト値は、Foreman::Logging.add_loggers の /usr/share/foreman/config/application.rb で表示されます。
appWeb 要求とアプリケーションの一般的なメッセージをすべてロギングします。
デフォルト値: true
audit追加のファクト統計、追加、更新、削除されたファクトの数をロギングします。
デフォルト値: true
background- バックグラウンド処理コンポーネントからの情報をログに記録します。
blob監査目的で、レンダリングされたテンプレートの内容をログに記録します。
重要blobロガーには機密データが含まれている可能性があります。dynflow- Dynflow プロセスからの情報をログに記録します。
ldapハイレベルの LDAP クエリーと LDAP オペレーションをロギングします。
デフォルト値: false
notifications- 通知コンポーネントからの情報をログに記録します。
permissionsページを読み込む時にユーザーのロール、フィルター、パーミッションへのクエリーをロギングします。
デフォルト値: false
sqlRails ActiveRecord を使用した SQL クエリーをロギングします。
デフォルト値: false
telemetry- テレメトリーからのデバッグ情報をログに記録します。
templates- テンプレートレンダラーコンポーネントからの情報をログに記録します。
17.6. サービスのステータスの取得 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、一連のバックエンドサービスを使用します。トラブルシューティングを行うときに、Satellite サービスのステータスを確認できます。
手順
Satellite Web UI で、Administer > About に移動します。
- Smart Proxies タブで、すべての Capsule のステータスを表示します。
- Compute Resources タブで、接続されているコンピュートリソースプロバイダーのステータスを表示します。
- Backend System Status テーブルで、すべてのバックエンドサービスのステータスを表示します。
CLI 手順
データベースと Satellite サービスから情報を取得します。
$ hammer pingsystemd で実行されているサービスのステータスを確認します。
# satellite-maintain service status詳細は、
satellite-maintain service --helpを実行して確認してください。ヘルスチェックを実行します。
$ satellite-maintain health check詳細は、
satellite-maintain health --helpを実行して確認してください。
17.7. サービスの再起動 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、一連のバックエンドサービスを使用します。トラブルシューティングを行う場合、必要に応じてサービスを再起動できます。
手順
Satellite サービスを再起動します。
# satellite-maintain service restart
17.8. ログ情報を処理するためのユーティリティー リンクのコピーリンクがクリップボードにコピーされました!
ログファイルから情報を収集して、Satellite のトラブルシューティングを行うことができます。
- sosreport
sosreportコマンドは、実行中のカーネルバージョン、ロードされたモジュール、実行中のサービス、システムおよびサービス設定ファイルなど、Linux システムから設定および診断情報を収集します。さらに、バックエンドのサービスやタスクなど、Red Hat Satellite に関する情報も収集します。この出力は、/var/tmp/sosreport-XXX-20171002230919.tar.xzにある tar ファイルに保存されます。詳細は、
sos report --helpを実行するか、Red Hat ナレッジベース の What is a sosreport and how can I create one? を参照してください。重要sosreportコマンドは、情報を収集する際にパスワード、トークン、キーなどのセキュリティー情報を削除します。ただし、tar ファイルには依然として Satellite Server の機密情報が含まれる可能性があります。tar ファイルは、公開ターゲットではなく、対象とする受信者に直接送信してください。- foreman-tail
foreman-tailコマンドは、Satellite のログをリアルタイムで表示します。詳細は、
foreman-tail(8)の man ページを参照してください。
17.9. ログファイルのディレクトリー リンクのコピーリンクがクリップボードにコピーされました!
次の表は、Satellite Server 上の選択されたログディレクトリーの概要を示しています。
| ログファイルのディレクトリー | ログファイルの内容の説明 |
|---|---|
|
| サブスクリプションの管理 |
|
| インストーラー |
|
| Foreman の維持 |
|
| Foreman プロキシー |
|
| Foreman |
|
| Apache HTTP サーバー |
|
| その他の各種ログメッセージ |
|
| Puppet |
|
| Candlepin Web サービスのログ |
17.10. システムジャーナルのメタデータ リンクのコピーリンクがクリップボードにコピーされました!
次の表に、Satellite で journald サービスが使用するメタデータを示します。このメタデータを使用して、クエリーをフィルタリングできます。
- AUDIT_ACTION
実行された監査アクション
例: 作成、更新、または削除
- AUDIT_TYPE
監査リソースの種類
例: ホスト、サブネット、または ContentView
- AUDIT_ID
- 数字としての監査リソースデータベース ID
- AUDIT_ATTRIBUTE
- 監査リソースフィールドまたは更新されたデータベース列
- AUDIT_FIELD_OLD
- 更新アクションの古い監査値
- AUDIT_FIELD_NEW
- 更新アクションの新しい監査値
- AUDIT_ID
- 監査対象のレコードデータベース ID
- AUDIT_ATTRIBUTE
アクションが実行された属性名または列
例: 名前または説明
- EXCEPTION_MESSAGE
- エラーがログに記録される場合の例外メッセージ
- EXCEPTION_CLASS
- エラーがログに記録される場合の例外 Ruby クラス
- EXCEPTION_BACKTRACE
- エラーがログに記録される場合の、複数行の文字列としての例外バックトレース
- LOC_ID
- ロケーションデータベース ID
- LOC_NAME
- ロケーション名
- LOC_LABEL
- ロケーションラベル
- LOGGER
ロガー名
デフォルトで有効になっているロガーの現在のリストを表示するには、次のコマンドを入力します。
# awk '/add_loggers/,/^$/' /usr/share/foreman/config/application.rb- ORG_ID
- 組織データベース ID
- ORG_NAME
- 組織名
- ORG_LABEL
- 組織ラベル
- REMOTE_IP
- クライアントのリモート IP アドレス
- REQUEST
- Action Dispatch モジュールによって生成されたリクエスト ID
- SESSION
- セッションごと、またはセッションレスリクエストのリクエストごとに生成されるランダム ID
- TEMPLATE_NAME
- テンプレート名
- TEMPLATE_DIGEST
- レンダリングされたテンプレートコンテンツのダイジェスト (SHA256)
- TEMPLATE_HOST_NAME
- レンダリングされたテンプレートのホスト名 (存在する場合)
- TEMPLATE_HOST_ID
- レンダリングされたテンプレートのホストデータベース ID (存在する場合)
- USER_LOGIN
- ユーザーのログイン名
第18章 リソースの監視 リンクのコピーリンクがクリップボードにコピーされました!
この章では、管理対象システムの監視とレポートを設定する方法を詳しく説明します。これには、ホスト設定、コンテンツビュー、コンプライアンス、登録済みホスト、プロモート、同期が含まれます。
18.1. Red Hat Satellite コンテンツダッシュボードの使用 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite コンテンツダッシュボードには、ホスト設定の概要、コンテンツビュー、コンプライアンスレポート、現在登録されているホスト、プロモートと同期、最新の通知のリストなどを提供するさまざまなウィジェットが含まれています。
Satellite web UI で、Monitor > Dashboard に移動して、コンテンツダッシュボードにアクセスします。ダッシュボードは、各ウィジェットをクリックして別の位置にドラッグすることで、配置を変更することができます。以下のウィジェットが利用できます。
- ホスト設定の状態
最後のレポーティング期間におけるホストの設定状態およびそれに該当するホスト数。以下の表では、各設定状態を説明しています。
Expand 表18.1 ホスト設定の状態 アイコン 状態 説明
変更をエラーなく実行したホスト
最後のレポーティング期間に変更が正常に実行されたホスト。
エラー状態のホスト
最後のレポーティング期間にエラーが検出されたホスト。
直近 35 分間での良好なホストレポート
直近の 35 分間で変更を行わず、エラーがないホスト。
保留中の変更があるホスト
いくつかのリソースが適用されているものの、Puppet が
noopモードで実行されるように設定されたホスト。
同期していないホスト
同期がされておらず、最後のレポーティング期間にレポートが受信されていないホスト。
レポートのないホスト
最後のレポーティング期間にレポートが受信されていないホスト。
警告が無効にされているホスト
監視対象外のホスト。
設定状態のいずれかをクリックすると、該当するホストが表示されます。
- ホスト設定チャート
- ホスト状態の割合と該当するホストのパーセンテージを示す円グラフです。
- 最新イベント
管理情報、製品の変更およびエラーに関するホストが生成するメッセージのリストです。
すべてのユーザーに送信されるグローバル通知や、異常なアクティビティーまたはエラーを検出するためにこのセクションを監視します。
- 実行分布 (直近 30 分)
- デフォルトでは 30 分となっている直近の Puppet 間隔中の実行中 Puppet エージェントの分布状況を示すグラフです。このケースでは、各列で 3 分間にクライアントから受け取ったレポート数を示しています。
- 新規ホスト
- 最近作成されたホストリストです。ホストをクリックすると、詳細が表示されます。
- タスクのステータス
- ステータスと結果別に分類される現在のすべてのタスクのサマリーです。タスク番号をクリックすると、対応するタスクのリストが表示されます。
- 最新の警告/エラータスク
- 警告またはエラーにより停止している最新タスクのリストです。タスクをクリックして詳細を確認してください。
- Discovered Hosts
- Discovery プラグインによってプロビジョニングネットワーク上で検出されたすべてのベアメタルホストのリストです。
- 最新のエラータ
- Satellite に登録されているホストで利用できるすべてのエラータのリストです。
- Content Views
- Satellite 内のすべてのコンテンツビューとその公開ステータスのリストです。
- 同期の概要
- Satellite で有効にされているすべての製品またはリポジトリーおよびそれらの同期の状態の概要です。同期待ちになっている製品、同期されていない製品、同期が行われた製品はすべてこのセクションにリスト表示されます。
- ホストコレクション
- Satellite 内のすべてのホストコレクションとそれらの状態のリストで、各ホストコレクション内のコンテンツホストの数なども含まれます。
- Virt-who 設定の状態
環境内のホスト上で稼働している
virt-whoデーモンから受け取ったレポートの状態。以下の状態があります。Expand 表18.2 virt-who 設定の状態 状態 説明 レポートなし
virt-who 設定デプロイメント中にエラーが発生したか、設定がデプロイされていないか、もしくは予定された期間に virt-who が Satellite に接続できないか、いずれかのためにレポートが受信されていません。
変更なし
ハイパーバイザーが仮想マシン上で変更を検出していない、または virt-who が予定された期間中にレポートのアップロードに失敗したために、レポートが受信されていません。仮想マシンを追加したものの、設定が 変更なし 状態にある場合は、その virt-who が実行中か確認してください。
OK
予定期間中にエラーなしでレポートが受信されました。
設定合計数
virt-who 設定の合計数。
各状態の設定を表示するには、その設定状態をクリックします。
このウィジェットでは、変更のない最新の設定 にある 変更なし で最新の 3 つの設定もリスト表示されます。
- 最新のコンプライアンスレポート
- 最新のコンプライアンスレポートリスト。各コンプライアンスレポートでは、パス (P)、不合格 (F)、その他 (O) のルール数が表示されます。ホストをクリックすると、コンプライアンスレポートの詳細が表示されます。ポリシーをクリックすると、その詳細が表示されます。
- コンプライアンスレポートの内訳
- コンプライアンスレポートの状態の分布を示す円グラフです。
- Red Hat Insights アクション
- Red Hat Insights は Satellite に組み込まれたツールで、環境をチェックし、実行可能なアクションを提案します。アクションは、可用性、安定性、パフォーマンス、セキュリティーの 4 つに分けられます。
- Red Hat Insights リスクサマリー
リスクレベルに応じたアクションの分布を示す表です。リスクレベルは、アクションの重要性と問題を発生させる可能性を示しています。リスクレベルには、低、中、高、重大があります。
注記Satellite Web UI で表示される日付の形式を変更することはできません。
18.1.1. タスクの管理 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Satellite は、リポジトリーの同期、エラータの適用、コンテンツビューの公開など、計画または実行されたすべてのタスクの詳細なログを保持します。ログを確認するには、Monitor > Satellite Tasks > Tasks に移動します。
タスクウィンドウでは、特定のタスクを検索し、そのステータス、詳細、およびタスクが開始してからの経過時間を表示できます。1 つ以上のタスクをキャンセルして再開することもできます。
タスクは Dynflow エンジンを使用して管理されます。リモートタスクには、必要に応じて調整できるタイムアウトが設定されます。
タイムアウト設定を調整する方法
- Satellite Web UI で、Administer > Settings に移動します。
- 検索ボックスに %_timeout と入力し、Search をクリックします。検索では、説明を含む 4 つの設定が返されます。
- Value 列で、数字の横にあるアイコンをクリックして編集します。
- 希望の値を秒単位で入力し、Save をクリックします。
低帯域幅の場合は %_finish_timeout 値の編集が役に立つ場合があります。待ち時間が長い場合は %_accept_timeout 値の編集が役立つことがあります。
タスクが初期化されると、Candlepin または Pulp などのタスクで使用されるすべてのバックエンドサービスに対して正常に機能するかどうかがチェックされます。チェックにパスしない場合は、次のようなエラーを受信します。
There was an issue with the backend service candlepin: Connection refused – connect(2).
バックエンドサービスチェック機能で問題が発生する場合は、以下の方法で無効にできます。
サービスのチェックを無効にする方法
- Satellite Web UI で、Administer > Settings に移動します。
- 検索ボックスに check_services_before_actions と入力し、Search をクリックします。
- Value 列でアイコンをクリックして値を編集します。
- ドロップダウンメニューから false を選択します。
- Save をクリックします。
18.2. RSS 通知の設定 リンクのコピーリンクがクリップボードにコピーされました!
Satellite のイベント通知アラートを表示するには、画面右上の 通知 アイコンをクリックします。
デフォルトでは、通知エリアには Red Hat Satellite Blog で公開された RSS フィードイベントが表示されます。
フィードは 12 時間ごとにリフレッシュされ、新規イベントが利用可能となるたびに通知エリアがリフレッシュされます。
URL フィードを変更することで RSS フィード通知を設定できます。サポートされるフィード形式は、RSS 2.0 と Atom です。RSS 2.0 フィード設定の例は、Red Hat Satellite Blog feed を参照してください。Atom フィード設定の例は、Foreman blog feed を参照してください。
RSS フィード通知を設定する方法
- Satellite web UI で、Administer > Settings に移動し、Notifications タブを選択します。
- RSS URL の行で、Value 列の編集アイコンをクリックし、必要な URL を入力します。
- RSS 有効化の行で、Value 列の編集アイコンをクリックし、この機能を有効または無効にします。
18.3. Satellite Server の監視 リンクのコピーリンクがクリップボードにコピーされました!
監査レコードには、Satellite ですべてのユーザーが行った変更が一覧表示されます。この情報は、メンテナンスとトラブルシューティングに使用できます。
手順
- Satellite Web UI で、Monitor > Audits に移動して、監査レコードを表示します。
すべての監査属性のリストを取得するには、次のコマンドを使用します。
# foreman-rake audits:list_attributes
18.4. Capsule Server の監視 リンクのコピーリンクがクリップボードにコピーされました!
以下の項では、Satellite Web UI を使用して、保守とトラブルシューティングに役に立つ Capsule 情報を見つける方法を説明します。
18.4.1. 一般的な Capsule 情報の表示 リンクのコピーリンクがクリップボードにコピーされました!
Satellite Web UI で、Infrastructure > Capsules に移動して、Satellite Server に登録されている Capsule サーバーのテーブルを表示します。表に含まれる情報には以下の質問に対する回答が含まれます。
- Capsule Server は稼働していますか ?
-
これは、Status 列で緑色のアイコンにより示されます。赤色のアイコンは、非アクティブな Capsule を示します。その Capsule をアクティベートするには、Capsule Server で
service foreman-proxy restartコマンドを使用します。 - Capsule Server で有効なサービスはどれですか ?
- Features 列で、たとえば Capsule が DHCP サービスを提供しているか、Pulp ミラーとして動作するかを確認できます。Capsule の機能はインストール中に有効にしたり、後で設定したりできます。詳細は、Capsule Server のインストール を参照してください。
- Capsule Server はどの組織およびロケーションに割り当てられていますか ?
Capsule Server は複数の組織およびロケーションに割り当てることができますが、現在選択された組織に属する Capsule のみが表示されます。すべての Capsule をリストするには、左上隅にあるコンテキストメニューから 任意の組織 を選択します。
Capsule 設定の変更後に、Actions 列のドロップダウンメニューから Refresh を選択して Capsule の表を最新状態にしてください。
詳細情報を表示するには Capsule 名をクリックします。概要 タブでは、Capsule の表にある情報と同じものを見つけることができます。さらに、以下の質問に回答することができます。
- Capsule Server が管理するホストはどれですか ?
- 関連するホストの数は マネージドホスト ラベルの横に表示されます。関連するホストの詳細を表示するには、その数をクリックします。
- Capsule Server で利用可能なストレージ容量はどれくらいですか ?
-
/var/lib/pulpで Pulp コンテンツが使用しているストレージ容量が表示されます。また、Capsule で利用可能な残りのストレージ容量を確認できます。
18.4.2. 監視サービス リンクのコピーリンクがクリップボードにコピーされました!
Satellite web UI で、Infrastructure > Capsules に移動し、選択した Capsule の名前をクリックします。サービス タブでは、DNS ドメインのリストや Pulp ワーカーの数などの、Capsule サービスに関する基本的な情報を見つけることができます。ページの外観は、Capsule Server で有効なサービスによって異なります。より詳細なステータス情報を提供するサービスには Capsule ページで専用のタブが用意されることがあります。詳細は、「Puppet の監視」 を参照してください。
18.4.3. Puppet の監視 リンクのコピーリンクがクリップボードにコピーされました!
Satellite web UI で、Infrastructure > Capsules に移動し、選択した Capsule の名前をクリックします。Puppet タブでは、以下を確認できます。
- 全般 サブタブで、Puppet イベントのサマリー、最新の Puppet 実行の概要、関連するホストの同期ステータス。
- 環境 サブタブで、Puppet 環境のリスト。
Puppet CA タブでは、以下の情報を確認できます。
- 全般 サブタブで、証明書ステータスの概要と自動署名エントリーの数。
- 証明書 サブタブで、Capsule に関連する CA 証明書の表。ここでは、証明書失効データを調べたり、取り消し をクリックして証明書をキャンセルしたりすることができます。
- エントリーの自動署名 サブタブで、自動署名エントリーのリスト。ここでは、新規 をクリックしてエントリーを作成したり、削除 をクリックしてエントリーを削除したりできます。
Puppet タブと Puppet CA タブは、Satellite で Puppet を有効にしている場合にのみ使用できます。
関連情報
- 詳細は、Puppet 統合を使用した設定の管理 の Satellite と Puppet の統合の有効化 を参照してください。
第19章 Webhook の使用 リンクのコピーリンクがクリップボードにコピーされました!
Webhook は、Web ページまたは Web アプリケーションが他のアプリケーションにリアルタイムで情報を提供するための方法です。Webhook は、イベントが発生した後にのみトリガーされます。リクエストには通常、イベントの詳細が含まれています。イベントは、ホストがプロビジョニングされたことを確認する電子メールの送信などの呼出しをトリガーします。Webhook を使用すると、fire-and-forget メッセージ交換パターンを使用して、Satellite の内部イベントに基づいて外部 API への呼び出しを定義できます。リクエストを送信するアプリケーションは、レスポンスを待たないか、無視します。
Webhook のペイロードは、Webhook テンプレートから作成されます。Webhook テンプレートは、プロビジョニングテンプレートと同じ ERB 構文を使用します。使用可能な変数:
-
@event_name: イベントの名前。 -
@webhook_id: 一意のイベント ID。 -
@payload: ペイロードデータ。イベントタイプごとに異なります。個々のフィールドにアクセスするには、@payload[:key_name]Ruby ハッシュ構文を使用します。 -
@payload[:object]: データベースアクション (作成、更新、削除) によってトリガーされるイベントのデータベースオブジェクト。カスタムイベントには使用できません。 -
@payload[:context]: リクエストやセッションの UUID、リモート IP アドレス、ユーザー、組織、ロケーションなどのハッシュなどの追加情報。
Webhook は HTTP を使用するため、既存の Web サービスに新しいインフラストラクチャーを追加する必要はありません。
Satellite での Webhook の一般的な使用例は、ホストが作成または削除されたときにモニタリングシステムを呼び出すことです。
Webhook は、外部システムで実行するアクションを API を介して実行できる場合に役立ちます。追加のコマンドを実行したりファイルを編集したりする必要がある場合は、Capsules 用の shellhooks プラグインを利用できます。shellhooks プラグインを使用すると、API を介して実行できる Capsule 上のシェルスクリプトを定義できます。
shellhooks プラグインをインストールしなくても、webhook を正常に使用できます。
利用可能なイベントのリストは、利用可能な Webhook イベント を参照してください。
19.1. Webhook テンプレートの作成 リンクのコピーリンクがクリップボードにコピーされました!
Webhook テンプレートは、Webhook のトリガー時に、設定されたターゲットに対して HTTP リクエストの本文を生成するために使用されます。次の手順を使用して、Satellite web UI で Webhook テンプレートを作成します。
手順
- Satellite Web UI で、Administer > Webhook > Webhook Templates に移動します。
- Clone an existing template または Create Template をクリックします。
- テンプレートの名前を入力します。
エディターを使用して、テンプレートペイロードに変更を加えます。
Webhook HTTP ペイロードは、Satellite テンプレート構文を使用して作成する必要があります。Webhook テンプレートは、イベントのメインオブジェクトを表すことができる
@objectと呼ばれる特別な変数を使用できます。特定のイベントの場合、@objectが欠落する可能性があります。@payload変数を使用して、実際にどのデータが利用可能であるかを判断できます。詳細は、ホストの管理 の テンプレート作成リファレンス を参照してください。使用可能なテンプレートマクロとメソッドは、Satellite Server の
/templates_docを参照してください。- オプション: 説明と監査コメントを入力します。
- 組織とロケーションを割り当てます。
- Submit をクリックします。
例
Webhook テンプレートを作成するときは、テンプレートの対象となるターゲットアプリケーションの形式に従う必要があります。たとえば、アプリケーションでは、Webhook メッセージを含む "text" フィールドが想定できます。Webhook テンプレートの形式の詳細は、対象アプリケーションのドキュメントを参照してください。
- リモート実行ジョブの実行
この Webhook テンプレートは、リモート実行ジョブの ID と結果を含むメッセージを定義します。このテンプレートを使用する Webhook は、
Actions Remote Execution Run Host Job SucceededまたはActions Remote Execution Run Host Job Failedなどのイベントにサブスクライブできます。{ "text": "job invocation <%= @object.job_invocation_id %> finished with result <%= @object.task.result %>" }- ユーザーの作成
この Webhook テンプレートは、作成されたユーザーのログインとメールを含むメッセージを定義します。このテンプレートを使用する Webhook は、
User Createdイベントにサブスクライブする必要があります。{ "text": "user with login <%= @object.login %> and email <%= @object.mail %> created" }
19.2. Webhook の作成 リンクのコピーリンクがクリップボードにコピーされました!
Satellite web UI を使用して、イベント、ペイロード、HTTP 認証、コンテンツタイプ、およびヘッダーをカスタマイズできます。
次の手順を使用して、Satellite Web UI で Webhook を作成します。
手順
- Satellite Web UI で、Administer > Webhook > Webhooks に移動します。
- Create new をクリックします。
- Subscribe to リストからイベントを選択します。
- Webhook の Name を入力します。
- Target URL を入力します。Webhook は、事前設定された URL に対して HTTP リクエストを行います。ターゲット URL は動的 URL にすることができます。
- テンプレートをクリックして Template を選択します。Webhook テンプレートは、Webhook のトリガー時に Satellite Server に対して HTTP リクエストの本文を生成するために使用されます。
- HTTP メソッドを入力します。
- オプション: Webhook の作成時にアクティブ化しない場合は、Enabled フラグのチェックを外します。
- Credentials タブをクリックします。
- オプション: HTTP 認証が必要な場合は、User および Password を入力します。
- オプション: システム証明書ストアまたは Satellite CA に対してサーバー証明書を検証しない場合は、Verify SSL のチェックを外します。
-
Additional タブで、HTTP Content Type を入力します。たとえば、定義したペイロードの
application/json、application/xml、text/plainなどです。アプリケーションは、指定されたコンテンツタイプに一致するようにコンテンツを変換しようとはしません。 - オプション: HTTP ヘッダーを JSON として提供します。ERB も許可されます。
非標準の HTTP または HTTPS ポートを持つエンドポイントで Webhook を設定する場合、SELinux ポートを割り当てる必要があります。オンラインネットワーク環境での Satellite Server のインストール の カスタムポートで Satellite にアクセスできるように SELinux を設定する を参照してください。
19.3. 利用可能な Webhook イベント リンクのコピーリンクがクリップボードにコピーされました!
次の表には、Satellite web UI から利用できる Webhook イベントのリストが含まれています。Action イベントは success した場合にのみ Webhook をトリガーするため、アクションが失敗した場合、Webhook はトリガーされません。
ペイロードの詳細は、Administer > About > Support > Templates DSL アクセスしてください。使用可能なタイプのリストを次の表に示します。一部のイベントは custom としてマークされます。その場合、ペイロードはオブジェクトオブジェクトですが、Ruby ハッシュ (Key-Value データ構造) であるため、構文が異なります。
| イベント名 | 説明 | ペイロード |
|---|---|---|
| Actions Katello Content View Promote Succeeded | コンテンツビューが正常にプロモートされました。 | Actions::Katello::ContentView::Promote |
| Actions Katello Content View Publish Succeeded | リポジトリーは正常に同期されました。 | Actions::Katello::ContentView::Publish |
| Actions Remote Execution Run Host Job Succeeded | ホストの汎用リモート実行ジョブが成功しました。このイベントは、完了すると、すべてのリモート実行ジョブに対して発行されます。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Errata Install Succeeded | Katello インターフェイスを使用してエラータをインストールします。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Group Install Succeeded | Katello インターフェイスを使用してパッケージグループをインストールします。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Package Install Succeeded | Katello インターフェイスを使用してパッケージをインストールします。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Group Remove | Katello インターフェイスを使用してパッケージグループを削除します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Package Remove Succeeded | Katello インターフェイスを使用してパッケージを削除します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Service Restart Succeeded | Katello インターフェイスを使用してサービスを再起動します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Group Update Succeeded | Katello インターフェイスを使用してパッケージグループを更新します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Katello Package Update Succeeded | Katello インターフェイスを使用してパッケージを更新します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Foreman OpenSCAP Run Scans Succeeded | OpenSCAP スキャンを実行します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Ansible Run Host Succeeded | ホストに定義されたすべてのロールを含む Ansible Playbook を実行します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Ansible Run Capsule Upgrade Succeeded | 特定の Capsule Server 上の Capsule をアップグレードします。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Ansible Configure Cloud Connector Succeeded | 特定のホストで Cloud Connector を設定します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Ansible Run Insights Plan Succeeded | ID を指定して Red Hat から指定されたメンテナンスプランを実行します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Ansible Run Playbook Succeeded | 特定のホストに対して Ansible Playbook を実行します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Ansible Enable Web Console Succeeded | Ansible Playbook を実行して、特定のホストで Web コンソールを有効にします。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Puppet Run Host Succeeded | Puppet を 1 回実行します。 | Actions::RemoteExecution::RunHostJob |
| アクションリモート実行ホストジョブの実行 Katello モジュールストリームアクションを成功させる | Katello インターフェイスを使用してモジュールストリームアクションを実行します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Leapp Pre-upgrade Succeeded | RHEL7 ホストのアップグレード可能性チェック。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Leapp Remediation Plan Succeeded | Leapp で修復計画を実行します。 | Actions::RemoteExecution::RunHostJob |
| Actions Remote Execution Run Host Job Leapp Upgrade Succeeded | RHEL7 ホストの Leapp アップグレードジョブを実行します。 | Actions::RemoteExecution::RunHostJob |
| Build Entered | ホストがビルドモードに入りました。 |
カスタムイベント: |
| Build Exited | ホストビルドモードがキャンセルされました。正常にプロビジョニングされたか、ユーザーが手動でビルドをキャンセルしました。 |
カスタムイベント: |
| Content View Created/Updated/Destroyed | コンテンツビューでの一般的なデータベース操作。 | Katello::ContentView |
| Domain Created/Updated/Destroyed | ドメインでの一般的なデータベース操作。 | ドメイン |
| Host Created/Updated/Destroyed | ホストでの一般的なデータベース操作。 | Host |
| Hostgroup Created/Updated/Destroyed | ホストグループでの一般的なデータベース操作。 | Hostgroup |
| Model Created/Updated/Destroyed | モデルに対する一般的なデータベース操作。 | Model |
| Status Changed | ホストのグローバルホストステータスが変更されました。 |
カスタムイベント: |
| Subnet Created/Updated/Destroyed | サブネットでの一般的なデータベース操作。 | Subnet |
| Template Render Performed | レポートテンプレートがレンダリングされました。 | Template |
| User Created/Updated/Destroyed | ユーザーに対する一般的なデータベース操作。 | User |
19.4. シェルフック リンクのコピーリンクがクリップボードにコピーされました!
Webhook では、1 つの Satellite イベントを 1 つの API 呼び出しにのみマッピングできます。1 つのシェルスクリプトに複数のコマンドを含めることができる高度なインテグレーションの場合は、REST HTTP API を使用して実行可能ファイルを公開する Capsule シェルフックプラグインをインストールできます。
その後、Capsule API に接続して事前定義されたシェルフックを実行するように Webhook を設定できます。シェルフックは、実行可能であれば任意の言語で記述できる実行可能スクリプトです。たとえば、シェルフックにはコマンドや編集ファイルを含めることができます。
実行可能スクリプトは、名前に英数字とアンダースコアのみを使用して /var/lib/foreman-proxy/shellhooks に配置する必要があります。
Webhook ペイロードを通じてシェルフックスクリプトに入力を渡すことができます。この入力はシェルフックスクリプトの標準入力にリダイレクトされます。X-Shellhook-Arg-1 ~ X-Shellhook-Arg-99 形式の HTTP ヘッダーを使用して、シェルフックスクリプトに引数を渡すことができます。シェルフックスクリプトに引数を渡す方法は、次を参照してください。
HTTP メソッドは POST である必要があります。URL の例は、https://capsule.example.com:9090/shellhook/My_Script のようになります。
shellhooks ディレクトリーとは異なり、URL を有効にするには、URL に単数形の /shellhook/ が含まれている必要があります。
呼び出しを承認できるようにするには、シェルフックに接続されている Webhook ごとに Capsule Authorization を有効にする必要があります。
標準出力と標準エラー出力は、それぞれデバッグレベルまたは警告レベルのメッセージとして Capsule ログにリダイレクトされます。
シェルフックの HTTPS 呼び出しは値を返しません。
シェルフックスクリプトの作成例は、「引数を出力するシェルフックの作成」 を参照してください。
19.5. shellhooks プラグインのインストール リンクのコピーリンクがクリップボードにコピーされました!
必要に応じて、シェルフックに使用される各 Capsule に shellhooks プラグインをインストールして有効にすることができます。
手順
以下のコマンドを実行します。
# satellite-installer --enable-foreman-proxy-plugin-shellhooks
19.6. Webhook を使用してシェルフックスクリプトに引数を渡す リンクのコピーリンクがクリップボードにコピーされました!
Webhook を使用してシェルフックスクリプトに引数を渡すには、以下の手順を使用します。
手順
Webhook を作成するときは、Additional タブで、次の形式の HTTP ヘッダーを作成します。
{ "X-Shellhook-Arg-1": "VALUE", "X-Shellhook-Arg-2": "VALUE" }ヘッダーが有効な JSON または ERB 形式であることを確認してください。データベース ID、名前、ラベルなど、改行や引用符を含まない安全なフィールドのみを渡します。
詳細は、「Webhook の作成」 を参照してください。
例
{
"X-Shellhook-Arg-1": "<%= @object.content_view_version_id %>",
"X-Shellhook-Arg-2": "<%= @object.content_view_name %>"
}
19.7. curl を使用してシェルフックスクリプトに引数を渡す リンクのコピーリンクがクリップボードにコピーされました!
curl でシェルフックスクリプト引数を渡すには、以下の手順を使用します。
手順
curlを使用してシェルフックスクリプトを実行する場合は、次の形式で HTTP ヘッダーを作成します。"X-Shellhook-Arg-1: VALUE" "X-Shellhook-Arg-2: VALUE"
例
$ curl \
--data "" \
--header "Content-Type: text/plain" \
--header "X-Shellhook-Arg-1: Version 1.0" \
--header "X-Shellhook-Arg-2: My content view" \
--request POST \
--show-error \
--silent \
https://capsule.example.com:9090/shellhook/My_Script
19.8. 引数を出力するシェルフックの作成 リンクのコピーリンクがクリップボードにコピーされました!
リモート実行ジョブの実行時に Hello World! を出力する単純なシェルフックスクリプトを作成します。
前提条件
webhooks および shellhooks プラグインがインストールされている。詳細は以下を参照してください。
手順
/var/lib/foreman-proxy/shellhooks/print_argsスクリプトを変更して、引数を標準エラーに出力し、Capsule ログで確認できるようにします。#!/bin/sh # # Prints all arguments to stderr # echo "$@" >&2- Satellite Web UI で、Administer > Webhook > Webhooks に移動します。
- Create new をクリックします。
- Subscribe to リストから、Actions Remote Execution Run Host Job Succeeded を選択します。
- Webhook の Name を入力します。
Target URL フィールドに、Capsule Server の URL に続けて
:9090/shellhook/print_argsと入力します。https://capsule.example.com:9090/shellhook/print_argsShellhooksディレクトリーとは異なり、URL 内のShellhookは単数形であることに注意してください。- Template リストから Empty Payload を選択します。
- Credentials タブで、Capsule Authorization をチェックします。
Additional タブの Optional HTTP headers フィールドに次のテキストを入力します。
{ "X-Shellhook-Arg-1": "Hello", "X-Shellhook-Arg-2": "World!" }- Submit をクリックします。これで、"Hello World!" を出力するシェルフックが正常に作成され、リモート実行ジョブが成功するたびに、Capsule ログに記録されます。
検証
-
任意のホストでリモート実行ジョブを実行します。
timeをコマンドとして使用できます。詳細は、ホストの管理 の リモートジョブの実行 を参照してください。 シェルフックスクリプトがトリガーされ、"Hello World!" が Capsule Server ログへ出力されたことを確認します。
# tail /var/log/foreman-proxy/proxy.logログの最後に次の行が表示されているはずです。
[I] Started POST /shellhook/print_args [I] Finished POST /shellhook/print_args with 200 (0.33 ms) [I] [3520] Started task /var/lib/foreman-proxy/shellhooks/print_args\ Hello\ World\! [W] [3520] Hello World!
第20章 検索およびブックマーク機能 リンクのコピーリンクがクリップボードにコピーされました!
Satellite は、Satellite web UI のほとんどのページで強力な検索機能を備えています。この機能によって Satellite が管理するあらゆる種類のリソースを検索できます。検索では、入力予測を使用して構築できるフリーテキストと構文ベースのクエリーの両方が受け入れられます。検索クエリーは今後の再利用に備えてブックマークとして保存することができます。
20.1. 検索クエリーの構築 リンクのコピーリンクがクリップボードにコピーされました!
検索クエリーの入力を開始すると、現在のクエリーを補完する有効なオプションのリストが表示されます。一覧からオプションを選択するか、補完機能を使用してクエリーを構築するか、入力を継続するかのいずれかのオプションを選択できます。検索エンジンがフリーテキストを解釈する方法は、「フリーテキスト検索の使用」 を参照してください。
20.1.1. クエリーの構文 リンクのコピーリンクがクリップボードにコピーされました!
parameter operator value
検索に利用できるフィールド、リソースおよびクエリーが解釈される方法はコンテキスト、つまり検索を実行するページによって異なります。たとえば、ホストページの "hostgroup" フィールドはホストグループページの "name" フィールドに相当します。またフィールドのタイプにより、利用可能な演算子および許可される値が決まります。
20.1.2. クエリーの演算子 リンクのコピーリンクがクリップボードにコピーされました!
パラメーター と 値 の間で使用できるすべての演算子を次の表に示します。予測に基づいて構築されるクエリーで表示される可能性のある他の記号および特殊文字 (コロンなど) には特別な意味がなく、フリーテキストとして処理されます。
| 演算子 | ショートネーム | 説明 | 例 |
|---|---|---|---|
| = | EQUALS | 数値、時間的な値、またはテキストの値を受け入れます。テキストの場合、大文字と小文字が区別された完全一致が返されます。 |
|
| != | NOT EQUALS | ||
| ~ | LIKE | テキストの値または時間的な値を受け入れます。大文字と小文字を区別しない一致を返します。1 文字の場合の _、ゼロを含む任意の数の文字の場合の % または * などのワイルドカードを受け入れます。ワイルドカードが指定されない場合、文字列はワイルドカードで囲まれている場合の様に処理されます (例: %rhel7%)。 |
|
| !~ | NOT LIKE | ||
| > | GREATER THAN | 数値または時間的な値を受け入れます。時間的な値の場合、演算子 > is は "later than" (次の日付より後) として、< は "earlier than" (次の日付より前) として解釈されます。どちらの演算子も EQUALS: >= <= と組み合わせることができます。 |
|
| < | LESS THAN | ||
| ^ | IN | SQL の場合と同様に、値のリストに対して式を比較します。値が含まれる一致または値の含まれない一致をそれぞれ返します。 |
|
| !^ | NOT IN | ||
| HAS or set? |
| 存在する値、または存在しない値をそれぞれ返します。 |
|
| NOT HAS or null? |
|
記述された構文に従う単純なクエリーを組み合わせて、論理演算子の AND、OR および NOT を使用してより複雑なクエリーにすることができます。演算子の代替表記も使用できます。
| 演算子 | 代替表記 | 例 | ||
|---|---|---|---|---|
| and | & | && | <空白文字> |
|
| or | | | || |
|
|
| not | – | ! |
|
|
20.1.3. クエリー値 リンクのコピーリンクがクリップボードにコピーされました!
- テキストの値
空白文字を含むテキストは引用符で囲む必要があります。囲まないと、空白文字は AND 演算子として解釈されます。
例:
hostgroup = "Web servers"検索は、"Web servers" という名前の割り当て済みのホストグループとともにホストを返します。
hostgroup = Web servers検索は、%servers% に一致するフィールドを持つホストグループ Web のホストを返します。
- 時間の値
以下を含め、数多くの日付/時刻形式を使用できます。
- "10 January 2017"
- "10 Jan 2017"
- 10-January-2017
- 10/January/2017
- "January 10, 2017"
- Today、Yesterday など。
02/10/2017 または 10-02-2017 などのあいまいな日付形式を使用しないようにしてください。
20.2. フリーテキスト検索の使用 リンクのコピーリンクがクリップボードにコピーされました!
フリーテキストを入力する際、複数のフィールドにまたがって検索が実行されます。たとえば、"64" と入力する場合、検索は名前、IP アドレス、MAC アドレスおよびアーキテクチャーにこの数字が含まれるすべてのホストを返します。
複数の語句からなるクエリーは引用符で囲む必要があります。囲まないと、空白文字は AND 演算子として解釈されます。
検索はすべてのフィールドで実行されるため、フリーテキストの検索結果は非常に正確になりますが、多数のホストで実行する場合などには検索スピードが遅くなる可能性があります。このため、可能な限りフリーテキストを使用せず、より具体的で、構文ベースのクエリーを使用することが推奨されます。
20.3. ブックマークの管理 リンクのコピーリンクがクリップボードにコピーされました!
検索クエリーをブックマークとして保存し、再利用することもできます。ブックマークは削除したり、変更したりすることもできます。
ブックマークは、作成されたページでのみ表示されます。一部のページには、すべての active または disabled ホストなど、一般的な検索で使用可能なデフォルトのブックマークがあります。
20.3.1. ブックマークの作成 リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、検索クエリーをブックマークとして保存する方法を説明します。関連ページ用の検索クエリーのブックマークは、作成したそのページで保存する必要があります。たとえば、ホスト関連の検索クエリーは、ホストページで保存します。
手順
- Satellite web UI で、ブックマークを作成するページに移動します。
- 検索 フィールドに保存する検索クエリーを入力します。
- 検索 ボタンの右側にある矢印を選択し、この検索をブックマーク を選択します。
- 名前 フィールドに新規ブックマークの名前を入力します。
- 検索クエリー フィールドに正しい検索クエリーがあることを確認します。
公開 チェックボックスの設定を確認します。
- 公開 にチェックを入れると、ブックマークが公開されて全ユーザーに見えるようになります。
- 公開 のチェックを外すと、ブックマークが非公開となり、作成したユーザーのみに見えるようになります。
- Submit をクリックします。
作成されたことを確認するには、Search ボタンの右側にある矢印を選択してブックマークリストを表示するか、Administer > Bookmarks に移動してから、ブックマークの名前を Bookmarks リストで確認します。
20.3.2. ブックマークの削除 リンクのコピーリンクがクリップボードにコピーされました!
ブックマークは、ブックマークページで削除できます。
手順
- Satellite web UI で、Administer > Bookmarks に移動します。
- ブックマークページで、削除するブックマークの 削除 をクリックします。
- 確認ウィンドウが表示されたら、OK をクリックして削除を確認します。
削除されたことを確認するには、ブックマークの名前がないことを ブックマーク リストで確認します。
20.4. キーボードショートカットの使用 リンクのコピーリンクがクリップボードにコピーされました!
キーボードショートカットを使用すると、検索バーにすばやくフォーカスを移動することができます。
-
垂直ナビゲーションの検索バーにフォーカスを移動するには、
Ctrl + Shift + Fを押します。 -
ページの検索バーにフォーカスを移動するには、
/を押します。
付録A Satellite Server または Capsule Server のベースオペレーティングシステム上のパッケージを管理する リンクのコピーリンクがクリップボードにコピーされました!
Satellite には、Satellite Server または Capsule Server のベースオペレーティングシステムでパッケージをインストールおよび更新するための satellite-maintain packages コマンドが含まれています。
dnf を使用した個々のパッケージのインストールおよび更新はデフォルトでロックされており、サポートされていません。Satellite には、ロックを回避し、dnf でパッケージ管理を有効にする satellite-maintain packages unlock コマンドが含まれていますが、これを使用すると、設定の不整合が発生し、システムの安定性が損なわれる可能性があります。パッケージのインストールおよび更新には必ず satellite-maintain packages を使用してください。
ベースオペレーティングシステムでのパッケージのインストールまたは更新後に、satellite-installer を実行する必要があります。satellite-maintain packages コマンドは、パッケージをインストールまたは更新した後に satellite-installer を自動的に実行します。パッケージの影響を受けるサービス設定の更新時に、satellite-installer を実行すると、サービスが再起動される可能性があることに注意してください。
| サブコマンド | 説明 |
|---|---|
| Satellite Server または Capsule Server にパッケージをインストールします。 |
| Satellite Server または Capsule Server で利用可能なパッケージの更新を確認します。 |
| Satellite Server または Capsule Server ですべてのパッケージを更新します。 |
| Satellite Server または Capsule Server で特定のパッケージを更新します。 |
|
ユーザーによる |
関連情報
- Satellite を次のパッチバージョンに更新する方法は、Red Hat Satellite の更新 を参照してください。
-
satellite-maintain packagesの使用に関する完全なリファレンスには、satellite-maintain packages --helpを実行してヘルプの内容を参照してください。
付録B 管理設定 リンクのコピーリンクがクリップボードにコピーされました!
このセクションには、Satellite Web UI で Administer > Settings に移動して編集できる設定に関する情報が含まれています。
B.1. 一般設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| 管理者のメールアドレス | デフォルトの管理者の電子メールアドレス | |
| Satellite URL | Satellite インスタンスに到達可能な URL。Provisioning > Unattended URL も参照してください。 | |
| 1 ページあたりのエントリー | 20 | Satellite のページごとに表示されるレコードの数 |
| DB キャッシュの修正 | No |
Satellite は、パーミッションとロールのキャッシュを保持します。これを |
| DB 保留シード | No |
|
| Capsule リクエストのタイムアウト | 60 | Satellite から Capsule への HTTP リクエストのオープンおよび読み取りタイムアウト (秒単位)。 |
| ログインページのフッターテキスト | ログインページのフッターに表示されるテキスト。 | |
| HTTP(S) プロキシー | Satellite 製品からの発信 HTTP(S) 接続のプロキシーを設定します。システム全体のプロキシーは、オペレーティングシステムレベルで設定する必要があります。 | |
| ホストを除く HTTP(S) プロキシー | [] | リクエストのプロキシーとならないホスト名を設定します。ローカルホストへのリクエストはデフォルトで除外されます。 |
| Experimental Labs を表示する | No | Experimental Lab の機能にアクセスするためのメニューを表示するかどうか (ページのリロードが必要)。 |
| Display FQDN for hosts | Yes |
|
| Out of sync interval | 30 |
ホストは定期的にレポートを実行します。レポート間の時間がこの期間 (分単位) を超えると、ホストは同期していないと見なされます。ホストごとに、Hosts > All hosts > $host > Edit > Parameters > Add Parameter の追加で |
| Satellite UUID | Satellite インスタンス ID。Satellite インスタンスを一意に識別します。 | |
| デフォルトの言語 | 新規ユーザーの UI はこの言語を使用します。 | |
| デフォルトのタイムゾーン | 新規ユーザーに使用するタイムゾーン。 | |
| インスタンスのタイトル | インスタンスのタイトルは上部のナビゲーションバーに表示されます (ページの再読み込みが必要です)。 | |
| 保存された監査間隔 | 監査データを保持するための日数。監査のクリーンアップを無効にするには、空のままにします。 | |
| 新しいホストの詳細 UI | Yes | Satellite は、ホストの詳細に新しい UI をロードします。 |
B.2. Satellite タスク設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| 同期タスクのタイムアウト | 120 | 例外が発生する前に同期タスクが終了するのを待機する秒数。 |
| dynflow コンソールを有効にする | Yes |
デバッグ用に dynflow コンソール ( |
| dynflow コンソールに認証が必要 | Yes | ユーザーは、dynflow コンソールにアクセスする前に、管理者権限を持っていることを認証する必要があります。 |
| Capsule アクションの再試行回数 | 4 | 失敗する前に Capsule でタスクを開始するために許可された試行回数。 |
| Capsule アクションの再試行間隔 | 15 | 再試行間の秒単位の時間。 |
| Capsule バッチタスクを許可する | Yes | Capsule でタスクのバッチトリガーを有効にします。 |
| Capsule タスクのバッチサイズ | 100 |
|
| タスクのトラブルシューティング URL |
タスクのトラブルシューティングドキュメントを指す URL。正規化されたタスクラベル (英数字のみに制限) に置き換えられる | |
| ポーリング間隔乗数 | 1 | デフォルトのポーリング間隔を乗算するために使用されるポーリング乗数。これを使用して、長時間実行されるタスクで頻繁にポーリングするのを防ぐことができます。 |
B.3. テンプレート同期設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| 関連付け | New | テンプレートをオペレーティングシステム、組織、ロケーションに関連付けます。 |
| ブランチ | Git リポジトリーのデフォルトのブランチ。 | |
| メッセージのコミット | Satellite ユーザーが作成したテンプレートのエクスポート | エクスポートされたテンプレートのカスタムコミットメッセージ。 |
| ディレクトリー名 | / | テンプレートを含む Git リポジトリー内のディレクトリー。 |
| フィルター | この正規表現に一致する名前のインポートまたはエクスポート。大文字小文字を区別しません。スニペットはフィルタリングされません。 | |
| 強制インポート | No |
|
| HTTP プロキシーポリシー | グローバルデフォルト HTTP プロキシー | テンプレートを同期するために HTTP プロキシーを使用するかどうか。
|
| テンプレートのロック | 保持し、新しいものをロックしないでください | インポートされたテンプレートのロックを処理する方法。 |
| メタデータエクスポートモード | 更新 | デフォルトのメタデータエクスポートモード。 可能なオプション:
|
| 否定 | No | インポートまたはエクスポート用にフィルターを無効にします。 |
| Prefix | インポートされたテンプレートに接頭辞として追加された文字列。 | |
| リポジトリー | テンプレートをインポートまたはエクスポートする場所からのターゲットパス。たとえば、さまざまなプロトコルを使用できます。
| |
| 詳細度 | No | テンプレートをインポートする Rake タスクの冗長性を選択します。 |
B.4. 検出設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| ディスカバリーロケーション | 検出されたホストを配置するデフォルトのロケーションを示します。 | |
| ディスカバリー組織 | 検出されたホストが追加されるデフォルトの組織を示します。 | |
| インターフェイスのファクト | discovery_bootif | プライマリーインターフェイスの検出に使用するファクト名。 |
| ボンドインターフェイスを作成する | No | LLDP を使用して同じ VLAN で別のインターフェイスが検出された場合、ボンドインターフェイスを自動的に作成します。 |
| すべてのファクトをクリーンアップする | No | プロビジョニング中に、報告されたすべてのファクト (検出ファクトを除く) をクリーンアップします。 |
| ホスト名のファクト | discovery_bootif | ホスト名に使用するファクトのリスト (コンマ区切り、最初の勝利)。 |
| 自動プロビジョニング | No | プロビジョニングルールを使用して、新しく検出されたホストを自動的にプロビジョニングします。 |
| 再起動 | Yes | プロビジョニング中に自動的に再起動するか、kexec が検出したホスト。 |
| ホスト名接頭辞 | mac | ホスト名に使用するデフォルトの接頭辞。文字で始める必要があります。 |
| ファクト列 | ホストリストに表示する追加のファクト列 (コンマ区切り)。 | |
| ハイライトされたファクト |
ハイライトセクションのファクトを整理するための正規表現 - 例: | |
| ストレージのファクト | ストレージセクションのファクトを整理するための正規表現。 | |
| ソフトウェアのファクト | ソフトウェアセクションのファクトを整理するための正規表現。 | |
| ハードウェアのファクト | ハードウェアセクションのファクトを整理するための正規表現。 | |
| ネットワークのファクト | ネットワークセクションのファクトを整理するための正規表現。 | |
| IPMI のファクト | インテリジェントプラットフォーム管理インターフェイス (IPMI) セクションのファクトを整理するための正規表現。 | |
| PXE をロックする | No | Preboot Execution Environment (PXE) 設定を自動的に生成して、新しく検出されたホストを検出に固定します。 |
| ロックされた PXELinux テンプレート名 | pxelinux_discovery | ホストを検出に固定するときに使用される PXELinux テンプレート。 |
| ロックされた PXEGrub テンプレート名 | pxegrub_discovery | ホストを検出に固定するときに使用される PXEGrub テンプレート。 |
| ロックされた PXEGrub2 テンプレート名 | pxegrub2_discovery | ホストを検出に固定するときに使用される PXEGrub2 テンプレート。 |
| DNS を強制する | Yes | 検出されたホストをプロビジョニングするときに、DNS エントリーの作成を強制します。 |
| 既存の NIC で発生したエラー | No | プロビジョニング ネットワークインターフェイスカード (NIC) の MAC に一致する既存のホストの検出を許可しません (早期にエラーが発生します)。 |
| 名前ジェネレーターのタイプ | ファクト + 接頭辞 | 検出ホスト名の命名パターン。 |
| Prefer IPv6 | No | 検出されたノードを呼び出すときは、IPv4 よりも IPv6 を優先します。 |
B.5. ブートディスク設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| iPXE ディレクトリー |
| iPXE イメージを含むディレクトリーへのパス。 |
| ISOLINUX ディレクトリー |
| ISOLINUX イメージを含むディレクトリーへのパス。 |
| SYSLINUX ディレクトリー |
| SYSLINUX イメージを含むディレクトリーへのパス。 |
| Grub2 ディレクトリー |
|
|
| ホストイメージテンプレート | ブートディスク iPXE- ホスト | ホスト固有のブートディスクに使用する iPXE テンプレート。 |
| 一般的なイメージテンプレート | ブートディスク iPXE- 汎用ホスト | 汎用ホストブートディスクに使用する iPXE テンプレート。 |
| 汎用 Grub2 EFI イメージテンプレート | ブートディスク Grub2 EFI- 汎用ホスト | 汎用 Extensible Firmware Interface (EFI) ホストブートディスクに使用する Grub2 テンプレート。 |
| ISO 生成コマンド | genisoimage |
ISO イメージを生成するコマンド |
| インストールメディアのキャッシュ | Yes | インストールメディアファイルは、完全なホストイメージ用にキャッシュされます。 |
| 許可されるブートディスクの種類 | [generic, host, full_host, subnet] | 許可されているブートディスクタイプのリスト。無効にするには空白のままにします。 |
B.6. Red Hat クラウド設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| 自動インベントリーアップロード | Yes | ホストインベントリーの Red Hat クラウドへの自動アップロードを有効にします。 |
| 推奨事項を自動的に同期する | No | Red Hat クラウドからの Insights 推奨事項の自動同期を有効にします。 |
| ホスト名の難読化 | No | Red Hat クラウドに送信されたホスト名を難読化します。 |
| ホストの ipv4 アドレスの難読化 | No | Red Hat クラウドに送信された IPv4 アドレスを難読化します。 |
| RHC デーモンの ID | ***** | RHC デーモン ID。 |
B.7. コンテンツ設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| デフォルトの HTTP プロキシー | コンテンツを同期するためのデフォルトの HTTP プロキシー。 | |
| デフォルトの同期 OS プロビジョニングテンプレート | Kickstart default | 同期されたコンテンツから作成されたオペレーティングシステムのデフォルトのプロビジョニングテンプレート。 |
| デフォルトの同期 OS 終了テンプレート | キックスタートデフォルトフィニッシュ | 同期されたコンテンツから作成された新しいオペレーティングシステムのデフォルトの仕上げテンプレート。 |
| デフォルトの同期された OS ユーザーデータ | デフォルトのユーザーデータをキックスタート | 同期されたコンテンツから作成された新しいオペレーティングシステムのデフォルトのユーザーデータ。 |
| デフォルトの同期 OS PXELinux テンプレート | デフォルトの PXELinux をキックスタート | 同期されたコンテンツから作成された新しいオペレーティングシステム用のデフォルトの PXELinux テンプレート。 |
| デフォルトの同期 OS PXEGrub テンプレート | デフォルトの PXEGrub をキックスタートします | 同期されたコンテンツから作成された新しいオペレーティングシステム用のデフォルトの PXEGrub テンプレート。 |
| デフォルトの同期 OS PXEGrub2 テンプレート | デフォルトの PXEGrub2 をキックスタートします | 同期されたコンテンツから作成された新しいオペレーティングシステム用のデフォルトの PXEGrub2 テンプレート。 |
| デフォルトの同期された OS iPXE テンプレート | キックスタートのデフォルトの iPXE | 同期されたコンテンツから作成された新しいオペレーティングシステム用のデフォルトの iPXE テンプレート。 |
| デフォルトの同期 OS パーティションテーブル | Kickstart default | 同期されたコンテンツから作成された新しいオペレーティングシステムのデフォルトのパーティションテーブル。 |
| デフォルトの同期 OS kexec テンプレート | Discovery Red Hat kexec | 同期されたコンテンツから作成された新しいオペレーティングシステムのデフォルトの kexec テンプレート。 |
| デフォルトの同期された OS アトミックテンプレート | アトミックキックスタートのデフォルト | 同期されたコンテンツから作成された新しいアトミックオペレーティングシステムのデフォルトのプロビジョニングテンプレート。 |
| マニフェストリフレッシュタイムアウト | 1200 | マニフェストを更新するときのタイムアウト (秒単位)。 |
| サブスクリプション接続が有効 | Yes | サブスクリプションのために Red Hat ポータルと通信できます。 |
| コンテンツビューからインストール可能なエラータ | No | ホストのコンテンツビューとライフサイクル環境のエラータのみに基づいて、エラータホストのステータスを計算します。 |
| 複合コンテンツビューのプロモーションを制限する | No | これが有効になっている場合は、複合コンテンツビューに含まれるコンテンツビューのバージョンがターゲット環境に存在しない限り、複合コンテンツビューを公開またはプロモートすることはできません。 |
| アクションの前にサービスを確認してください | Yes | アクションを実行する前に、pulp や candlepin などのバックエンドサービスのステータスを確認しますか ? |
| リポジトリーを同期するためのバッチサイズ | 100 | Capsule で同時に同期する必要があるリポジトリーの数。数値が小さいほど、同期時間が長くなる可能性があります。数値を大きくすると、dynflow の負荷が増加します。 |
| コンテンツビュープロモーション後に Capsules を同期する | Yes | コンテンツビューのプロモート後に Capsule を自動同期するかどうか。 |
| デフォルトのカスタムリポジトリーダウンロードポリシー |
|
カスタムリポジトリーのデフォルトのダウンロードポリシー。 |
| デフォルトの Red Hat リポジトリーダウンロードポリシー |
|
有効な Red Hat リポジトリーのデフォルトのダウンロードポリシー。 |
| デフォルトの Capsule ダウンロードポリシー |
|
Capsule 同期のデフォルトのダウンロードポリシー。 |
| Pulp のエクスポート先ファイルパス |
| エクスポートされたリポジトリーのディスク上のロケーション。 |
| Pulp 3 のエクスポート先ファイルパス |
| Pulp 3 のエクスポートされたリポジトリーのディスク上のロケーション。 |
| Pulp クライアントキー |
| Pulp サーバー認証に使用される SSL キーのパス。 |
| Pulp クライアント証明書 |
| Pulp サーバー認証に使用される SSL 証明書のパス。 |
| 同期接続タイムアウト | 300 | 同期時の接続の合計タイムアウト (秒単位)。 |
| 登録解除時にホストを削除 | No | subscription-manager を使用してホストの登録を解除する場合は、ホストレコードも削除してください。仮想マシンや DNS レコードなど、ホストにリンクされているマネージドリソースも削除される可能性があります。 |
| サブスクリプションマネージャー名登録ファクト |
subscription-manager を使用してホストを登録する場合は、ホスト名に指定されたファクトを強制的に使用します ( | |
| サブスクリプションマネージャー名登録ファクト strict マッチ | No |
これが有効で、 |
| デフォルトのロケーションサブスクライブされたホスト | デフォルトのロケーション | 登録後に新しいサブスクライブされたホストが保存されるデフォルトのロケーション。 |
| すぐに期限切れ | 120 | サブスクリプションの更新が通知されるまでのサブスクリプションの残り日数。 |
| コンテンツビューの依存関係を解決するデフォルト | No | 新しいコンテンツビューのデフォルトの依存関係解決値。 |
| 重複する DMI UUID をホストする | [] | デスクトップ管理インターフェイス (DMI)UUID が重複しているためにホストが登録に失敗した場合は、ここにコンマ区切りの値を追加します。後続の登録により、影響を受けるホストに対して一意の DMI UUID が生成されます。 |
| ホストプロファイルを想定 | Yes | 登録 DMI UUID が別のホストによって使用されていない限り、新しいホスト登録を有効にして、ホスト名が一致する登録済みプロファイルを想定します。 |
| ビルドでホストプロファイルを変更できる | No | ホストがビルドモードの場合、ホスト登録を有効にして ホストプロファイルの想定 をバイパスします。 |
| ホストはビルドでのみ再登録できます | No | ホストがビルドモードの場合にのみ、ホストが再登録できるようにします。 |
| ホストタスクワーカーのプールサイズ | 5 | ホスト関連タスクの実行を処理するためのプール内のワーカーの数。0 に設定すると、デフォルトのキューが使用されます。dynflowd/foreman-tasks サービスの再起動が必要です。 |
| 適用性バッチサイズ | 50 | タスクごとに処理するホスト適用性計算の数。 |
| Autosearch | Yes | それをサポートするページの場合、検索入力を入力しながら自動的に検索を実行します。 |
| 自動検索の遅延 | 500 | 自動検索が有効になっている場合は、入力中に検索を実行する前にミリ秒単位で遅延します。 |
| Pulp バルクロードサイズ | 2000 | 1 ページの Pulp API 呼び出しからフェッチされたアイテムの数。 |
| Dynflow なしでプロファイルをアップロードする | Yes | Katello を有効にして、ホストがインストールしたパッケージ、有効なリポジトリー、およびモジュールインベントリーを、Dynflow タスクでラップするのではなく、直接更新できるようにします (Puma プロセスが大量のメモリーを使用している場合はオフにしてみてください)。 |
| 孤立したコンテンツの保護時間 | 1440 | 孤立したコンテンツを孤立していると見なす時間 (分単位)。 |
| リモート実行のために Capsule を介して登録することを推奨します | No | リモート実行を使用する場合は、ホストが登録されているプロキシーを使用することを推奨します。 |
| 公開されたコンテンツビューのリポジトリーの削除を許可する | Yes | ユーザーが以前に 1 つ以上のコンテンツビューバージョンで公開したリポジトリーの削除を有効にします。 |
B.8. 認証設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| OAuth がアクティブ | Yes | Satellite は API 認証に OAuth を使用します。 |
| OAuth コンシューマーキー | ***** | OAuth コンシューマーキー。 |
| OAuth コンシューマーシークレット | ***** | OAuth コンシューマーシークレット。 |
| OAuth マップユーザー | No | Satellite は、リクエストヘッダーのユーザー名でユーザーをマッピングします。これが無効になっている場合、OAuth リクエストには管理者権限があります。 |
| ログイン試行の失敗制限 | 30 | Satellite は、指定された回数のログイン試行の失敗後 5 分間、受信 IP アドレスからのユーザーログインをブロックします。ブルートフォース保護を無効にするには、0 に設定します。 |
| 登録された Capsules を制限する | Yes | 既知の Capsules のみが、Capsules 認証を使用する機能にアクセスできます。 |
| Capsules には SSL が必要 | Yes |
クライアント SSL 証明書は、Capsules を識別するために使用されます ( |
| 信頼できるホスト | [] | ファクト/レポートインポーターおよび ENC 出力にアクセスするための Capsules に加えて、信頼されるホスト名、IPv4、IPv6 アドレス、またはサブネットのリスト。 |
| SSL 証明書 |
| Satellite がプロキシーとの通信に使用する SSL 証明書パス。 |
| SSL CA ファイル |
| Satellite がプロキシーとの通信に使用する SSL CA ファイルパス。 |
| SSL 秘密鍵 |
| Satellite がプロキシーとの通信に使用する SSL 秘密鍵パス。 |
| SSL クライアント DN 環境 | HTTP_SSL_CLIENT_S_DN | クライアント SSL 証明書からのサブジェクト DN を含む環境変数。 |
| SSL クライアント検証環境 | HTTP_SSL_CLIENT_VERIFY | クライアント SSL 証明書の検証ステータスを含む環境変数。 |
| SSL クライアント証明書環境 | HTTP_SSL_CLIENT_CERT | クライアントの SSL 証明書を含む環境変数。 |
| サーバー CA ファイル | Satellite への接続を確認するためにテンプレートで使用される SSL CA ファイルパス。 | |
| Websocket SSL キー |
| Satellite が websocket を暗号化するために使用する秘密鍵ファイルのパス。 |
| Websocket SSL 証明書 |
| Satellite が websocket を暗号化するために使用する証明書パス。 |
| Websocket の暗号化 | Yes |
VNC/SPICE websocket プロキシーコンソールアクセス暗号化 ( |
| ログイン委譲ログアウト URL | ログアウト時にユーザーをこの URL にリダイレクトします。ログイン委譲の承認 も有効にします。 | |
| ログイン委譲認証ソースユーザーの自動作成を承認します | 外部 | 不明な外部認証ユーザー (ログイン委譲の承認 を参照) が作成される外部認証ソースの名前。空は自動作成がないことを意味します。 |
| ログイン委譲を承認する | No |
|
| ログイン委譲 API を承認する | No |
API 呼び出しに対しても、 |
| アイドルタイムアウト | 60 | 指定した分数が経過したら、アイドル状態のユーザーをログアウトします。 |
| BCrypt パスワードのコスト | 9 | 内部認証ソースの bcrypt パスワードハッシュ関数のコスト値 (4-30)。値が大きいほど安全ですが、特にステートレス API 呼び出しと UI ログインの場合、検証は遅くなります。既存のパスワードに影響を与えるには、パスワードの変更が必要です。 |
| BMC クレデンシャルアクセス | Yes | ENC YAML 出力およびテンプレートでの BMC インターフェイスパスワードへのアクセスを許可します。 |
| OIDC JWKs URL |
OpenID Connect JSON Web Key Set (JWKS) の URL。Keycloak を OpenID プロバイダーとして使用する場合、通常は | |
| OIDC Audience | [] | 認証に使用されている OpenID Connect Audience の名前。Keycloak の場合、これはクライアント ID です。 |
| OIDC Issuer |
issuer claim は、JSON Web トークン (JWT) を発行したプリンシパルを識別します。これは、ほとんどの OpenID プロバイダーの場合は | |
| OIDC Algorithm | OpenID プロバイダーで JWT をエンコードするために使用されるアルゴリズム。 |
B.9. メール設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| メール返信アドレス | Satellite が送信している電子メールの電子メール返信アドレス。 | |
| メールの件名の接頭辞 | すべての送信メールに追加する接頭辞。 | |
| ウェルカムメールを送信する | No | 新しいユーザーにユーザー名と URL を含むウェルカムメールを送信します。 |
| 配信方法 | Sendmail | 電子メールの配信に使用される方法。 |
| SMTP enable StartTLS auto | Yes | SMTP は自動的に StartTLS を有効にします。 |
| SMTP OpenSSL 検証モード | デフォルトの検証モード | TLS を使用する場合、OpenSSL が証明書をチェックする方法を設定できます。 |
| SMTP アドレス | 接続する SMTP アドレス。 | |
| SMTP ポート | 25 | 接続する SMTP ポート。 |
| SMTP HELO/EHLO ドメイン | HELO/EHLO ドメイン。 | |
| SMTP ユーザー名 | 必要に応じて、認証に使用するユーザー名。 | |
| SMTP パスワード | ***** | 必要に応じて、認証に使用するパスワード。 |
| SMTP 認証 | none | 必要に応じて、認証タイプを指定します。 |
| Sendmail の引数 | -i | sendmail に追加のオプションを指定します。配信方法が sendmail に設定されている場合にのみ使用されます。 |
| Sendmail のロケーション |
| sendmail 実行可能ファイルのロケーション。配信方法が sendmail に設定されている場合にのみ使用されます。 |
B.10. 通知設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| RSS を有効にする | Yes | RSS 通知をプルします。 |
| RSS URL | https://www.redhat.com/en/rss/blog/channel/red-hat-satellite | RSS 通知を取得する URL。 |
B.11. プロビジョニング設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| ホストオーナー | 空の Satellite が現在のユーザーを使用する場合、プロビジョニングされたホストのデフォルトの所有者。 | |
| root パスワード | ***** | プロビジョニングされたホストのデフォルトの暗号化されたルートパスワード。 |
| 無人 URL | ホストがビルド中にテンプレートを取得する URL。https、無人、または userdata で始まる場合、HTTP を使用してコントローラーにアクセスすることはできません。 | |
| Safemode レンダリング |
|
プロビジョニングテンプレートのセーフモードレンダリングを有効にします。デフォルトの推奨オプションである
|
| ビルドせずに無人でアクセス | No | ビルドモードを使用せずに無人 URL へのアクセスを有効にします。 |
| ローカルネームサーバーのクエリー | No | Satellite は、SOA/NS 権限ではなく、ローカルに設定されたリゾルバーにクエリーを実行します。 |
| インストールトークンの有効期間 | 360 | インストールトークンが有効である必要がある時間 (分単位)。トークンを無効にするには、0 に設定します。 |
| SSH タイムアウト | 120 | SSH プロビジョニングがタイムアウトするまでの秒単位の時間。 |
| Libvirt のデフォルトのコンソールアドレス | 0.0.0.0 | libvirt を使用して新しい仮想マシンをプロビジョニングするときに、コンソールのリッスンアドレスに使用する必要がある IP アドレス。 |
| ビルドされたリクエストから IP を更新 | No | Satellite は、ビルド要求を行った IP でホスト IP を更新します。 |
| VM には短い名前を使用します | No | Satellite は、新しい仮想マシンを作成するために FQDN の代わりに短いホスト名を使用します。 |
| DNS タイムアウト | [5, 10, 15, 20] |
|
| 失敗したデプロイメントのクリーンアップ | Yes | プロビジョニングスクリプトがゼロ以外の終了コードで終了した場合、Satellite は仮想マシンを削除します。 |
| 名前ジェネレーターのタイプ |
| 新規ホスト作成時のホスト名の生成方法を指定します。
デフォルトの
|
| デフォルトの PXE グローバルテンプレートエントリー |
グローバルテンプレートのデフォルトの PXE メニュー項目 - | |
| デフォルトの PXE ローカルテンプレートエントリー |
ローカルテンプレートのデフォルトの PXE メニュー項目 - | |
| iPXE 中間スクリプト | iPXE 中間スクリプト | 無人インストール用の中間 iPXE スクリプト。 |
| ホストの削除で関連付けられた VM の破棄 | No | ホストの削除時に関連する VM を破棄します。有効にすると、ホストにリンクされている VM がコンピューティングリソースから削除されます。無効にすると、ホストが削除されたときに VM のリンクが解除されます。つまり、VM はコンピュートリソースに残り、再関連付けしたり、Satellite に再度インポートしたりできます。これにより、VM の電源が自動的にオフになることはありません |
| 最大の構造化されたファクト | 100 |
構造化サブツリー内のキーの最大数、 |
| デフォルトのグローバル登録テンプレート | グローバル登録 | グローバル登録テンプレート。 |
| デフォルトの 'ホスト初期設定' テンプレート | Linux の host_init_config のデフォルト | デフォルトの 'ホスト初期設定' テンプレート。新しいオペレーティングシステムが作成されると自動的に割り当てられます。 |
| グローバルデフォルト PXEGrub2 テンプレート | PXEGrub2 グローバルデフォルト | グローバルデフォルト PXEGrub2 テンプレート。このテンプレートは、設定されているすべての TFTP サーバーにデプロイメントされます。アップグレードの影響を受けません。 |
| グローバルデフォルト PXELinux テンプレート | PXELinux グローバルデフォルト | グローバルデフォルト PXELinux テンプレート。このテンプレートは、設定されているすべての TFTP サーバーにデプロイメントされます。アップグレードの影響を受けません。 |
| グローバルデフォルト PXEGrub テンプレート | PXEGrub グローバルデフォルト | グローバルデフォルト PXEGrub テンプレート。このテンプレートは、設定されているすべての TFTP サーバーにデプロイメントされます。アップグレードの影響を受けません。 |
| グローバルデフォルト iPXE テンプレート | iPXE グローバルデフォルト | グローバルなデフォルトの iPXE テンプレート。このテンプレートは、設定されているすべての TFTP サーバーにデプロイメントされます。アップグレードの影響を受けません。 |
| ローカルブート PXEGrub2 テンプレート | PXEGrub2 のデフォルトのローカルブート | ローカルブートのデフォルトの PXEGrub2 として選択されているテンプレート。 |
| ローカルブート PXELinux テンプレート | PXELinux のデフォルトのローカルブート | ローカルブートの PXELinux デフォルトとして選択されているテンプレート。 |
| ローカルブート PXEGrub テンプレート | PXEGrub のデフォルトのローカルブート | ローカルブートの PXEGrub デフォルトとして選択されているテンプレート。 |
| ローカルブート iPXE テンプレート | iPXE のデフォルトのローカルブート | ローカルブートの iPXE デフォルトとして選択されているテンプレート。 |
| PuppetCA を管理する | Yes | Satellite は、新しいホストの提供時に証明書の署名を自動化します。 |
| 証明書に UUID を使用する | No | Satellite は、ホスト名の代わりにランダムな UUID を証明書の署名に使用します。 |
| サポートされていないプロビジョニングテンプレートを表示する | No | サポートされていないプロビジョニングテンプレートを表示します。有効にすると、使用可能なすべてのテンプレートが表示されます。無効にすると、Red Hat でサポートされているテンプレートのみが表示されます。 |
B.12. ファクト設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| ファクトがアップロードされたときに新しいホストを作成する | Yes | 新しいファクトが受信されると、Satellite がホストを作成します。 |
| ロケーションのファクト | satellite_location | Puppet の実行後に作成されたホストは、このファクトで指定されたロケーションに配置されます。 |
| 組織のファクト | satellite_organization | Puppet の実行後に作成されたホストは、このファクトで指定された組織に配置されます。このファクトの内容は、組織の完全なラベルである必要があります。 |
| デフォルトのロケーション | デフォルトのロケーション | ロケーションファクトを送信しなかった Puppet の実行後に作成されたホストは、このロケーションに配置されます。 |
| デフォルトの組織 | デフォルトの組織 | 組織ファクトを送信しなかった Puppet の実行後に作成されたホストは、この組織に配置されます。 |
| ファクトからホストグループを更新する | Yes | Satellite は、ホストのホストグループをそのファクトから更新します。 |
| オペレーティングシステムのファクトを無視する | No | ファクトからオペレーティングシステムを更新するのをやめます。 |
| ドメインのファクトを無視する | No | ファクトからのドメイン値の更新を停止します。 |
| ファクトからサブネットを更新する | なし | Satellite は、ホストのサブネットをそのファクトから更新します。 |
| プロビジョニングのためにインターフェイスファクトを無視する | No | ファクトからの IP および MAC アドレス値の更新を停止します (すべてのインターフェイスに影響します)。 |
| 一致する識別子を持つインターフェイスを無視 |
[ |
受信ファクトからのこれらの値に一致する識別子を持つホストネットワークインターフェイスオブジェクトの作成または更新をスキップします。*ワイルドカードを使用して、識別子をインデックスと照合できます (例: |
| Satellite に保存されているファクトの除外パターン |
[ |
インポートされたすべてのタイプのファクト (Puppet、Ansible、rhsm) のパターンを除外します。これらのファクトは Satellite データベースに保存されません。*ワイルドカードを使用して、名前をインデックスと一致させることができます。たとえば、 |
B.13. 構成管理の設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| レポートのアップロード時に新しいホストを作成する | Yes | レポートを受信すると、Satellite がホストを作成します。 |
| Matchers の継承 | Yes | Satellite マッチャーは、ホストグループ、組織、およびロケーションのスマートクラスパラメーターを評価するときに子に継承されます。 |
| デフォルトパラメータールックアップパス |
[ | Satellite は、デフォルトでホストスマートクラスパラメーターをこの順序で評価します。 |
| パラメーター内の ERB を補間します | Yes | Satellite は、ENC 出力のパラメーター値で ERB を解析します。 |
| 常に設定ステータスを表示する | No | Puppet Capsule が割り当てられていない場合でも、すべてのホストに設定ステータスが表示されます。 |
B.14. リモート実行設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| Capsule へのフォールバック | No | リモート実行を使用して、ホストでプロキシーを検索します。これは、ホストにサブネットがない場合、またはサブネットに実行プロキシーがない場合に役立ちます。 |
| グローバル Capsule の有効化 | Yes | ホストに割り当てられたプロキシーの外部でリモート実行プロキシーを検索します。検索は、ホストの組織とロケーションに限定されます。 |
| SSH ユーザー | root |
SSH に使用するデフォルトのユーザー。 |
| 実効ユーザー | root | スクリプトの実行に使用するデフォルトのユーザー。ユーザーが SSH ユーザーと異なる場合は、su または sudo を使用してユーザーを切り替えます。 |
| 実効ユーザーメソッド | sudo |
有効なユーザーに切り替えるために使用されるコマンド。[ |
| 有効なユーザーパスワード | ***** | 有効なユーザーパスワード。効果的なユーザー を参照してください。 |
| ジョブテンプレートの同期 | Yes |
|
| SSH ポート | 22 |
SSH 通信に使用するポート。デフォルトのポート 22 |
| IP での接続 | No |
ホストインターフェイスの IP アドレスが FQDN よりも優先されるかどうか。DNS が FQDN を適切に解決していない場合に役立ちます。 |
| IPv4 よりも IPv6 を優先する | No |
IP アドレスを使用して接続する場合、IPv6 アドレスが優先されますか ?IPv6 アドレスが設定されていない場合は、自動的に IPv4 にフォールバックします。 |
| デフォルトの SSH パスワード | ***** |
SSH に使用するデフォルトのパスワード。 |
| デフォルトの SSH 鍵のパスフレーズ | ***** |
SSH に使用するデフォルトのキーパスフレーズ。 |
| ワーカーのプールサイズ | 5 |
リモート実行ジョブの実行を処理するためのプール内のワーカーの数。 |
| 作業ディレクトリーの消去 | Yes |
タスクの完了後に作業ディレクトリーを削除するかどうか。 |
| Cockpit の URL | Web コンソールボタンの Cockpit インスタンスの場所。デフォルトでは、ボタンは表示されません。 | |
| フォームジョブテンプレート | コマンドの実行 -SSH のデフォルト | ジョブ呼び出しフォームで事前に選択されているジョブテンプレートを選択します。 |
| ジョブ呼び出しレポートテンプレート | ジョブ - 呼び出しレポートテンプレート | 特定のリモート実行ジョブのレポートを生成するために使用されるレポートテンプレートを選択します。 |
| 取得時間 | 86400 | ホストがジョブを取得しなければならない時間 (秒単位)。この制限時間内にジョブが取得されない場合、ジョブはキャンセルされます。pull-mqtt ベースのジョブにのみ適用されます。デフォルトは 1 日です。 |
B.15. Ansible 設定 リンクのコピーリンクがクリップボードにコピーされました!
| 設定 | デフォルト値 | 説明 |
|---|---|---|
| 秘密鍵パス |
これを使用して、パスワードの代わりに Ansible が使用する SSH 秘密鍵へのパスを指定します。 | |
| 接続タイプ | ssh |
Ansible Playbook を実行するときは、デフォルトでこの接続タイプを使用します。 |
| WinRM 証明書の検証 | validate |
Ansible Playbook を実行するときに、WinRM サーバー証明書の検証を有効または無効にします。 |
| デフォルトの詳細レベル | Disabled | Satellite は、Ansible Playbook の実行時に追加のデバッグ出力にこのレベルの詳細度を追加します。 |
| プロビジョニング後のタイムアウト | 360 | ホストが完全にプロビジョニングされた後、Satellite が Ansible ロールタスク Playbook をトリガーするタイミングを設定するタイムアウト (秒単位)。これを、ホストが再起動後に準備ができるまでにかかると予想される最大時間に設定します。 |
| Ansible レポートのタイムアウト | 30 | ホストがレポートする必要があるタイムアウト (分単位)。 |
| Ansible の同期が無効 | No | 設定された間隔内にレポートが到着しない場合、Ansible の同期がとれていないホスト設定ステータスを無効にします。 |
| デフォルトの Ansible インベントリーレポートテンプレート | Ansible-Ansible インベントリー | Satellite はこのテンプレートを使用して、Ansible インベントリーでレポートをスケジュールします。 |
| 無視する Ansible のロール | [] |
Capsule からロールをインポートするときに除外するロール。予想される入力はコンマ区切り値であり、*ワイルドカードメタ文字を使用できます。例: |
| Ansible の Capsules タスクのバッチサイズ |
|