Red Hat Satellite の管理
Red Hat Satellite の管理ガイド
Red Hat Satellite Documentation Team
satellite-doc-list@redhat.com
概要
Red Hat ドキュメントへのフィードバック (英語のみ)
弊社ドキュメントに対するご意見をお聞かせください。ドキュメントの改善点があればお知らせください。
特定の部分について簡単なコメントをお寄せいただく場合は、以下をご確認ください。
ドキュメントの表示が Multi-page HTML 形式になっていていることを確認してください。
ドキュメントの右上隅に Feedback ボタンがあることを確認してください。
- マウスカーソルを使用して、コメントを追加するテキストの部分を強調表示します。
- 強調表示されたテキストの下に表示される Add Feedback ポップアップをクリックします。
- 表示される手順に従ってください。
Bugzilla を介してフィードバックを送信するには、新しいチケットを作成します。
- Bugzilla の Web サイトに移動します。
- Component (コンポーネント) として Documentation を使用します。
- Description フィールドに、ドキュメントの改善に向けたご提案を記入してください。ドキュメントの該当部分へのリンクも追加してください。
- Submit Bug をクリックします。
第1章 Red Hat Satellite へのアクセス
Red Hat Satellite のインストールと設定が終わったら、Satellite web UI を使用して Satellite にログインし、追加の設定を行います。
1.1. Katello ルート CA 証明書のインポート
Satellite に初めてログインする場合は、デフォルトの自己署名証明書を使用していることを通知する警告が表示され、ルート CA 証明書がブラウザーにインポートされるまでこのブラウザーを Satellite に接続できない可能性があります。以下の手順を使用して、Satellite でルート CA 証明書を見つけ、ブラウザーにインポートします。
Satellite Web UI の代わりに CLI を使用するには、CLI 手順 を参照してください。
前提条件
- Red Hat Satellite がインストールされ、設定されていること。
手順
Satellite Server の完全修飾ドメイン名を特定します。
# hostname -f
Web ブラウザーで以下の完全修飾ドメイン名を指定して、Satellite Server の
pub
ディレクトリーにアクセスします。https://satellite.example.com/pub
- Satellite に初めてアクセスする場合は、信頼できない接続を警告するメッセージが Web ブラウザーに表示されます。自己署名証明書を承認し、Satellite の URL をセキュリティー例外として追加し、設定を上書きします。この手順は、使用しているブラウザーによって異なる場合があります。セキュリティー例外を承認する前に Satellite の URL が有効であることを確認します。
-
katello-server-ca.crt
を選択します。 - 証明書を認証局としてブラウザーにインポートして信頼し、Web サイトを特定します。
CLI 手順
Satellite CLI から、Satellite web UI へのアクセスに使用するマシンに、
katello-server-ca.crt
ファイルをコピーします。# scp /var/www/html/pub/katello-server-ca.crt username@hostname:remotefile
-
ブラウザーで、
katello-server-ca.crt
証明書を認証局としてインポートして信頼し、Web サイトを識別します。
1.2. Satellite へのログイン
さらに設定するには、Web ユーザーインターフェイスを使用して Satellite にログインします。
前提条件
- ブラウザーに Katello ルート CA 証明書がインストールされていること。詳細は、「Katello ルート CA 証明書のインポート」 を参照してください。
手順
Web ブラウザーで以下の完全修飾ドメイン名を指定して、Satellite Server にアクセスします。
https://satellite.example.com/
- 設定プロセスで作成したユーザー名とパスワードを入力します。設定プロセス時にユーザーを作成されなかった場合は、デフォルトのユーザー名 admin が使用されます。ログインに問題がある場合は、パスワードをリセットできます。詳細は、「管理ユーザーパスワードのリセット」 を参照してください。
1.3. Satellite web UI のナビゲーションタブ
ナビゲーションタブを使用して、Satellite Web UI を参照します。
ナビゲーションタブ | 説明 |
---|---|
すべてのコンテキスト | このタブをクリックすると、組織とロケーションが変更されます。組織やロケーションが選択されていない場合、デフォルト組織は 任意の組織 に、デフォルトロケーションは 任意のロケーション になります。このタブを使用して異なる値に変更します。 |
監視 | サマリーダッシュボードおよびレポートを表示します。 |
コンテンツ | コンテンツ管理ツールを提供します。コンテンツビュー、アクティベーションキー、ライフサイクル環境などが含まれます。 |
ホスト | ホストインベントリーおよびプロビジョニング設定ツールを提供します。 |
設定 | 一般的な設定ツール、およびホストグループや Puppet データを含むデータを提供します。 |
インフラストラクチャー | Satellite が環境と対話する方法を設定するツールを提供します。 |
ユーザー名 | ユーザーが個人情報を編集できるユーザー管理機能を提供します。 |
| 環境に対する重要な変更が管理者に通知されるようにイベントの通知が表示されます。 |
管理 | 一般設定のほかに、ユーザーおよび RBAC 設定などの詳細設定を提供します。 |
1.4. パスワードの変更
以下の手順は、パスワードを変更する方法を示しています。
手順
- 右上にあるユーザー名をクリックします。
- メニューから マイアカウント を選択します。
- 現在のパスワード フィールドに現在のパスワードを入力します。
- パスワード フィールドに新しいパスワードを入力します。
- 確認 フィールドに新しいパスワードを再入力します。
- 送信 ボタンをクリックして、新しいパスワードを保存します。
1.5. 管理ユーザーパスワードのリセット
以下の手順を使用して、管理者パスワードを無作為に生成された文字にリセットするか、新しい管理者パスワードを設定します。
管理ユーザーパスワードのリセット:
- Satellite Server がインストールされているベースのオペレーティングシステムにログインします。
以下のコマンドを実行してパスワードをリセットします。
# foreman-rake permissions:reset Reset to user: admin, password: qwJxBptxb7Gfcjj5
- このパスワードを使用して、Satellite Web UI でパスワードをリセットします。
Satellite Server の
~/.hammer/cli.modules.d/foreman.yml
ファイルを編集し、新規パスワードを追加します。# vi ~/.hammer/cli.modules.d/foreman.yml
~/.hammer/cli.modules.d/foreman.yml
ファイルを更新しない限り、Hammer CLI では新規パスワードを使用できません。
新規の管理ユーザーパスワードの設定:
- Satellite Server がインストールされているベースのオペレーティングシステムにログインします。
パスワードをリセットするには、以下のコマンドを入力します。
# foreman-rake permissions:reset password=new_password
Satellite Server の
~/.hammer/cli.modules.d/foreman.yml
ファイルを編集し、新規パスワードを追加します。# vi ~/.hammer/cli.modules.d/foreman.yml
~/.hammer/cli.modules.d/foreman.yml
ファイルを更新しない限り、Hammer CLI では新規パスワードを使用できません。
1.6. ログインページでのカスタムメッセージの設定
手順
- Satellite web UI で、Administer > Settings に移動して、General タブをクリックします。
- ログインページフッターテキスト の横にある編集ボタンをクリックして、ログインページに表示させるテキストを入力します。たとえば、自社で必須とされる警告メッセージなどにすることができます。
- Save をクリックします。
- Satellite web UI からログアウトして、ログインページで Satellite バージョン番号の下にカスタムテキストが表示されることを確認します。
第2章 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
第3章 内部 Satellite データベースから外部データベースへの移行
Red Hat Satellite のインストールプロセスの一部として、satellite-installer コマンド、PostgreSQL のデータベースを Satellite と同じサーバー上にインストールします。デフォルトの内部データベースを使用している場合で、サーバーの負荷を軽減するために外部データベースを使い初める必要がある場合は、内部データベースを外部データベースに移行することが可能です。
Satellite Server のデータベースが内部または外部なのかを確認するには、データベースのステータスをクエリーすることができます。
PostgreSQL の場合は、以下のコマンドを実行します。
# satellite-maintain service status --only postgresql
Red Hat では、外部データベースのメンテナーンスのサポートやそのためのツールは提供していません。これにはバックアップ、アップグレード、データベースのチューニングが含まれます。外部データベースをサポートし、管理する自社のデータベース管理者が必要です。
デフォルトの内部データベースから外部データベースに移行するには、以下の手順を完了する必要があります。
- 「外部データベース用のホストの準備」外部データベースをホストするように Red Hat Enterprise Linux 8 サーバーを準備します。
- 「PostgreSQL のインストール」Satellite、Pulp および Candlepin を所有する専用ユーザーを作成し、PostgreSQL を Satellite、Pulp および Candlepin のデータベースで準備します。
-
「外部データベースへの移行」新規データベースを参照するように
satellite-installer
のパラメーターを編集し、satellite-installer
を実行します。
3.1. 外部データベースとして PostgreSQL を使用する際の注意点
Foreman、Katello、および Candlepin は PostgreSQL データベースを使用します。PostgreSQL を外部データベースとして使用する場合は、以下の情報を参照してお使いの Satellite 設定にこのオプションが適しているかどうかを判別してください。Satellite は PostgreSQL バージョン 12 をサポートします。
外部 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 サポートチームまでお問い合わせください。
3.2. 外部データベース用のホストの準備
新しくプロビジョニングされたシステムに最新の Red Hat Enterprise Linux 8 をインストールして、外部データベースをホストします。
Red Hat Enterprise Linux のサブスクリプションでは、外部データベースと Satellite を併用する場合に、正しいサービスレベルアグリーメントが提供されません。外部データベースに使用するベースオペレーティングシステムにも、Satellite サブスクリプションをアタッチする必要があります。
前提条件
- 準備されたホストは、Satellite の ストレージ要件 を満たしている必要があります。
手順
- Satellite インフラストラクチャーサブスクリプションのアタッチ の手順に従い、サーバーに Satellite サブスクリプションをアタッチします。
すべてのリポジトリーを無効にし、以下のリポジトリーのみを有効にします。
# subscription-manager repos --disable '*' # subscription-manager repos \ --enable=satellite-6.12-for-rhel-8-x86_64-rpms \ --enable=rhel-8-for-x86_64-baseos-rpms \ --enable=rhel-8-for-x86_64-appstream-rpms
次のモジュールを有効にします。
# dnf module enable satellite:el8
注記モジュール
satellite:el8
を有効にすると、postgresql:10
およびruby:2.5
との競合について警告が表示されます。これは、これらのモジュールが Red Hat Enterprise Linux 8 でデフォルトのモジュールバージョンに設定されているためです。モジュールsatellite:el8
には、モジュールpostgresql:12
およびruby:2.7
への依存関係があり、satellite:el8
モジュールで有効になります。これらの警告はインストールプロセスの失敗の原因にはならないため、安全に無視できます。Red Hat Enterprise Linux 8 のモジュールとライフサイクルストリームの詳細については、Red Hat Enterprise Linux Application Streams Life Cycle を参照してください。
3.3. PostgreSQL のインストール
インストール可能な PostgreSQL は、内部データベースのインストール中に satellite-installer
ツールでインストールされたものと同じバージョンの PostgreSQL のみになります。Satellite は PostgreSQL バージョン 12 をサポートします。
手順
PostgreSQL をインストールするには、以下のコマンドを入力します。
# dnf install postgresql-server postgresql-evr
PostgreSQL を初期化するには、以下のコマンドを入力します。
# postgresql-setup initdb
/var/lib/pgsql/data/postgresql.conf
ファイルで以下を行います。# vi /var/lib/pgsql/data/postgresql.conf
Satellite で機能するには、外部 PostgreSQL のデフォルト設定を調整する必要があることに注意してください。基本的に推奨される外部データベース設定の調整は次のとおりです。
- checkpoint_completion_target: 0.9
- max_connections: 500
- shared_buffers: 512MB
- work_mem: 4MB
#
を削除して、着信接続をリッスンするようにします。listen_addresses = '*'
/var/lib/pgsql/data/pg_hba.conf
ファイルを編集します。# vi /var/lib/pgsql/data/pg_hba.conf
以下の行をファイルに追加します。
host all all Satellite_ip/32 md5
PostgreSQL サービスを起動し、有効にするには、以下のコマンドを実行します。
# systemctl enable --now postgresql
外部 PostgreSQL サーバーで postgresql ポートを開きます。
# firewall-cmd --add-service=postgresql # firewall-cmd --runtime-to-permanent
postgres
ユーザーに切り替え、PostgreSQL クライアントを起動します。$ su - postgres -c psql
3 つのデータベースと専用のロールを作成します。1 つは Satellite 用、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
ユーザーをログアウトします。# \q
Satellite 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"
3.4. 外部データベースへの移行
既存のデータをバックアップおよび転送してから、satellite-installer
コマンドを使用して、外部の PostgreSQL データベースに接続するように Satellite を設定します。
前提条件
- Red Hat Enterprise Linux サーバーに PostgreSQL サーバーをインストールおよび設定していること。
手順
Satellite Server で Satellite サービスを停止します。
# satellite-maintain service stop
PostgreSQL サービスを起動します。
# systemctl start postgresql
内部データベースのバックアップを作成します。
# satellite-maintain backup online --skip-pulp-content --preserve-directory -y /var/migration_backup
データを新規外部データベースに転送します。
PGPASSWORD='Foreman_Password' pg_restore -h postgres.example.com -U foreman -d foreman < /var/migration_backup/foreman.dump PGPASSWORD='Candlepin_Password' pg_restore -h postgres.example.com -U candlepin -d candlepin < /var/migration_backup/candlepin.dump PGPASSWORD='Pulpcore_Password' pg_restore -h postgres.example.com -U pulp -d pulpcore < /var/migration_backup/pulpcore.dump
satellite-installer
コマンドを使って Satellite が新規データベースを参照するように更新します。satellite-installer --scenario satellite \ --foreman-db-host postgres.example.com \ --foreman-db-password Foreman_Password \ --foreman-db-database foreman \ --foreman-db-manage false \ --foreman-db-username foreman \ --katello-candlepin-db-host postgres.example.com \ --katello-candlepin-db-name candlepin \ --katello-candlepin-db-password Candlepin_Password \ --katello-candlepin-manage-db false \ --katello-candlepin-db-user candlepin \ --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-password Pulpcore_Password \ --foreman-proxy-content-pulpcore-postgresql-user pulp
第4章 Ansible Collections を使用した Satellite の管理
Satellite Ansible Collections は、Satellite API と対話する Ansible モジュールセットです。Satellite Ansible Collections を使用して、Satellite の多くの側面を管理および自動化することができます。
4.1. Satellite Ansible モジュールのインストール
この手順を使用して、Satellite Ansible モジュールをインストールします。
手順
次のコマンドを使用してパッケージをインストールします。
# satellite-maintain packages install ansible-collection-redhat-satellite
4.2. Satellite Ansible モジュールの表示
次のディレクトリーのコンテンツを一覧表示することで、インストールされている Satellite Ansible モジュールを表示できます。
# ls /usr/share/ansible/collections/ansible_collections/redhat/satellite/plugins/modules/
本ガイド作成時では、ansible-doc -l
コマンドはまだコレクションを一覧表示していません。
または、https://console.redhat.com/ansible/automation-hub/redhat/satellite/docs で、Satellite Ansible モジュールの完全なリストとその他の関連情報を確認することもできます。
すべてのモジュールは redhat.satellite
namespace にあり、redhat.satellite._module_name_
という形式で参照できます。たとえば、activation_key
モジュールに関する情報を表示するには、以下のコマンドを入力します。
$ ansible-doc redhat.satellite.activation_key
第5章 組織の管理
組織は、所有者、目的、コンテンツ、セキュリティーレベルなどの区分に基づいて Red Hat Satellite リソースを論理グループに分割します。Red Hat Satellite で複数の組織を作成して管理し、Red Hat サブスクリプションを分割して各組織に割り当てることができます。これにより、1 つの管理システムで複数の個別の組織のコンテンツを管理できるようになります。以下に、組織管理の例をいくつか示します。
- 単一の組織
- システム管理チェーンが単純な小企業。この場合は、ビジネスに組織を 1 つ作成し、コンテンツをその組織に割り当てることができます。
- 複数の組織
- 複数の小規模な事業単位を所有する大規模な企業。たとえば、別のシステム管理とソフトウェア開発グループを持つ会社です。この場合、所属する会社および各企業が所有する各事業単位の組織を作成できます。これにより、システムインフラストラクチャーが別々に維持されます。こうすることで、ニーズに合わせて各組織にコンテンツを割り当てることができます。
- 外部組織
- 他の組織の外部システムを管理する会社たとえば、クラウドコンピューティングと Web ホストリソースを顧客に提供する会社です。この場合は、会社の独自のシステムインフラストラクチャーの組織と、外部の各ビジネスに組織を作成できます。必要に応じて、各組織にコンテンツを割り当てることができます。
Red Hat Satellite のデフォルトのインストールには、Default Organization と呼ばれるデフォルトの組織があります。
新規ユーザー
新規ユーザーにデフォルトの組織が割り当てられていない場合には、そのアクセスは制限されます。ユーザーにシステム権限を付与するには、ユーザーをデフォルトの組織に割り当てます。ユーザーが次に Satellite にログインする際に、ユーザーのアカウントに適切なシステム権限が付与されます。
5.1. 組織の作成
以下の手順を使用して組織を作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Organizations に移動します。
- 新規組織 をクリックします。
- 名前 フィールドに、組織の名前を入力します。
- ラベル フィールドには、組織の一意識別子を入力します。これは、コンテンツストレージのディレクトリーなど、特定のアセットを作成し、マッピングするために使用されます。文字、数字、アンダースコア、およびダッシュを使用し、スペースは使用しないでください。
- オプション: 説明 フィールドに、組織の説明を入力します。
- Submit をクリックします。
- ホストに組織が割り当てられていない場合は、組織に追加するホストを選択し、Proceed to Edit をクリックします。
- 編集 ページで、組織に追加するインフラストラクチャーリソースを割り当てます。これには、ネットワークリソース、インストールメディア、キックスタートテンプレートなどのパラメーターが含まれます。管理 > 組織 に移動して、編集する組織を選択すると、いつでもこのページに戻ることができます。
- 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
5.2. 組織コンテキストの設定
ホストに使用する組織や関連するリソースを定義する組織のコンテキスト
手順
組織メニューは、Satellite Web UI の左上にあるメニューバーの最初のメニュー項目です。現在の組織を選択していない場合には、メニューには任意の組織と表示されます。任意の組織 ボタンをクリックして、使用する組織を選択します。
CLI 手順
CLI を使用する場合は、--organization "My_Organization"
または --organization-label "My_Organization_Label"
オプションのいずれかを追加します。以下に例を示します。
# hammer subscription list \
--organization "My_Organization"
このコマンドは、My_Organization に割り当てられたサブスクリプションを出力します。
5.3. 組織デバッグ証明書の作成
組織のデバッグ証明書が必要な場合は、以下の手順を使用します。
手順
- Satellite Web UI で、Administer > Organizations に移動します。
- デバッグ証明書を生成する組織を選択します。
- 生成してダウンロード をクリックします。
- 証明書ファイルを安全な場所に保存します。
プロビジョニングテンプレート用の証明書のデバッグ
デバッグ証明書は、テンプレートダウンロードがダウンロードされている組織に存在しない場合には、テンプレートのダウンロードのプロビジョニング用に自動的に生成されます。
5.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 ブラウザーで、編集 > 設定 > 詳細タブ に移動します。
- 証明書の表示 を選択し、証明書タブをクリックします。
-
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 に入力する必要があります。
5.5. 組織の削除
組織は、ライフサイクル環境またはホストグループに関連付けられていない場合に削除できます。削除予定の組織にライフサイクル環境またはホストグループが関連付けられている場合は、管理 > 組織 に移動して関連の組織をクリックします。インストール中に作成されたデフォルトの組織は、Satellite 環境で関連付けられていないホストへのプレースホルダーであるため、削除しないでください。環境には常に 1 つ以上の組織が必要です。
手順
- Satellite Web UI で、Administer > Organizations に移動します。
- 削除する組織名の右側にあるリストから 削除 を選択します。
- OK をクリックして組織を削除します。
CLI 手順
以下のコマンドを入力して、削除する組織の ID を取得します。
# hammer organization list
出力から、削除する組織の ID をメモします。
以下のコマンドを入力して組織を削除します。
# hammer organization delete --id Organization_ID
第6章 ロケーションの管理
ロケーションは、リソースをグループ化してホストを割り当てる方法を提供する組織と同様に機能します。組織とロケーションには、以下の概念の違いがあります。
- ロケーションは、物理または地理的な設定に基づいています。
- 場所には階層構造があります。
6.1. ロケーションの作成
以下の手順を使用して、ホストとリソースをロケーション別に管理できるようにロケーションを作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Locations に移動します。
- 新規組ロケーションをクリックします。
- オプション: 親 リストから、親ロケーションを選択します。これにより、ロケーションの階層が作成されます。
- 名前 フィールドに、ロケーションの名前を入力します。
- オプション: 説明 フィールドに、ロケーションの説明を入力します。
- Submit をクリックします。
- ホストにロケーションが割り当てられていない場合は、新しいロケーションに割り当てるホストを追加し、Proceed to Edit をクリックします。
- ロケーションに追加するインフラストラクチャーリソースを割り当てます。これには、ネットワークリソース、インストールメディア、キックスタートテンプレートなどのパラメーターが含まれます。管理 > ロケーション に移動して、編集するロケーションを選択すると、いつでもこのページに戻ることができます。
- 送信 をクリックして変更を保存します。
CLI 手順
以下のコマンドを実行してロケーションを作成します。
# hammer location create \ --description "My_Location_Description" \ --name "My_Location" \ --parent-id "My_Location_Parent_ID"
6.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
6.3. ロケーションコンテキストの設定
ホストに使用するロケーションや関連するリソースを定義するロケーションのコンテキスト
手順
ロケーションメニューは、Satellite Web UI の左上にあるメニューバーの 2 番目のメニュー項目です。現在のロケーションを選択していない場合には、メニューには 任意のロケーション と表示されます。任意のロケーション をクリックして、使用するロケーションを選択します。
CLI 手順
CLI を使用する場合は、オプションとして --location "My_Location"
または --location-id "My_Location_ID"
を追加します。以下はその例です。
# hammer host list --location "My_Location"
このコマンドは、My_Location のロケーションに関連付けられたホストを一覧表示します。
6.4. ロケーションの削除
ロケーションは、ライフサイクル環境またはホストグループに関連付けられていない場合に削除できます。削除するロケーションにライフサイクル環境またはホストグループが関連付けられている場合は、管理 > ロケーション に移動して、関連するロケーションをクリックします。インストール中に作成されたデフォルトのロケーションは、Satellite 環境で関連付けられていないホストへのプレースホルダーであるため、削除しないでください。環境には常に 1 つ以上のロケーションが必要です。
手順
- Satellite Web UI で、Administer > Locations に移動します。
- 削除するロケーションの名前の右側にあるリストから削除を選択します。
- OK をクリックして、ロケーションを削除します。
CLI 手順
以下のコマンドを入力して、削除するロケーションの ID を取得します。
# hammer location list
出力から、削除するロケーションの ID をメモします。
以下のコマンドを実行してロケーションを削除します。
# hammer location delete --id Location ID
第7章 ユーザーとロールの管理
ユーザーは、システムを使用する各個人の一連の詳細情報を定義します。組織と環境をユーザーに関連付けることで、新しいエンティティーを作成する際にこれらのデフォルト値を自動的に使用することができます。また、ユーザーには 1 つ以上のロールを割り当てることもでき、ユーザーには組織と環境を参照および管理する権限が与えられます。ユーザーの使用に関する詳細は、「ユーザーの管理」 を参照してください。
複数のユーザーのパーミッションは、ユーザーグループでまとめることにより一括して管理できます。また、ユーザーグループ自体をさらにグループ化してパーミッションの階層を作成できます。ユーザーグループの作成の詳細は、「ユーザーグループの作成と管理」 を参照してください。
ロールでは、一連のパーミッションおよびアクセスレベルを定義します。各ロールには、ロールに許可されたアクションを指定する 1 つ以上のパーミッションフィルターが含まれます。アクションは、リソースタイプに従ってグループ化されます。ロールが作成されたら、そのロールにはユーザーとユーザーグループを関連付けることができます。この場合は、ユーザーの大きなグループに同じ一連のパーミッションセットを割り当てることができます。Satellite では、事前定義された一連のロールが提供され、「ロールの作成および管理」 で説明されているようにカスタムロールおよびパーミッションフィルターを作成することもできます。
7.1. ユーザーの管理
管理者は、Satellite ユーザーを作成、変更、および削除できます。また、異なる ロール をユーザーやユーザーのグループに割り当てて、アクセスパーミッションを設定することもできます。
7.1.1. ユーザーの作成
この手順を使用してユーザーを作成します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Users に移動します。
- Create User をクリックします。
- ログイン フィールドにユーザーのユーザー名を入力します。
- 名 および 姓 フィールドに、ユーザーの実名を入力します。
- Email アドレス フィールドにメールアドレスを入力します。
- 説明 フィールドには、新規ユーザーの説明を加えます。
- 言語 一覧からユーザー用の言語を選択します。
タイムゾーン 一覧からタイムゾーンを選択します。
デフォルトでは、Satellite Server はユーザーのブラウザーの言語とタイムゾーンを使用します。
ユーザーのパスワードを設定します。
認証先 一覧から、ユーザー認証に使用するソースを選択します。
- 内部: Satellite Server 内でのユーザー管理を有効にします。
- 外部: オンラインネットワーク環境からの Satellite Server のインストール の 外部認証の設定 で説明されているように、外部認証を設定します。
- パスワード フィールドに初回パスワードを入力して、確認 フィールドで再入力します。
- 送信 をクリックしてユーザーを作成します。
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 を指定する必要はありません。update
サブコマンドを使用してユーザーの詳細を変更できます。
ユーザー関連のサブコマンドに関する情報は、hammer user --help
の入力してください。
7.1.2. ユーザーへのロールの割り当て
この手順を使用して、ロールをユーザーに割り当てます。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Users に移動します。
ロールを割り当てるユーザーの ユーザー名 をクリックします。
注記ユーザーアカウントが表示されない場合は、現在適切な組織を表示しているかどうかを確認します。Satellite の全ユーザーを一覧表示するには、デフォルトの組織 をクリックしてから 任意の組織 をクリックします。
- ロケーション タブをクリックして、ロケーションが割り当てられていない場合は選択します。
- 組織 タブをクリックして、組織が割り当てられていることを確認します。
- ロール タブをクリックして利用可能なロールのリストを表示します。
ロール リストから割り当てるロールを選択します。
利用可能な全パーミッションを付与するには、管理 チェックボックスを選択します。
- Submit をクリックします。
ユーザーに割り当てられたロールを参照するには、ロール タブをクリックします。割り当てられたロールは、選択された項目 に表示されます。割り当てたロールを削除するには、選択された項目 でロール名をクリックします。
CLI 手順
ユーザーにロールを割り当てるには、次のコマンドを入力します。
# hammer user add-role --id user_id --role role_name
7.1.3. 別のユーザーアカウントへの切り替え
管理者は、別のユーザーとして Satellite Web UI に一時的にログオンすることにより、テストおよびトラブルシューティングの目的で他の認証済みユーザーに切り替えることができます。別のユーザーに切り替える場合、管理者は、同じメニューを含め、切り替えたユーザーとまったく同じシステム内のアクセス権限を持ちます。
監査は、管理者が別のユーザーとして実行するアクションを記録するために作成されます。ただし、管理者が別のユーザーとして実行するすべてのアクションは、切り替え後のユーザーで実行されたものとして記録されます。
前提条件
- Satellite の管理者権限を持つユーザーとして Satellite Web UI にログオンしていること。
手順
- Satellite Web UI で、Administer > Users に移動します。
- 切り替えるユーザーの右側の アクション コラムの一覧から、ユーザー切り替え を選択します。
切り替えセッションを停止するには、メインメニューの右上にある切り替えアイコンをクリックします。
7.1.4. API のみのユーザーの作成
Satellite API とのみ対話できるユーザーを作成できます。
前提条件
- ユーザーを作成し、それらにロールを割り当てました。このユーザーは内部で承認されている必要があることに注意してください。詳細は、ユーザーの作成 と ユーザーへのロールの割り当て を参照してください。
手順
- 管理者として Satellite にログインします。
- Administer > Users に移動して、ユーザーを選択します。
User タブで、パスワードを設定します。このパスワードを保存したり、他の人と通信したりしないでください。コンソールで疑似ランダム文字列を作成できます。
# openssl rand -hex 32
- ユーザーのパーソナルアクセストークンを作成します。詳細は、「Personal Access Token の作成」 を参照してください。
7.2. SSH キーの管理
ユーザーに SSH キーを追加すると、プロビジョニング中に SSH キーのデプロイメントが可能になります。プロビジョニング中に SSH キーをデプロイする方法の詳細は、ホストのプロビジョニング の プロビジョニング時の SSH キーのデプロイ を参照してください。
SSH キーおよび SSH キーの作成に関する情報は、Red Hat Enterprise Linux 8 基本的なシステム設定の設定 の SSH ベースの認証の使用 を参照してください。
7.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 に移動します。
- ユーザー名 コラムから必要となるユーザーのユーザー名をクリックします。
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.pub
SSH 公開キーのコンテンツがある場合は、次のコマンドを入力します。
# 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
7.3. パーソナルアクセストークンを管理します。
Personal Access Token を使用すると、パスワードを使用せずに、API リクエストを認証できます。Personal Access Token の有効期限を設定できます。有効期限が切れる前に、有効期限が切れると判断した場合は、トークンを取り消すことができます。
7.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 サーバーに API リクエストを送信し、Personal Access Token で認証します。
# curl https://satellite.example.com/api/status --user My_Username:My_Personal_Access_Token
ステータス
200
のレスポンスを受け取る必要があります。次に例を示します。{"satellite_version":"6.12.0","result":"ok","status":200,"version":"3.5.1.10","api_version":2}
Personal Access Tokens タブに戻ると、Personal Access Token の横に更新された Last Used 時刻が表示されます。
7.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 サーバーに API リクエストを送信し、失効した Personal Access Token で認証を試みます。
# curl https://satellite.example.com/api/status --user My_Username:My_Personal_Access_Token
次のエラーメッセージが表示されます。
{ "error": {"message":"Unable to authenticate user My_Username"} }
7.4. ユーザーグループの作成と管理
7.4.1. ユーザーグループ
Satellite を使用すると、ユーザーのグループに権限を割り当てることができます。また、ユーザーグループを他のユーザーグループのコレクションとして作成することもできます。外部認証ソースを使用している場合は、オンラインネットワーク環境からの Satellite Server のインストール の 外部ユーザーグループの設定 で説明されているように、Satellite ユーザーグループを外部ユーザーグループにマップできます。
ユーザーグループは組織コンテキストで定義されます。したがって、ユーザーグループにアクセスする前に組織を選択する必要があります。
7.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
7.4.3. ユーザーグループの削除
Satellite Web UI を使ってユーザーグループを削除します。
手順
- Satellite Web UI で、Administer > User Groups に移動します。
- 削除するユーザーグループの右側にある 削除 をクリックします。
- 警告ボックスで、OK をクリックしてユーザーグループを削除します。
7.5. ロールの作成および管理
Satellite では、標準的なタスクに十分なパーミッションとなる事前定義済みロール一式が提供されます (「Satellite で利用可能な事前定義済みロール」 を参照)。また、カスタムロールを設定し、このカスタムロールに 1 つ以上のパーミッションフィルターを割り当てることもできます。パーミッションフィルターでは、特定のリソースタイプに許可されるアクションを定義します。特定の Satellite プラグインによりロールが自動的に作成されます。
7.5.1. ロールの作成
以下の手順を使用してロールを作成します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- ロールの作成 をクリックします。
- ロールの 名前 を記入します。
- 送信 をクリックして、新しいロールを保存します。
CLI 手順
以下のコマンドを実行してロールを作成します。
# hammer role create --name My_Role_Name
ロールにはパーミッションを含める必要があります。ロールの作成後は、「ロールへのパーミッションの追加」 に進んでください。
7.5.2. ロールのクローン作成
Satellite Web UI を使ってロールのクローンを作成します。
手順
- Satellite web UI で、Administer > Roles に移動し、必要なロールの右側にあるドロップダウンメニューから Clone を選択します。
- ロールの 名前 を記入します。
- 送信 をクリックしてロールのクローンを作成します。
- クローンされたロールの名前をクリックし、フィルター に移動します。
- 必要に応じて、パーミッションを編集します。
- 送信 をクリックして、新しいロールを保存します。
7.5.3. ロールへのパーミッションの追加
以下の手順を使用して、ロールにパーミッションを追加します。Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 必要なロールの右側にあるドロップダウンリストから フィルターの追加 を選択します。
- ドロップダウンリストから リソースタイプ を選択します。(その他) グループには、どのリソースグループにも関連付けられていないパーミッションが含まれます。
- 選択するパーミションを パーミッション リストからクリックします。
- リソースタイプ での選択により、無制限 と 上書き のチェックボックスが表示されます。無制限 チェックボックスはデフォルトで選択され、選択されたタイプの全リソースにパーミッションが適用されます。無制限 チェックボックスを無効にすると、検索 フィールドが有効になります。このフィールドでは、Satellite 検索構文を使用してさらにフィルターリングを指定できます。詳細は、「詳細なパーミッションフィルターリング」 を参照してください。上書き チェックボックスを有効にすると、新たなロケーションと組織を追加して、それらのロケーションや組織のリソースタイプにこのロールがアクセスできるようになります。また、すでに関連付けられたロケーションや組織をリソースタイプから削除して、アクセスを制限することもできます。
- Next をクリックします。
- 送信 をクリックして変更を保存します。
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
コマンドを入力します。
7.5.4. ロールのパーミションの表示
Satellite Web UI を使ってロールのパーミッションを表示します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 必要なロールの右側にある フィルター をクリックして、フィルター ページを開きます。
フィルター ページでは、リソースタイプ別にグループ化されたロールに割り当てられたパーミッションの表が示されます。また、このページでは、Satellite システムで使用できるパーミッションとアクションの完全な表を生成できます。詳細は、「パーミッションの完全テーブルの作成」 を参照してください。
7.5.5. パーミッションの完全テーブルの作成
Satellite CLI を使ってパーミッションテーブルを作成します。
手順
必要なパッケージがインストールされていることを確認します。Satellite Server で以下のコマンドを実行します。
# satellite-maintain packages install foreman-console
以下のコマンドで 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
を開いて、表を確認します。
7.5.6. ロールの削除
Satellite Web UI を使ってロールを削除します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 削除するロールの右側にあるドロップダウンリストから 削除 を選択します。
- 警告ボックスで、OK をクリックしてロールを削除します。
7.6. Satellite で利用可能な事前定義済みロール
ロール | ロールが提供するパーミッション [a] |
---|---|
Access Insights Admin | Insights のルールを追加して編集します。 |
Access Insights Viewer | Insight レポートを表示します。 |
Ansible Roles Manager | ホストおよびホストグループでのロールのプレイ。Ansible ロールを表示、破棄、およびインポートします。Ansible 変数を表示、編集、作成、破棄、およびインポートします。 |
Ansible Tower Inventory Reader | ファクト、ホスト、およびホストグループを表示します。 |
Bookmarks manager | ブックマークを作成、編集、削除します。 |
Boot disk access | 起動ディスクをダウンロードします。 |
Compliance manager | SCAP コンテンツファイル、コンプライアンスポリシー、テーラリングファイルの表示、作成、編集、破棄を行います。コンプライアンスレポートを表示します。 |
Compliance viewer | コンプライアンスレポートを表示します。 |
Create ARF report | コンプライアンスレポートを作成します。 |
Default role | 他のロールに関係なく、各ユーザーに与えられる一連のパーミッション。 |
Discovery Manager | 検出されたホストを表示、プロビジョニング、編集、および破棄し、検出ルールを管理します。 |
Discovery Reader | ホストと検出ルールを表示します。 |
Edit hosts | ホストを表示、作成、編集、破棄、および構築します。 |
Edit partition tables | パーティションテーブルを表示、作成、編集、および破棄します。 |
Manager | 管理者のロールに似ているが、グローバル設定の編集パーミッションがありません。Satellite Web UI では、グローバル設定は、管理 > 設定 にあります。 |
Organization admin | 組織ごとに定義された管理者ロール。このロールでは、他の組織のリソースは表示できません。 |
Red Hat Access Logs | ログビューアーとログを表示します。 |
Remote Execution Manager | インフラストラクチャージョブを実行する権限を持つロールを制御します。 |
Remote Execution User | ホストに対してリモート実行ジョブを実行します。 |
Site manager | Manager ロールの制限バージョン。 |
System admin |
このロールが指定されたユーザーは、ユーザーを作成したり、そのユーザーに全ロールを割り当てたりできます。そのため、このロールは信頼できるユーザーにのみ付与してください。 |
Tasks manager | Satellite タスクを表示および編集します。 |
Tasks reader | Satellite タスクの表示のみが可能なロール。 |
Viewer | Satellite 構造、ログ、レポートおよび統計の各要素の設定を表示できる機能を提供する受動的なロール。 |
View hosts | ホストの表示のみが可能なロール。 |
Virt-who Manager | 完全な virt-who パーミッションのあるロール。 |
Virt-who Reporter | virt-who が生成したレポートを Satellite にアップロードできます。virt-who を手動で設定して、限定的な virt-who パーミッションを持つユーザーロールが必要な場合に使用できます。 |
Virt-who Viewer | virt-who 設定の表示ができます。このロールでは、既存の virt-who 設定 を使用した virt-who インスタンスのデプロイができます。 |
[a]
「ロールのパーミションの表示」 に記載されている特権ユーザーでは、事前定義されたロールに関連付けられている許可アクションをそのまま表示できます。
|
7.7. 詳細なパーミッションフィルターリング
「ロールへのパーミッションの追加」 の説明にあるように、Red Hat Satellite では、リソースタイプの選択済みインスタンスに対する設定済みユーザーパーミッションを制限できます。これらの詳細なフィルターは Satellite データベースに対するクエリーであり、ほとんどのリソースタイプでサポートされています。
7.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 ロールに追加します。
7.7.2. 詳細なパーミッションフィルターの使用例
管理者は、選択されたユーザーが環境パスの特定の部分を変更することを許可できます。以下のフィルターを使用すると、アプリケーションライフサイクルの開発段階にあるコンテンツを使用して作業できますが、実稼働環境にプッシュされるとそのコンテンツにはアクセスできなくなります。
7.7.2.1. ホストリソースタイプのパーミッションの適用
以下のクエリーは、host-editors という名前のグループのホストに対してのみ、ホストのリソースタイプに指定されたパーミッションを適用します。
hostgroup = host-editors
以下のクエリーは、XXXX, Yyyy、または zzzz の文字列に名前が一致するレコードを返します。
name ^ (XXXX, Yyyy, zzzz)
また、選択された環境に対するパーミッションを制限することもできます。これを行うには、検索 フィールドに環境名を指定します。以下に例を示します。
Dev
検索 ch フィールドでより詳細なパーミッションフィルターを使用すると、特定の組織またはロケーションにユーザーパーミッションを制限できます。ただし、リソースタイプによっては、ロケーション および 組織 タブを提供する 上書き チェックボックスが、GUI の代わりとなります。これらのタブでは、利用可能な組織とロケーションのリストから選択できます。詳細は、「組織固有のマネージャーロールの作成」 を参照してください。
7.7.2.2. 組織固有のマネージャーロールの作成
Satellite web UI を使って org-1 という名前の単一の組織に制限されたマネージャーロールを作成する方法を示します。
手順
- Satellite Web UI で、Administer > Roles に移動します。
- 既存の Organization admin ロールをクローンします。フィルター ボタンの横にあるドロップダウンリストから クローン を選択します。この結果、クローンされたロールの名前 (たとえば、org-1 admin) を挿入するよう求められます。
- ロールに関連付けるロケーションと組織をクリックします。
- 送信 をクリックしてロールを作成します。
- org-1 admin をクリックしてから フィルター をクリックし、関連付けられたフィルターを確認します。デフォルトのフィルターはほとんどのケースで機能します。ただし、必要に応じて、編集 をクリックして各フィルターのプロパティーを変更することもできます。フィルターによっては、ロールを追加のロケーションと組織のリソースにアクセスできるようにする場合には、上書き オプションを有効にできます。たとえば、ドメイン リソースタイプを選択して 上書き オプションを選択し、ロケーション と 組織 タブを使って追加のロケーションと組織を選択すると、このロールに関連付けられていない追加のロケーションと組織のドメインにこのロールがアクセスできるようになります。また、New filter をクリックして、新しいフィルターをこのロールに関連付けることもできます。
7.7.3. 詳細な検索に対してサポートされる演算子
表7.1 論理演算子
演算子 | 説明 |
and | 検索条件を組み合わせます。 |
not | 式を否定します。 |
has | オブジェクトには指定したプロパティーが必要です。 |
表7.2 記号演算子
演算子 | 説明 |
= | 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.数値フィールドのみに対応します。 |
第8章 メール通知の設定
メール通知は Satellite Server が定期的に作成するか、特定イベントの完了後に作成されます。定期通知は、毎日、毎週、または毎月送信することができます。
通知をトリガーするイベントと通知タイプについては、「通知タイプ」 を参照してください。
デフォルトでは、ユーザーにはメールは通知されません。通知のタイプや頻度などの基準に基づいて、ユーザーが通知を受信するように管理者が設定できます。
Satellite Server は、デフォルトで送信メールを有効化していないため、メール設定を確認する必要があります。詳細は、オンラインネットワーク環境での Satellite Server のインストール の Satellite Server での送信メールの設定 を参照してください。
8.1. 通知タイプ
Satellite では以下の通知が作成されます。
- 監査サマリー: Satellite Server が監査した全アクティビティーのサマリーです。
- ホストの構築: ホストが構築されるとこの通知が送信されます。
- ホストエラータアドバイザリー: ユーザーが管理するホストの適用およびインストール可能なエラータのサマリーです。
- OpenSCAP ポリシーサマリー: OpenSCAP ポリシーレポートとその結果のサマリーです。
- エラータのプロモート: コンテンツビューのプロモーション後にのみ送信される通知です。これには、プロモートされたコンテンツビューに登録された適用およびインストール可能なエラータのサマリーが含まれます。これにより、どの更新がどのホストに適用されたかを監視できます。
- Puppet エラー状態 : ホストが Puppet に関連するエラーを報告した後に送信される通知です。
- Puppet サマリー : Puppet レポートのサマリーです。
- エラータの同期 : リポジトリーの同期後にのみ送信される通知です。これには、同期で導入された新しいエラータのサマリーが含まれます。
8.2. 電子メール通知の設定
Satellite に登録されている個々のユーザーに電子メールメッセージを送信するように Satellite を設定できます。Satellite は、アカウントに追加されている電子メールアドレス (存在する場合) に電子メールを送信します。ユーザーは、Satellite web UI の右上にある自分の名前をクリックし、My account を選択することで、電子メールアドレスを編集できます。
Satellite Web UI でメール通知を設定します。
メール通知を個人のメールアドレスではなくグループのメールアドレスに送信する場合は、グループのメールアドレスと最小の Satellite パーミッションでユーザーアカウントを作成し、そのユーザーアカウントを必要な通知タイプにサブスクライブします。
手順
- Satellite Web UI で、Administer > Users に移動します。
- 編集する ユーザー名 をクリックします。
- ユーザー タブで、メール フィールドの値を確認します。メール通知は、このフィールドのアドレスに送信されます。
- メール設定 タブで メールの有効化 を選択します。
通知タイプの横にあるドロップダウンメニューから、ユーザーが受信する通知を選択します。
注記メールクエリー テキストボックスに必要なクエリーを記入すると、監査サマリー 通知をフィルターすることができます。
Submit をクリックします。
通知メールのユーザーへの送信が開始されます。
8.3. メールの配信テスト
メールの配信を確認するには、テストメールをユーザーに送信します。メールが配信されれば、設定が適切であることを確認できます。
手順
- Satellite Web UI で、Administer > Users に移動します。
- ユーザー名をクリックします。
メール設定 タブで テストメール をクリックします。
ユーザーのメールアドレスにすぐにテストメッセージが送信されます。
メールが配信されれば、確認は完了です。配信されない場合は、以下の診断ステップを実行してください。
- ユーザーのメールアドレスを確認します。
- Satellite Server のメール設定を確認します。
- ファイアウォールおよびメールサーバーのログを調べます。
8.4. 電子メール通知のテスト
ユーザーが正常に E メール通知をサブスクライブしていることを確認するには、手動で通知をトリガーします。
手順
通知をトリガーするには、以下のコマンドを実行します。
# foreman-rake reports:_My_Frequency_
My_Frequency を次のいずれかに置き換えます。
- daily
- weekly (毎週)
- monthly (毎月)
これでサブスクライブしている全ユーザーに指定された頻度ですべての予定されている通知が配信されます。サブスクライブしているユーザーがすべて通知を受信すれば、検証に成功しています。
現在、手動でトリガーした通知の個別ユーザーへの送信は、サポート対象外です。
8.5. ホストの電子メール通知設定の変更
Satellite は、ホストのイベント通知をホストの登録済み所有者に送信できます。個々のユーザーまたはユーザーグループのいずれかに電子メール通知を送信するように Satellite を設定できます。ユーザーグループに設定すると、電子メールタイプにサブスクライブしているすべてのグループメンバーがメッセージを受信します。
ホストの通知状態を表示するには、Hosts > All Hosts に移動して、表示したいホストをクリックします。ホストの詳細ページで、Additional Information タブをクリックすると、電子メール通知のステータスを表示できます。
ホストの電子メール通知を受信することは便利ですが、たとえば、既知の問題や回避しているエラーが原因で頻繁にエラーを受信することが予想される場合は、圧倒されます。ホストの電子メール通知設定を変更するには、次の手順を実行します。
手順
- Satellite web UI で、Hosts > All Hosts に移動し、変更する通知設定を持つホストを選択します。
- ホストのチェックボックスを選択し、アクションの選択 リストから 通知の有効化 または 通知の無効化 を必要に応じて選択します。
第9章 セキュリティーコンプライアンスの管理
セキュリティーコンプライアンス管理は、セキュリティーポリシーの定義、それらのポリシーへのコンプライアンスの監査、およびコンプライアンス違反のインスタンスの解決などを行う継続的なプロセスです。コンプライアンス違反は、組織の設定管理ポリシーに基づいて管理されます。セキュリティーポリシーは、ホスト固有のものから業界共通のものまでに及ぶため、ポリシー定義には柔軟性が必要になります。
9.1. セキュリティーコンテンツの自動化プロトコル
Satellite では、Security Content Automation Protocol (SCAP) を使ってセキュリティー設定ポリシーを定義します。たとえば、セキュリティーポリシーは、Red Hat Enterprise Linux を実行するホストの場合に SSH 経由のログインを root
アカウントに許可しないように指定することが可能です。Satellite を使用すると、すべての管理対象ホストでコンプライアンス監査とレポートをスケジュールできます。SCAP の詳細は、Red Hat Enterprise Linux 8セキュリティー強化 を参照してください。
9.1.1. SCAP コンテンツ
SCAP コンテンツは、ホストのチェックに使用される設定およびセキュリティーベースラインが含まれるデータストリーム形式のコンテンツです。チェックリストは extensible checklist configuration description format (XCCDF) および open vulnerability and assessment language (OVAL) の脆弱性に記述されます。ルール とも呼ばれるチェックリスト項目は、システム項目の必要な設定を表します。たとえば、どのユーザーも root
ユーザーアカウントを使用して SSH 経由でホストにログインできないように指定することができます。ルールは 1 つ以上のプロファイルに分類でき、複数のプロファイルで 1 つのルールを共有できるようにすることができます。SCAP コンテンツはルールとプロファイルの両方で設定されています。
SCAP コンテンツは、作成することも、ベンダーから取得することも可能です。サポート対象のプロファイルは、Red Hat Enterprise Linux の scap-security-guide
パッケージで提供されます。SCAP コンテンツの作成については本ガイドで扱いませんが、独自のコンテンツをダウンロード、デプロイ、変更、作成する方法は、Red Hat Enterprise Linux 8 セキュリティーの強化 を参照してください。
Satellite の OpenSCAP コンポーネントとともに提供されるデフォルトの SCAP コンテンツは、Red Hat Enterprise Linux のバージョンによって異なります。Red Hat Enterprise Linux 7 には、Red Hat Enterprise Linux 6 と Red Hat Enterprise Linux 7 の両方のコンテンツがインストールされます。
9.1.2. XCCDF プロファイル
XCCDF プロファイルは、ホストまたはホストグループの評価に使用されるチェックリストです。プロファイルは、業界標準またはカスタム標準への準拠を確認するために作成されます。
Satellite で提供されるプロファイルは、OpenSCAP project から取得できます。
9.1.3. 利用可能な XCCDF プロファイルの一覧表示
Satellite web UI で、利用可能な XCCD プロファイルを一覧表示します。
手順
- Satellite web UI で、Hosts > SCAP contents に移動します。
9.2. OpenSCAP プラグインのインストール
OpenSCAP プラグインをインストールして有効にして、OpenSCAP コンプライアンスレポートを生成できます。OpenSCAP プラグインは、メインの OpenSCAP プラグイン自体、OpenSCAP スマートプロキシープラグイン、および OpenSCAP Hammer CLI プラグインで設定されています。
手順
OpenSCAP プラグインを Satellite Server にインストールします。
# satellite-installer --enable-foreman-plugin-openscap --enable-foreman-proxy-plugin-openscap
OpenSCAP プラグインを Capsule Server にインストールします。
# satellite-installer --enable-foreman-proxy-plugin-openscap
OpenSCAP プラグイン Puppet モジュールをインストールします。
# dnf install puppet-foreman_scap_client
- Satellite web UI で、Configure > Puppet Classes に移動します。
Import environments from satellite.example.com をクリックします。
Puppet を使用して、Satellite Server および Capsules に OpenSCAP プラグインをインストールおよび設定できます。
9.3. SCAP コンテンツの設定
9.3.1. OpenSCAP Puppet モジュールのインポート
ホストで OpenSCAP 監査を設定するために Puppet を使用しない場合は、この手順をスキップできます。
OpenSCAP でホストを監査するには、先に Puppet 環境をインポートする必要があります。Puppet 環境には、OpenSCAP 設定をデプロイするために各ホストに割り当てる必要のある Puppe クラスが含まれます。
Satellite Web UI で、Puppet 環境と、監査する各ホストを関連付ける必要があります。
手順
- Satellite Web UI で、設定 > 環境 に移動します。
- satellite.example.com からの環境のインポート をクリックします。
監査するホストに関連付けられた Puppet 環境のチェックボックスを選択します。
Puppet 環境が存在しない場合には、実稼働 環境のチェックボックスを選択します。OpenSCAP に必要な Puppet クラスは、デフォルトで 実稼働 環境に含まれます。
- 更新 をクリックします。
9.3.2. デフォルト OpenSCAP コンテンツのロード
CLI で、次のいずれかの方法を使用して、デフォルトの OpenSCAP コンテンツをロードします。
手順
Hammer コマンドを使用します。
# hammer scap-content bulk-upload --type default
(非推奨)
foreman-rake
コマンドを使用します。# foreman-rake foreman_openscap:bulk_upload:default
9.3.3. 追加の SCAP コンテンツ
追加の SCAP コンテンツは、各自で作成したものか他から取得したものかを問わず、Satellite Server にアップロードできます。SCAP コンテンツは、ポリシーに適用される前に Satellite Server にインポートされる必要があります。
たとえば、Red Hat Enterprise Linux リポジトリーで利用可能な scap-security-guide
RPM パッケージには、Payment Card Industry Data Security Standard (PCI-DSS) バージョン 3 向けのプロファイルが含まれます。このコンテンツは、オペレーティングシステムのバージョン固有ではないため、Red Hat Enterprise Linux を実行していない場合でも Satellite Server にアップロードできます。
9.3.4. 追加の SCAP コンテンツのアップロード
Satellite Web UI で追加の SCAP コンテンツをアップロードします。Satellite Web UI の代わりに CLI を使用するには、CLI procedure を参照してください。
手順
- Satellite web UI で、Hosts > SCAP contents に移動し、New SCAP Content をクリックします。
タイトル テキストボックスにタイトルを入力します。
例:
RHEL 7.2 SCAP Content
- ファイルの選択 をクリックしてから、SCAP コンテンツファイルが含まれるロケーションに移動し、開く を選択します。
- Submit をクリックします。
SCAP コンテンツファイルが正常にロードされると、Successfully created RHEL 7.2 SCAP Content
(RHEL 7.2 SCAP コンテンツが正常に作成されました) といったメッセージが表示され、SCAP コンテンツ のリストに新規のタイトルが含まれます。
CLI 手順
SCAP コンテンツを Satellite Server にアップロードするには、次のコマンドを入力します。
# hammer scap-content bulk-upload \ --directory /usr/share/xml/scap/ssg/content/ \ --location "_My_Location_" \ --organization "_My_Organization_" \ --type directory
/usr/share/xml/scap/ssg/content/
の SCAP コンテンツは、scap-security-guide
パッケージの一部です。
9.4. コンプライアンスポリシーの管理
コンプライアンスポリシー とも呼ばれる定期監査は、XCCDF プロファイルに対して指定したホストのコンプライアンスをチェックするスケジュールタスクです。スキャンのスケジュールは Satellite Server で指定され、スキャンはホストで実行されます。スキャンが完了すると、Asset Reporting File (ARF) が XML 形式で生成され、Satellite Server にアップロードされます。スキャンの結果はコンプライアンスポリシーダッシュボードで確認できます。コンプライアンスポリシーでは、スキャンされるホストに変更はなされません。SCAP コンテンツには、関連付けられたルールのあるいくつかのプロファイルが含まれますが、デフォルトではポリシーは含まれません。
9.4.1. コンプライアンスポリシーの作成
Satellite では、ホストがセキュリティー要件に準拠するように、コンテンツホストをスキャンするコンプライアンスポリシーを作成できます。
Puppet または Ansible を使用して、ホストにコンプライアンスポリシーをデプロイできます。デフォルトでは Puppet は 30 分ごとに実行される点にご留意ください。新規ポリシーを割り当てる場合には、次の Puppet の実行でホストにポリシーを同期します。ただし、Ansible では、実行をスケジューリングできません。新しいポリシーを追加するには、手動またはリモート実行を使用して、Ansible ロールを実行する必要があります。リモート実行の詳細は、ホストの管理 の リモートジョブの設定とセットアップ を参照してください。
前提条件
開始する前に、Puppet または Ansible のどちらのデプロイメントを使用するかを決定すること。
- Puppet デプロイメントの場合は、監査する各ホストが Puppet 環境に関連付けられていることを確認します。詳細は、「OpenSCAP Puppet モジュールのインポート」 を参照してください。
-
Ansible デプロイメントの場合は、
theforeman.foreman_scap_client
Ansible ロールを必ずインポートしてください。Ansible ロールのインポートの詳細は、Red Hat Satellite での Ansible 統合を使用した設定の管理 の Satellite での Ansible の使用開始 を参照してください。
手順
- Satellite web UI で、Hosts > Policies に移動し、手動デプロイメント、Ansible デプロイメント、または Puppet デプロイメントのいずれを使用するかを選択します。
- ポリシーの名前、説明 (オプション) を入力してから 次へ をクリックします。
適用する SCAP コンテンツおよび XCCDF プロファイルを選択してから 次へ をクリックします。
openSCAP プラグインは、SCAP コンテンツロールにコンテンツがないかどうかを検出しないことに注意してください。これは、
デフォルトの XCCDF プロファイル
が空のレポートを返す可能性があることを意味します。ポリシーを適用する時間を指定してから 次へ をクリックします。
期間 のリストから、毎週、毎月、または カスタム を選択します。
- 毎週 を選択したら 平日 リストから曜日を選択します。
- 毎月 を選択したら 日付 フィールドで日付を指定します。
カスタム を選択したら Cron 行 フィールドに有効な Cron 式を入力します。
Custom オプションでは、毎週 もしくは 毎月 オプションよりもスケジュールに柔軟性を持たせることができます。
- ポリシーを適用するロケーションを選択してから 次へ をクリックします。
- ポリシーを適用する組織を選択してから 次へ をクリックします。
- ポリシーを適用するホストグループを選択してから 送信 をクリックします。
Puppet エージェントが選択したホストグループに属するホスト、またはポリシーが適用されているホストで実行される場合、OpenSCAP クライアントがインストールされ、Cron ジョブがポリシーの指定されたスケジュールとともに追加されます。SCAP Content
タブでは、すべてのターゲットホストのディレクトリー /var/lib/openscap/content/
に配信される SCAP コンテンツの名前を指定します。
9.4.2. コンプライアンスポリシーの表示
特定の OpenSCAP コンテンツおよびプロファイルの組み合わせ別に適用されるルールをプレビューできます。これは、ポリシーを計画する場合に便利です。
手順
- Satellite Web UI で、ホスト > ポリシー に移動します。
- ガイドの表示 をクリックします。
9.4.3. コンプライアンスポリシーの編集
Satellite web UI では、コンプライアンスポリシーを編集できます。
手順
- Satellite Web UI で、ホスト > ポリシー に移動します。
- ポリシーの名前の右側にあるドロップダウンリストから、編集 を選択します。
- 必要な属性を編集します。
- Submit をクリックします。
編集されたポリシーは、次に Puppet エージェントが Satellite Server で更新をチェックする際にホストに適用されます。これはデフォルトで 30 分ごとに実行されます。
9.4.4. コンプライアンスポリシーの削除
Satellite web UI では、既存のコンプライアンスポリシーを削除できます。
手順
- Satellite Web UI で、ホスト > ポリシー に移動します。
- ポリシーの名前の右側にあるドロップダウンリストから、削除 を選択します。
- 確認メッセージで OK をクリックします。
9.5. OpenSCAP ポリシーのカスタマイズ
ポリシーをフォークまたは書き換えることなく、Tailoring Files を使用して既存の OpenSCAP ポリシーをカスタマイズできます。テーラリングファイルは、ポリシー作成時や更新時にポリシーに割り当てることができます。
テーラリングファイルは SCAP Workbench を使用して作成することができます。SCAP Workbench ツールについての詳細は、Customizing SCAP Security Guide for your use-case を参照してください。
9.5.1. テーラリングファイルのアップロード
Satellite web UI で、Tailoring ファイルをアップロードできます。
手順
- Satellite の Web UI で Hosts > Compliance – Tailoring Files に移動し、New Tailoring File をクリックします。
- 名前 テキストボックスに、名前を入力します。
- ファイルの選択 をクリックしてから、SCAP DataStream テーラリングファイルが含まれるロケーションに移動し、開く を選択します。
- 送信 をクリックして、選択したテーラリングファイルをアップロードします。
9.5.2. テーラリングファイルのポリシーへの割り当て
Satellite Web UI でテーラリングファイルをポリシーに割り当てます。
手順
- Satellite web UI で、Hosts > Compliance - Policies に移動します。
- 新規ポリシー、または既存のコンプライアンスポリシーがある場合は、新規コンプライアンスポリシー をクリックします。
- 名前 テキストボックスに名前を入力して 次へ をクリックします。
- ドロップダウンメニューから Scap コンテンツ を選択します。
- ドロップダウンメニューから XCCDF プロファイル を選択します。
- ドロップダウンメニューから テーラリングファイル を選択します。
ドロップダウンメニューから テーラリングファイル内の XCCDF プロファイル を選択します。
テーラリングファイルは複数の XCCDF プロファイルを含めることが可能なため、XCCDF プロファイルの選択が重要になります。
- Next をクリックします。
- ドロップダウンメニューから 期間 を選択します。
- ドロップダウンメニューから 平日 を選択して、次へ をクリックします。
- 選択したアイテム ウィンドウに移動させる ロケーション を選択して、次へ をクリックします。
- 選択したアイテム ウィンドウに移動させる 組織 を選択して、次へ をクリックします。
- 選択したアイテム ウィンドウに移動させる ホストグループ を選択して、送信 をクリックします。
9.6. OpenSCAP 用のホストグループの設定
以下の手順を使用して、ホストグループに全 OpenSCAP 要件を設定します。
前提条件
- Capsule で OpenSCAP を有効にします。詳細は、Capsule Server のインストール の 外部 Capsule での OpenSCAP の有効化 を参照してください。
- OpenSCAP Capsule を割り当てます。
- OpenSCAP ポリシーをデプロイするための Puppet クラスを含む Puppet 環境を割り当ててます。
-
foreman_scap_client
およびforeman_scap_client::params
Puppet クラスを割り当てます。 - 追加するコンプライアンスポリシーを割り当てます。
ホストの作成および管理に関する詳細は、ホストの管理 ガイドを参照してください。
手順
- Satellite Web UI で 設定 > ホストグループ に移動して、ホストグループを作成するか、OpenSCAP レポートを設定するホストグループをクリックします。
-
Puppet 環境 リストから、
foreman_scap_client
およびforeman_scap_client::params
が含まれる Puppet 環境を選択します。 - OpenSCAP Capsule リストから、使用する OpenSCAP が有効になった Capsule を選択します。
-
Puppet クラス タブをクリックして、
foreman_scap_client
とforeman_scap_client::params
の Puppet クラスを追加します。 - 送信 をクリックして変更を保存します。
- Satellite Web UI で、ホスト > ポリシー に移動します。
- ホストグループに割り当てるポリシーを選択します。
- ホストグループ タブをクリックします。
- ホストグループ リストから、このポリシーに割り当てるホストグループを任意の数だけ割り当てます。
- 送信 をクリックして変更を保存します。
第10章 OpenSCAP スキャンの実行
手順
- Satellite Web UI で、ホスト >すべてのホスト に移動します。
- 1 つまたは複数のホストを選択します。
Run OpenSCAP scan をクリックします。
また、リモートジョブをスケジュールして、1 台または複数のホストをスキャンすることもできます。
10.1. OpenSCAP のホスト設定
以下の手順を使用して、ホスト向けの OpenSCAP の全要件を設定します。
前提条件
- Capsule で OpenSCAP を有効にします。詳細は、Capsule Server のインストール の 外部 Capsule での OpenSCAP の有効化 を参照してください。
- OpenSCAP Capsule を割り当てます。
- OpenSCAP ポリシーをデプロイするための Puppet クラスを含む Puppet 環境を割り当ててます。
-
foreman_scap_client
およびforeman_scap_client::params
Puppet クラスを割り当てます。 - 追加するコンプライアンスポリシーを割り当てます。
ホストの作成および管理に関する詳細は、ホストの管理 ガイドを参照してください。
手順
- Satellite Web UI で ホスト > すべてのホスト に移動して、OpenSCAP レポートを設定するホストで、編集 をクリックします。
-
Puppet 環境 リストから、
foreman_scap_client
およびforeman_scap_client::params
が含まれる Puppet 環境を選択します。 - OpenSCAP Capsule リストから、使用する OpenSCAP が有効になった Capsule を選択します。
-
Puppet クラス タブをクリックして、
foreman_scap_client
とforeman_scap_client::params
の Puppet クラスを追加します。 - コンプライアンスポリシーを追加するには、次のいずれかの場所に移動します。
- Satellite Web UI で、ホスト > すべてのホスト に移動します。
- ポリシーを追加するホストを選択します。
- アクションの選択 をクリックします。
- リストから コンプライアンスポリシーの割り当て を選択します。
- ポリシーウィンドウで、利用可能なポリシーの一覧からポリシーを選択して、送信 をクリックします。
10.2. コンプライアンスの監視
Satellite は、一元化されたコンプライアンスのモニターと管理を可能にします。コンプライアンスダッシュボードには、ホストのコンプライアンスの概要が表示され、そのポリシーの範囲内にある各ホストの詳細を表示する機能が提供されます。コンプライアンスレポートでは、適用可能なポリシーを使用して、各ホストのコンプライアンスの詳細を分析します。この情報を使用して、各ホストが提示するリスクを評価し、ホストがコンプライアンスを満たすために必要なリソースを管理できます。
SCAP を使用してコンプライアンスを監視する際の共通の目的には以下が含まれます。
- ポリシーコンプライアンスの表示
- コンプライアンスの変更の検知
10.2.1. コンプライアンスポリシーダッシュボード
コンプライアンスポリシーダッシュボードでは、ホストのコンプライアンスの統計的なサマリーが表示され、そのポリシーの範囲内にある各ホストの詳細を表示できます。コンプライアンス違反として評価されたすべてのホストについては、Failed
の統計から、コンプライアンスタスクの優先付けに便利なメトリクスが提供されます。Never audited
として検出されたホストも、ステータスが不明なため、優先する必要があります。

10.2.2. コンプライアンスポリシーダッシュボードの表示
Satellite Web UI を使用して、コンプライアンスポリシーダッシュボードでポリシーコンプライアンスを検証します。
手順
- Satellite Web UI で、ホスト > ポリシー に移動します。
必要なポリシー名をクリックします。ダッシュボードに次の情報が提供されます。
- ホストのポリシーコンプライアンスの状況を概要ビューで表示するリングチャート。
- ホストのポリシーに関するコンプライアンス状況についての統計の内訳 (表形式)。
- 各ホストの最新ポリシーレポートへのリンク。
10.2.3. コンプライアンスのメール通知
Satellite Server は、Openscap ポリシーサマリー のメール通知をサブスクライブしているすべてのユーザーに、OpenSCAP サマリーメールを送信します。通知メールをサブスクライブする方法の詳細は、「電子メール通知の設定」 を参照してください。ポリシーが実行されるたびに、Satellite は直前の実行との比較で結果をチェックし、変更がないかどうかを確認します。メールは各サブスクライバーがリクエストする頻度で送信され、各ポリシーのサマリーと直近の結果を提供します。
OpenSCAP サマリー メールメッセージには、以下の情報が含まれます。
- 対象とする期間の詳細。
- すべのホストの合計 (状況別): 変更済み、準拠、および非準拠。
- 各ホストの表形式の内訳と、合格、失敗、変更済み、または結果が不明な場合などのルールの合計を含む最新ポリシーの結果。
10.2.4. コンプライアンスレポート
コンプライアンスレポートには、ホストに対するポリシー実行の結果が出力されます。各レポートには、ポリシーごとの合格または不合格のルールの合計数が含まれます。デフォルトでは、レポートは日付の降順にリストされます。
Satellite Web UI で、ホスト > レポート に移動して、すべてのコンプライアンスレポートを一覧表示します。
コンプライアンスレポートは以下のエリアで設定されます。
- はじめに
- Evaluation Characteristics (評価特性)
- Compliance and Scoring (コンプライアンスおよびスコアリング)
- Rule Overview (ルールの概要)
Evaluation Characteristics (評価特性)
Evaluation Characteristics (評価特性) エリアでは、評価されたホスト、評価に使用されたプロファイル、および評価の開始と終了を含む、特定のプロファイルに対する評価についての詳細情報を提供します。参照用として ホストの IPv4、IPv6、および MAC アドレスも一覧表示されます。
名前 | 説明 | 例 |
---|---|---|
Target machine | 評価対象ホストの完全修飾ドメイン名 (FQDN)。 |
|
Benchmark URL | ホストが評価された SCAP コンテンツの URL。 |
|
Benchmark ID | ホストが評価されたベンチマークの識別子。ベンチマークは、プロファイルのセットです。 |
|
Profile ID | ホストが評価されたプロファイルの識別子。 |
|
Started at | 評価の開始日時 (ISO 8601 形式)。 |
|
Finished at | 評価の終了日時 (ISO 8601 形式)。 |
|
Performed by | ホストで評価を実行したローカルアカウントの名前。 |
|
Compliance and Scoring (コンプライアンスおよびスコアリング)
Compliance and Scoring (コンプライアンスおよびスコアリング) エリアでは、ホストがプロファイルのルールに準拠しているかどうかの概要、重大度別の非コンプライアンスの内訳、およびパーセンテージで示される全体のコンプライアンススコアを示します。ルールへのコンプライアンスがチェックされなかった場合には、ルール結果 フィールドで その他 として分類されます。
Rule Overview (ルールの概要)
Rule Overview (ルールの概要) エリアでは、階層的なレイアウトで示されるルールと、すべてのルールの詳細とコンプライアンスの結果を示します。
コンプライアンスレポートに組み込まれるルールの一覧を制限するためにチェックボックスを選択したり、解除したりします。たとえば、非コンプライアンスを重点的にレビューする場合には、pass および informational チェックボックスをクリアします。
すべてのルールを検索するには、検索 フィールドに条件を入力します。検索は、入力時に動的に適用されます。検索 フィールドは、単一のプレーンテキストの検索用語のみを受け入れ、それは大文字と小文字を区別しない検索に適用されます。検索の実行時には、説明が検索条件に一致するルールのみが一覧表示されます。検索フィルターを削除するには、検索条件を削除します。
各結果の説明については、結果 コラムに示されるステータスの上にカーソルを移動します。
10.2.5. ホストのコンプライアンス障害の調査
Satellite Web UI を使用して、ホストがルールのコンプライアンス違反をした理由を特定します。
手順
- Satellite Web UI で、ホスト > レポート に移動して、すべてのコンプライアンスレポートを一覧表示します。
- 個々のレポートの詳細を表示するには、特定のホストの行で レポートの表示 をクリックします。
詳細を確認するには、ルールのタイトルをクリックします。
- ルールの説明。可能な場合は、ホストがコンプライアンスを満たすための指示を含みます。
- ルールの根拠。
- 場合により、修復スクリプト。
推奨される修復操作やスクリプトのいずれについても、まず実稼働以外の環境でテストしてから実装するようにしてください。
10.2.6. コンプライアンスレポートの検索
コンプライアンスレポートの検索フィールドを使用して、任意のホストのサブセットに関して入手可能なレポート一覧を絞り込みます。
手順
- フィルターを適用するには、検索 フィールドに検索クエリーを入力し、検索 をクリックします。検索クエリーでは大文字と小文字は区別されません。
ユースケースの検索
以下の検索クエリーでは、6 つ以上のルールに合格しなかったコンプライアンスレポートが検索されます。
failed > 5
以下の検索クエリーでは、ホスト名に
prod-
の文字が含まれるホストで、YYYY 年 1 月 1 日より後に作成されたコンプライアンスレポートが検索されます。host ~ prod- AND date > "Jan 1, YYYY"
以下の検索クエリーでは、
rhel7_audit
コンプライアンスポリシーを使用して、1 時間前以降に生成されたすべてのレポートが検索されます。"1 hour ago" AND compliance_policy = date = "1 hour ago" AND compliance_policy = rhel7_audit
以下の検索クエリーでは、XCCDF ルールに合格のレポートが検索されます。
xccdf_rule_passed = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
以下の検索クエリーは、XCCDF ルールに不合格のレポートが検索されます。
xccdf_rule_failed = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
以下の検索クエリーは、結果が XCCDF ルールに合格または不合格以外のレポートが検索されます。
xccdf_rule_othered = xccdf_org.ssgproject.content_rule_firefox_preferences-auto-download_actions
追加情報
- 空の 検索 フィールドをクリックすると、利用可能な検索パラメーターが一覧表示されます。
-
and
、not
およびhas
の論理演算子を使用すると複雑なクエリーを作成することができます。論理演算子の詳細は、「詳細な検索に対してサポートされる演算子」 を参照してください。 - 正規表現は、検索クエリーで使用できません。ただし、1 つの検索式に複数のフィールドを使用できます。利用可能なすべての検索演算子の詳細は、「詳細な検索に対してサポートされる演算子」 を参照してください。
- 検索をブックマークすると、同じ検索クエリーを再利用できます。詳細は、「ブックマークの作成」 を参照してください。
10.2.7. コンプライアンスレポートの削除
Satellite のコンプライアンスレポートを削除できます。
手順
- Satellite Web UI で、ホスト > レポート に移動します。
- コンプライアンスレポートウィンドウで、削除するポリシーを特定し、ポリシーの名前の右側にある 削除 を選択します。
- OK をクリックします。
10.2.8. 複数のコンプライアンスレポートの削除
複数のコンプライアンスポリシーを同時に削除できます。ただし、Satellite Web UI では、コンプライアンスポリシーはページ分割されているため、レポートを 1 ページずつ削除する必要があります。すべての OpenSCAP レポートを削除する場合は、API ガイド の OpenSCAP レポートの削除 セクションにあるスクリプトを使用してください。
手順
- Satellite Web UI で、ホスト > レポート に移動します。
- コンプライアンスレポートウィンドウで、削除するコンプライアンスレポートを選択します。
- リストの右上の レポートの削除 を選択します。
- 削除するページ数だけ、この手順を繰り返します。
10.3. OpenSCAP でサポートされる仕様
以下の仕様が OpenSCAP でサポートされています。
タイトル | 説明 | バージョン |
---|---|---|
XCCDF | Extensible Configuration Checklist Description Format | 1.2 |
OVAL | Open Vulnerability and Assessment Language | 5.11 |
- | Asset Identification | 1.1 |
ARF | Asset Reporting Format | 1.1 |
CCE | Common Configuration Enumeration | 5.0 |
CPE | Common Platform Enumeration | 2.3 |
CVE | Common Vulnerabilities and Exposures | - |
CVSS | Common Vulnerability Scoring System | 2.0 |
第11章 Satellite Server および Capsule Server のバックアップ
災害発生時に、Red Hat Satellite デプロイメントと関連データの継続性を確保するために、Satellite デプロイメントをバックアップすることができます。デプロイメントでカスタム設定を使用する場合は、バックアップおよび災害復旧ポリシーを策定する際にカスタム設定をどのように扱うかについて考慮する必要があります。
Satellite Server と Capsule Server のどちらか、およびすべての関連データのバックアップを作成するには、satellite-maintain backup
コマンドを使用します。別のシステム上の別のストレージデバイスにバックアップすることを強くお勧めします。
バックアップ中は Satellite サービスは利用できません。したがって、他の管理者が他のタスクをスケジュールしていないか確認する必要があります。cron
を使用して、バックアップをスケジュールできます。詳細は、「週次の完全バックアップ後の日次増分バックアップ例」 を参照してください。
オフラインバックアップまたはスナップショットバックアップ中はサービスが非アクティブになり、Satellite はメンテナーンスモードに入ります。ポート 443 上での外部からのトラフィックはすべてファイアウォールで拒否され、修正がトリガーされないようになります。
バックアップには、/root/ssl-build
ディレクトリーの機密情報が含まれます。たとえば、ホスト名、SSH キー、要求ファイル、SSL 証明書が含まれる場合があります。バックアップを暗号化するか、安全な場所に移動し、破損のリスクやホストへの不正アクセスを最小限に抑えます。
従来のバックアップ方法
従来のバックアップ方法を使用することもできます。詳細は、Red Hat Enterprise Linux 8 の基本的なシステム設定の設定 の システムの回復と復元 を参照してください。
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/qpidd /var/lib/tftpboot /etc /root/ssl-build \ /var/www/html/pub /opt/puppetlabs 886M /var/lib/qpidd 16M /var/lib/tftpboot 37M /etc 900K /root/ssl-build 100K /var/www/html/pub 2M /opt/puppetlabs 942M total
圧縮データを保存するために必要な領域を計算します。
以下の表は、バックアップに含まれるすべてのデータ項目の圧縮率を示しています。
表11.1 バックアップデータ圧縮率
データ型 ディレクトリー 比率 圧縮結果の例 PostgreSQL データベースファイル
/var/lib/pgsql/data
80 – 85%
100 GB → 20 GB
Pulp RPM ファイル
/var/lib/pulp
(非圧縮)
100 GB
設定ファイル
/var/lib/qpidd
/var/lib/tftpboot
/etc
/root/ssl-build
/var/www/html/pub
/opt/puppetlabs
85%
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 のバックアップには、以下の 3 つの方法があります。
- オフラインバックアップ
- オンラインバックアップ
スナップショットバックアップ
それぞれの方法の詳細については、各バックアップ方法の使用法ステートメントを表示できます。
オフラインバックアップ
# satellite-maintain backup offline --help
オンラインバックアップ
# satellite-maintain backup online --help
スナップショットのバックアップ
# satellite-maintain backup snapshot --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
オプションを使用する場合、バックアップが失敗してもデータは削除されません。
ローカルの PostgresSQL データベースを使用する場合、postgres
ユーザーには、バックアップディレクトリーへの書き込みアクセス権が必要です。
リモートデータベース
satellite-maintain backup
コマンドを使用して、リモートデータベースをバックアップできます。
リモートデータベースのバックアップには、オンラインとオフラインの両方の方法を使用できますが、スナップショットなどのオフライン方法を使用すると satellite-maintain backup
コマンドはデータベースダンプを実行します。
前提条件
- バックアップ場所には、バックアップを保存するのに十分な空きディスク領域があること。詳細は、「バックアップサイズの予測」 を参照してください。
Satellite Server および Capsule Server の他のユーザーにすべての変更を保存するよう指示して、バックアップ中は Satellite サービスが利用できないことを警告してください。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
手順
Satellite Server で以下のコマンドを入力します。
# satellite-maintain backup offline /var/satellite-backup
Capsule 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_directory
2 回目増分バックアップを作成するには、
--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. オンラインバックアップの実行
デバッグ目的でのみ、オンラインバックアップを実行します。
オンラインバックアップに関するリスク
オンラインバックアップ実行時は、Pulp データベースに影響を与える手順がある場合は、Pulp 部分のバックアップ手順は変更がなくなるまで繰り返されます。Pulp データベースのバックアップは Satellite バックアップの中で最も時間のかかる部分であるため、バックアップ中に Pulp データベースが変更される変更を加えると、バックアップ手順が繰り返されます。
実稼働環境では、スナップショット方法を使用します。詳細は、「スナップショットバックアップの実行」 を参照してください。実稼働環境でオンラインバックアップ方法を使用する場合は、バックアップ中に変更がないように注意して実行してください。
Satellite Server および Capsule Server の他のユーザーにすべての変更を保存するよう指示して、バックアップ中は Satellite サービスが利用できないことを警告してください。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
前提条件
- バックアップ場所には、バックアップを保存するのに十分な空きディスク領域があること。詳細は、「バックアップサイズの予測」 を参照してください。
手順
オンラインバックアップを実行するには、以下のコマンドを入力します。
# satellite-maintain backup online /var/backup_directory
11.7. スナップショットバックアップの実行
Pulp および PostgreSQL ディレクトリーの論理ボリュームマネージャー (LVM) スナップショットを使用するスナップショットバックアップを実行できます。LVM スナップショットからバックアップを作成すると、一貫性のないバックアップのリスクが軽減されます。
スナップショットバックアップ方法は、完全なオフラインバックアップよりも速いため、Satellite のダウンタイムが短縮されます。
使用方法を表示するには、以下のコマンドを入力します。
satellite-maintain backup snapshot -h
Satellite Server および Capsule Server の他のユーザーにすべての変更を保存するよう指示して、バックアップ中は Satellite サービスが利用できないことを警告してください。バックアップと同じ時間に他のタスクがスケジュールされていないことを確認してください。
前提条件
-
システムは、スナップショットを作成するディレクトリー (
/var/lib/pulp/
) および (/var/lib/pgsql
) に LVM を使用します。 - 関連ボリュームグループ (VG) の空きディスク領域が、スナップショットのサイズの 3 倍あること。正確には、VG には新規スナップショットを受け入れるために十分な、メンバーの論理ボリューム (LV) に予約されていない領域が必要になります。また、LV のいずれかには、バックアップディレクトリー用の十分な空き領域が必要になります。
- ターゲットのバックアップディレクトリーが、スナップショットを作成するディレクトリー以外の LV にあること。
手順
スナップショットバックアップを実行するには、
satellite-maintain backup snapshot
コマンドを入力します。# satellite-maintain backup snapshot /var/backup_directory
satellite-maintain backup snapshot
コマンドは、サービスがアクティブな際にスナップショットを作成し、バックアップに影響を与える可能性があるすべてのサービスを停止します。これにより、メンテナーンスの時間が短縮されます。バックアップが正常に実行されると、全サービスが再起動され、LVM スナップショットが削除されます。
11.8. バックアップを実行する際のホワイトリスト化とスキップの手順
satellite-maintain backup
コマンドを使用したバックアップは、ステップ順に進められます。バックアップの一部を省略するには、--whitelist
オプションをコマンドに追加し、省略するステップのラベルを追加します。
手順
利用可能なステップのラベルを一覧表示するには、以下のコマンドを入力します。
# satellite-maintain advanced procedure run -h
バックアップの手順をスキップするには、
--whitelist
オプションを指定してsatellite-maintain backup
コマンドを入力します。以下に例を示します。# satellite-maintain backup online --whitelist backup-metadata -y /var/backup_directory
第12章 バックアップからの Satellite Server または Capsule Server の復元
Satellite Server または Capsule Server は、11章Satellite Server および Capsule Server のバックアップ の一部として作成したバックアップデータから復元することができます。このプロセスでは、バックアップを生成したサーバーと同じサーバーでバックアップを復元する方法を概説します。バックアップに含まれる全データはターゲットシステムで削除されます。元のシステムが利用できない場合は、同じ設定およびホスト名でシステムをプロビジョニングしてください。
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 がある場合は、完全バックアップと復元するブランチの各増分バックアップを時系列で選択します。
復元プロセスが完了するとすべてのプロセスがオンラインになり、すべてのデータベースおよびシステム設定がバックアップ時の状態に戻ります。
手順
- 「完全バックアップからの復元」 の手順を使用して、最新の完全バックアップを復元します。
-
/var/
や/var/tmp/
などの Satellite Server のローカルファイルシステムから完全バックアップデータを削除します。 -
/var/
や/var/tmp/
などの Satellite Server のローカルファイルシステムに増分バックアップデータをコピーします。 増分バックアップが作成された順序で復元します。
# satellite-maintain restore -i /var/backup_directory/FIRST_INCREMENTAL # satellite-maintain restore -i /var/backup_directory/SECOND_INCREMENTAL
satellite-maintain backup
コマンドを使用してバックアップを作成した場合は、このコマンドに-i
オプションを使用する必要はありません。
関連情報
-
トラブルシューティングを行うには、
/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 に接続されたことを確認します。この後に、「外部 Capsule の同期」 の手順で Satellite から同期します。
12.3.1. 外部 Capsule の同期
外部 Capsule と Satellite を同期します。
手順
- 外部 Capsule から同期 するには、Satellite web UI で関連する組織とロケーションを選択するか、Any Organization と Any Location を選択します。
- Satellite web UI で、Infrastructure > Capsules に移動し、カプセルの名前をクリックして同期します。
- 概要 タブで 同期 を選択します。
第13章 Satellite Server または Capsule Server の名前の変更
Satellite Server または Capsule Server の名前を変更するには、satellite-change-hostname
スクリプトを使用する必要があります。
Satellite Server の名前を変更する場合は、すべての Satellite クライアントを再登録し、新しい Satellite ホスト名を指すように各 Capsule Server を設定する必要があります。カスタム SSL 証明書を使用する場合は、新しいホスト名で再生成する必要があります。virt-who を使用する場合は、新しいホスト名で virt-who 設定ファイルを更新する必要があります。
Capsule Server の名前を変更する場合は、すべての Capsule クライアントを再登録し、Satellite Web UI で Capsule ホスト名を更新する必要があります。カスタム SSL 証明書を使用する場合は、新しいホスト名で再生成する必要があります。
名前変更プロセスを実行すると、変更対象であるホストの Satellite Server 上の全サービスがシャットダウンされます。名前変更が完了すると、全サービスが再開されます。
13.1. Satellite Server の名前の変更
Satellite Server のホスト名は、Satellite Server のコンポーネント、すべての Capsule Server、および Satellite Server に登録されているホストが通信用に使用しています。この手順により、新規ホスト名への参照をすべて更新することができます。
外部認証を使用している場合は、satellite-change-hostname
スクリプトの実行後に、外部認証向けに Satellite Server を再設定する必要があります。satellite-change-hostname
スクリプトは、Satellite Server 用の外部認証を破棄してしまいます。詳細は、オンラインネットワーク環境からの Satellite Server のインストール の 外部認証の設定 を参照してください。
virt-who を使用する場合、satellite-change-hostname
スクリプトを実行した後、新しいホスト名で virt-who 設定ファイルを更新する必要があります。詳細は、Red Hat Satellite での仮想マシンサブスクリプションの設定 の virt-who 設定の修正 を参照してください。
前提条件
-
hostname
コマンドとhostname -f
コマンドの両方で、Satellite Server の FQDN を返す必要があります。そうしないと、satellite-change-hostname
スクリプトが完了しません。hostname
コマンドが FQDN の代わりに Satellite Server のショートネームを返す場合、satellite-change-hostname
スクリプトの使用を試みる前に、hostnamectl set-hostname old_fqdn
を 使用して古い FQDN を正しく設定する必要があります。 - ホスト名を変更する前に、Satellite Server のバックアップを実行してください。名前変更プロセスが失敗した場合は、バックアップから復元してください。詳細は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
- オプション: Satellite Server がカスタムの SSL 証明書をインストールしている場合は、ホストの新しい名前用に新しい証明書を取得すること。詳細は、オンラインネットワーク環境からの Satellite Server のインストール の カスタムの SSL 証明書での Satellite Server の設定 を参照してください。
手順
Satellite Server で
satellite-change-hostname
スクリプトを実行する適切な方法を選択して、新しいホスト名と Satellite 認証情報を提供します。Satellite Server をデフォルトの自己署名 SSL 証明書でインストールした場合は、以下のコマンドを入力します。
# satellite-change-hostname new-satellite \ --username admin \ --password password
Satellite Server をカスタムの SSL 証明書でインストールした場合は、以下を実行します。
# satellite-change-hostname new-satellite \ --username admin \ --password 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 のインストール の カスタムの SSL 証明書の Satellite Server へのインストール を参照してください。
- すべての Satellite ホストを再登録します。詳細は、ホストの管理 の ホストの登録 を参照してください。
すべての Capsule Server で、Satellite インストールスクリプトを実行して、新規ホスト名への参照を更新します。
# satellite-installer \ --foreman-proxy-foreman-base-url https://new-satellite.example.com \ --foreman-proxy-trusted-hosts new-satellite.example.com \ --puppet-server-foreman-url https://new-satellite.example.com
Satellite Server で、すべての Capsule Server を一覧表示します。
# hammer capsule list
Satellite Server で、コンテンツを各 Capsule Server に同期します。
# hammer capsule content synchronize \ --id My_capsule_ID
13.2. Capsule Server の名前の変更
Capsule Server のホスト名は、Satellite Server のコンポーネントおよび Capsule Server に登録されている全ホストが参照しています。この手順により、新規ホスト名への参照をすべて更新することができます。
-
hostname
コマンドとhostname -f
コマンドの両方で、Capsule Server の FQDN を返す必要があります。そうしないと、satellite-change-hostname
スクリプトが完了しません。 -
hostname
コマンドが FQDN ではなく Capsule Server のショートネームを返す場合、satellite-change-hostname
スクリプトを使用する前に、hostnamectl set-hostname old_fqdn
を使用して古い FQDN を正しく設定する必要があります。
前提条件
Capsule Server をバックアップすること。
satellite-change-hostname
スクリプトを実行すると、Capsule Server への変更は元に戻せません。名前変更プロセスが失敗した場合は、バックアップから復元してください。ホスト名を変更する前にバックアップを実行してください。詳細は、11章Satellite Server および Capsule Server のバックアップ を参照してください。
手順
Satellite Server で、Capsule Server の 新しい証明書のアーカイブファイルを生成します。
デフォルトの SSL 証明書を使用している場合は、以下のコマンドを実行します。
# capsule-certs-generate \ --foreman-proxy-fqdn new-capsule.example.com \ --certs-tar /root/new-capsule.example.com-certs.tar
.tar
ファイルへの完全パスを必ず入力してください。- カスタムの SSL 証明書を使用している場合は、Capsule Server 用の新しい SSL 証明書を作成します。詳細は、Capsule Server のインストールの カスタム SSL 証明書を使用した Capsule Server の設定 を参照してください。
Satellite Server 上で、証明書アーカイブファイルを Capsule Server にコピーし、プロンプトが表示されたら、
root
ユーザーのパスワードを提供します。この例では、アーカイブファイルはroot
ユーザーのホームディレクトリーにコピーされますが、別の場所にコピーすることもできます。# scp /root/new-capsule.example.com-certs.tar root@capsule.example.com:
Capsule Server で
satellite-change-hostname
スクリプトを実行し、新しいホスト名と Satellite 認証情報、および証明書アーカイブファイル名を提供します。# satellite-change-hostname new-capsule --username admin \ --password password \ --certs-tar /root/new-capsule.example.com-certs.tar
.tar
ファイルへの完全パスを必ず入力してください。-
オプション: Capsule Server で、Capsule Server のカスタム証明書を作成した場合、証明書をデプロイするには、
capsule-certs-generate
コマンドが返すsatellite-installer
コマンドを入力します。詳細は、Capsule Server のインストール の カスタムの SSL 証明書の Capsule Server へのデプロイ を参照してください。 すべての Capsule クライアントで、以下のコマンドを入力して、ブートストラップ RPM を再インストールし、クライアントを再登録して、サブスクリプションを更新します。
この手順は、リモート実行機能を使用して実行できます。詳細は、ホストの管理の リモートジョブの設定とセットアップ を参照してください。
# dnf remove katello-ca-consumer* # dnf install http://new-capsule.example.com/pub/katello-ca-consumer-latest.noarch.rpm # subscription-manager register --org="My_Organization" \ --environment="Library" \ --force # subscription-manager refresh
- Satellite Web UI で、インフラストラクチャー > Capsules に移動します。
- リストで Capsule Server を見つけ、右側にある 編集 をクリックします。
- 名前 と URL フィールドが Capsule Server の新規ホスト名に一致するように変更して、送信 をクリックします。
- DNS サーバーで、Capsule Server の新規ホスト名用のレコードを追加し、古いホスト名のレコードを削除します。
第14章 Satellite Server のメンテナーンス
本章では、監査レコードの取り扱い、未使用タスクの消去方法、いっぱいになったディスクから Pulp を復元する方法などの Satellite Server のメンテナーンス方法について説明します。
14.1. 監査レコードの削除
監査レコードは Satellite で自動作成されます。foreman-rake audits:expire
コマンドを使うと、監査はいつでも取り消すことができます。また、cron ジョブを使用して、設定した間隔で、監査レコードの削除をスケジューリングすることも可能です。
デフォルトでは、foreman-rake audits:expire
コマンドを使用すると 90 日以上経過した監査レコードが削除されます。days オプションに日数を追加して、監査レコードを保持する日数を指定することが可能です。
たとえば、7 日以上経過した監査レコードを削除する場合は、以下のコマンドを実行します。
# foreman-rake audits:expire days=7
14.2. 監査レコードの匿名化
foreman-rake audits:anonymize
コマンドを使うと、データベースで監査レコードを保持しつつ、ユーザーアカウントや IP 情報を削除できます。また、cron ジョブを使用して、設定した間隔で、監査レコードの匿名化をスケジューリングすることも可能です。
デフォルトでは、foreman-rake audits:anonymize
コマンドを使用すると 90 日以上経過した監査レコードが匿名化されます。days オプションに日数を追加して、監査レコードを保持する日数を指定することが可能です。
たとえば、7 日以上経過した監査レコードを匿名化する場合は、以下のコマンドを実行します。
# foreman-rake audits:anonymize days=7
14.3. レポートのレコード削除
レポートレコードは Satellite で自動作成されます。foreman-rake reports:expire
コマンドを使用して、いつでもレポートを削除できます。また、cron ジョブを使用して、設定した間隔で、レポートレコードの削除をスケジューリングすることも可能です。
デフォルトでは、foreman-rake reports:expire
コマンドを使用すると 90 日以上経過したレポートレコードが削除されます。days オプションに日数を追加して、レポートレコードを保持する日数を指定することが可能です。
たとえば、7 日以上経過したレポートレコードを削除する場合は、以下のコマンドを実行します。
# foreman-rake reports:expire days=7
14.4. 未使用タスクのクリーニング機能の設定
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 false
Satellite で定期的なタスクのクリーンアップを再度有効にするには、次のコマンドを入力します。
# satellite-installer --foreman-plugin-tasks-automatic-cleanup true
14.5. タスクレコードの削除
タスクレコードは Satellite で自動作成されます。foreman-rake foreman_tasks:cleanup
コマンドを使用して、いつでもタスクを削除できます。また、cron ジョブを使用して、設定した間隔で、タスクレコードの削除をスケジューリングすることも可能です。
たとえば、正常なレポジトリー同期からタスクレコードを削除する場合には、以下のコマンドを実行します。
# foreman-rake foreman_tasks:cleanup TASK_SEARCH='label = Actions::Katello::Repository::Sync' STATES='stopped'
14.6. 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.7. 完全なディスクからのリカバリー
以下の手順では、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 8 の論理ボリュームの設定および管理 の 論理ボリュームおよびファイルシステムの拡張 を参照してください。注記(ext3、ext4、または xfs などの) 通常外のファイルシステムを使用している場合は、そのファイルシステムをアンマウントして使用されていない状態にする必要があります。その場合は、以下を実行します。
Satellite サービスを停止します。
# satellite-maintain service stop
- LV 上のファイルシステムを拡張します。
Satellite サービスを起動します。
# satellite-maintain service start
- ディスクに空きスペースがないために Pulp タスクが失敗していた場合は、それらのタスクを再実行します。
14.8. Satellite Server または CapsuleServer のベースオペレーティングシステムでのパッケージの管理
Satellite Server または Capsule Server のベースオペレーティングシステムでパッケージをインストールして更新するには、satellite-maintain packages
コマンドを入力する必要があります。Satellite では、yum
を使用したパッケージのインストールと更新はできません。理由は、yum
が Satellite Server または Capsule Server 関連のパッケージも更新し、その結果システムの不整合が発生する可能性があるためです。
パッケージのインストール後に satellite-installer
コマンドが実行されるため、satellite-maintain packages
コマンドは、このコマンドを実行するオペレーティングシステムのサービスの一部を再起動します。
手順
Satellite Server または CapsuleServer にパッケージをインストールするには、次のコマンドを入力します。
# satellite-maintain packages install package_1 package_2
Satellite Server または CapsuleServer で特定のパッケージを更新するには、次のコマンドを入力します。
# satellite-maintain packages update package_1 package_2
Satellite Server または CapsuleServer 上のすべてのパッケージを更新するには、次のコマンドを入力します。
# satellite-maintain packages update
yum を使用したパッケージ更新の確認
yum
を使用して更新を確認する場合は、コマンドを入力して手動でパッケージをインストールおよび更新してから、yum
を使用して更新を確認できます。
# satellite-maintain packages unlock # yum check update # satellite-maintain packages lock
パッケージを個別に更新すると、Satellite Server または CapsuleServer でパッケージの不整合が発生する可能性があります。Satellite Server でのパッケージの更新の詳細については、Satellite Server の更新 を参照してください。
Satellite Server または Capsule Server Package Management の yum を有効にする
yum
を使用して直接システムにパッケージをインストールして更新し、システムの安定性をご自身で管理する場合は、以下のコマンドを入力します。
# satellite-maintain packages unlock
パッケージ管理のデフォルト設定への復元
デフォルト設定を復元して Satellite Server または Capsule Server を有効にし、ユーザーが yum
を使用してパッケージをインストールおよび更新できないようにし、システムの安定性を確保する必要がある場合は、以下のコマンドを入力します。
# satellite-maintain packages lock
14.9. PostgreSQL 領域の確保
PostgreSQL データベースは、特に負荷の高いデプロイメントにおいて、大容量のディスク領域を使用できます。この手順を使用して、Satellite でこのディスク領域の一部を確保します。
手順
postgresql
サービス以外の全サービスを停止します。# satellite-maintain service stop --exclude postgresql
postgres
ユーザーに切り替えてデータベースの領域を確保します。# su - postgres -c 'vacuumdb --full --all'
Vacuum が完了したら、他のサービスを開始します。
# satellite-maintain service start
第15章 問題のログとレポート
本章では、関連するログファイルに関する情報、デバッグロギングを有効にする方法、サポートケースを開き、関連するログ tar ファイルを添付する方法、Satellite Web UI 内でサポートケースにアクセスする方法など、Satellite における問題のログおよびレポート方法について説明します。
本章で説明されたログファイルと他の情報を使用して独自にトラブルシューティングを行ったり、サポートが必要な場合は、これらの情報と他の多くのファイルとともに診断および設定情報を取得して Red Hat サポートに送信することができます。
Satellite のロギング設定の詳細は、satellite-installer
を使用し、--full-help
オプションを指定します。
# satellite-installer --full-help | grep logging
15.1. デバッグロギングの有効化
デバッグロギングでは、最も詳細にわたるログ情報が提供され、Satellite とそのコンポーネントで発生する可能性がある問題のトラブルシューティングが簡単になります。Satellite CLI で、デバッグロギングを有効にして、Satellite の詳細なデバッグ情報をログに記録します。
手順
デバッグロギングを有効にするには、次のコマンドを入力します。
# satellite-installer --foreman-logging-level debug
デバッグが完了したら、ロギングレベルをデフォルト値にリセットします。
# satellite-installer --reset-foreman-logging-level
15.2. デバッグに役立つログレベルの増加
デフォルトでは、Satellite には :INFO
レベルのロギングが有効になっています。Satellite のログレベルを増減できます。
すべてのコンポーネントでデバッグレベルのログを有効にする
# hammer admin logging --all --level-debug # satellite-maintain service restart
特定のコンポーネントのデバッグレベルのログを有効にする
# hammer admin logging --components "Component" --level-debug
デバッグレベルのログを INFO
に戻す
# hammer admin logging --all --level-production # satellite-maintain service restart
すべてのコンポーネントと変更された設定ファイルの一覧表示
# hammer admin logging --list -----------|-------------------------------------|------------------------------------- COMPONENT | AUTO-DETECTED BY EXISTENCE OF | DESTINATIONS -----------|-------------------------------------|------------------------------------- dhcpd | /etc/dhcp/dhcpd.conf | syslog /var/log/dhcpd-debug.log postgresql | /var/lib/pgsql/data/postgresql.conf | syslog /var/lib/pgsql/data/pg_log/ proxy | /etc/foreman-proxy/settings.yml | /var/log/foreman-proxy/proxy.log qpidd | /etc/qpid/qpidd.conf | syslog rails | /etc/foreman/settings.yaml | /var/log/foreman/production.log tomcat | /etc/candlepin/candlepin.conf | /var/log/candlepin/ /var/log/tomcat/ virt-who | /etc/sysconfig/virt-who | syslog -----------|-------------------------------------|-------------------------------------
15.2.1. ハンマーのログレベルを上げる
Hammer のログは ~/.hammer/log/hammer.log
にあります。/etc/hammer/cli_config.yml
を編集し、:log_level:
: を設定します
:log_level: 'debug'
15.2.2. Capsule のログレベルを上げる
Capsule のログは、/var/log/foreman-proxy/proxy.log
にあります。/etc/foreman-proxy/settings.yml
の DEBUG
行のコメントを解除します。
:log_level: DEBUG
その後、必ず foreman-proxy
サービスを再起動してください。
# systemctl restart foreman-proxy
インストーラーを実行すると、この変更が元に戻ります。
15.2.3. Candlepin のログレベルを上げる
Candlepin のログは /var/log/candlepin/candlepin.log
にあります。/var/log/candlepin/error.log
のデバッグを容易にするために、エラーも別のファイルに記録されます。
/etc/candlepin/candlepin.conf
を拡張します:
log4j.logger.org.candlepin=DEBUG
その後、必ず tomcat
サービスを再起動してください。
# systemctl restart tomcat
candlepin ログファイルが冗長すぎる場合は、デフォルトのデバッグレベルを下げることができます。
log4j.logger.org.candlepin.resource.ConsumerResource=WARN log4j.logger.org.candlepin.resource.HypervisorResource=WARN
15.2.4. Satellite のログレベルを上げる
Satellite のログは /var/log/foreman/production.log
にあります。
Satellite は Apache のログを次の場所に保存します。
-
/var/log/httpd/foreman_error.log
-
/var/log/httpd/foreman_access.log
-
/var/log/httpd/foreman_ssl_error.log
-
/var/log/httpd/foreman_ssl_access.log
手順
/etc/foreman/settings.yaml
でログレベルを設定します::logging: :production: :type: file :layout: pattern :level: debug
/etc/foreman/settings.yaml
で選択したロガーを有効にします::loggers: :ldap: :enabled: true :permissions: :enabled: true :sql: :enabled: true
一部の領域からのログを表示するには、デバッグログを設定する必要があることに注意してください。
Satellite サービスを再起動します。
# satellite-maintain service restart
デフォルト値を持つロガーの完全なリストは、Foreman::Logging.add_loggers
コマンドの /usr/share/foreman/config/application.rb
にあります。
15.2.5. Qpid ディスパッチルーターのログレベルを上げる
Qpid は syslog にログを記録し、/var/log/messages
または journalctl
で表示できます。/etc/qpid-dispatch/qdrouterd.conf
でデバッグログを有効にします。
enable: debug+
その後、必ず Qpid Dispatch Router を再起動してください。
# systemctl restart qdrouterd
インストーラーを実行すると、この変更が元に戻ります。
15.2.6. Qpid Broker のログレベルを上げる
Qpid は syslog にログを記録し、/var/log/messages
または journalctl
で表示できます。/etc/qpid/qpidd.conf
でログレベルを設定します。
log-enable=debug+
その後、必ず Qpid Broker を再起動してください。
# systemctl restart qpidd
インストーラーを実行すると、この変更が元に戻ります。
15.2.7. Redis のログレベルを上げる
Redis のログは /var/log/redis/redis.log
にあります。/etc/opt/rh/rh-redis5/redis.conf
でログレベルを設定します。
loglevel debug
その後、必ず Redis サービスを再起動してください。
# systemctl restart rh-redis5-redis
15.2.8. Postgres のログレベルを上げる
Postgres のログは /var/lib/pgsql/data/log
にあります。/var/lib/pgsql/data/postgresql.conf
の log_statement
のコメントを外します。
log_statement = 'all'
後で必ず Satellite サービスを再起動してください。
# satellite-maintain service restart
Satellite インストールのサイズに基づいて、これによりディスクスペースがすぐにいっぱいになる可能性があります。どうしても必要な場合にのみこれをオンにしてください。
デバッグログ設定の詳細は、Postgresql のドキュメント を参照してください。
15.2.9. Satellite インストーラーのログレベルの増加
ログファイルは /var/log/foreman-installer/
にあります。インストール中に Satellite Installer のログレベルを上げるには:
# satellite-installer --verbose-log-level debug
15.2.10. Pulp のログレベルを上げる
デフォルトでは、Pulp は syslog にログを記録し、/var/log/messages
または journalctl
で表示できます。次の設定を /etc/pulp/settings.py
ファイルに追加します。
LOGGING = {"dynaconf_merge": True, "loggers": {'': {'handlers': ['console'], 'level': 'DEBUG'}}}
その後、必ず Pulp サービスを再起動してください。
# systemctl restart \ pulpcore-api \ pulpcore-content \ pulpcore-resource-manager \ pulpcore-worker@1 \ pulpcore-worker@2 \ rh-redis5-redis
15.2.11. Puppet Agent のログレベルを上げる
Satellite Server の Puppet エージェントのログレベルを上げることができます。
手順
/etc/puppetlabs/puppet/puppet.conf
ファイルの[agent]
ブロックに次の行を追加します。[agent] log_level = debug
ログは /var/log/puppetlabs/puppet/
にあります。
15.2.12. Puppet サーバーのログレベルを上げる
Satellite Server の Puppet サーバーのログレベルを上げることができます。
手順
/etc/puppetlabs/puppet/puppet.conf
ファイルの[master]
ブロックに次の行を追加します。[master] log_level = debug
Puppet サーバーを再起動します。
# satellite-maintain service restart --only puppetserver
ログは /var/log/puppetlabs/puppetserver/
にあります。
15.3. サービスのステータスの取得
手順
- Satellite web UI で、Administer > About に移動します。
- Smart Proxies タブでは、すべての Capsules のステータスを表示できます。
- Compute Resources タブで、接続されているコンピュートリソースプロバイダーのステータスを表示できます。
- Backend System Status テーブルでは、すべてのバックエンドサービスのステータスを表示できます。
CLI 手順
hammer ping
を実行して、データベースと Satellite サービスから情報を取得します。# hammer ping
satellite-maintain
を使用して、systemd で実行されているサービスのステータスを確認します。# satellite-maintain service status
可用性チェックを実行するには、
satellite-maintain
を使用します。$ satellite-maintain health check
15.4. サービスの再起動:
Satellite は、一連のバックエンドサービスを使用してタスクを実行します。Satellite に問題が発生した場合は、Satellite サービスのステータスを確認してください。
手順
satellite-maintain
を使用して Satellite サービスを再起動します。# satellite-maintain service restart
詳細については、foreman-maintain --help
を実行してください。
15.5. 個別のロガーの有効化
個別のロガーを有効にして、一部のロギングを選択的に有効にできます。Satellite では、以下のロガーを使用します。
app
- Web 要求とアプリケーションの一般的なメッセージをすべてロギングします。デフォルト値: true
audit
- 追加のファクト統計、追加、更新、削除されたファクトの数をロギングします。デフォルト値: true
ldap
- ハイレベルの LDAP クエリーと LDAP オペレーションをロギングします。デフォルト値: false
permissions
- ページを読み込む時にユーザーのロール、フィルター、パーミッションへのクエリーをロギングします。デフォルト値: false
sql
- Rails ActiveRecord を使用した SQL クエリーをロギングします。デフォルト値: false
手順
任意の個別ロガーを有効化します。たとえば、
sql
とldap
のロガーを有効にするには、以下のコマンドを入力します。# satellite-installer \ --foreman-loggers ldap:true \ --foreman-loggers sql:true
オプション: デフォルト値にロガーをリセットするには、以下のコマンドを入力します。
# satellite-installer --reset-foreman-loggers
15.6. Journal へのロギングの設定
Satellite が Journal を使用したロギングを管理するように設定します。Journal は、ログメッセージを rsyslog
に転送し、rsyslog
はログメッセージを /var/log/messages
に記述します。この変更を加えた後は、ログメッセージが /var/log/foreman/production.log
または /var/log/foreman-proxy.log
には表示されなくなる点にご留意ください。
ジャーナルの詳細は、Red Hat Enterprise Linux 8 Configuring Basic System Settings Guide の Viewing logs using the command line を参照してください。
手順
以下の
satellite-installer
コマンドを入力して、ロギングをjournald
に設定します。# satellite-installer \ --foreman-logging-layout pattern \ --foreman-logging-level info \ --foreman-logging-type journald \ --foreman-proxy-log JOURNAL
15.7. Satellite が提供するログファイルディレクトリー
Red Hat Satellite は、システム情報を通知とログファイルの形式で提供します。
表15.1 レポートおよびトラブルシューティングのログファイルディレクトリー
ログファイルディレクトリー | ログファイルの内容の説明 |
---|---|
| サブスクリプションの管理 |
| インストーラー |
| Foreman の維持 |
| Foreman プロキシー |
| Foreman |
| Apache HTTP サーバー |
| その他の各種ログメッセージ |
| 設定管理 |
| サブスクリプションの管理 |
| Candlepin Web サービスログ |
foreman-tail
コマンドを使用して、Satellite に関連する多くのログファイルを追跡することもできます。foreman-tail -l
を実行すると、追跡するプロセスとサービスがリストされます。
15.8. ログ情報の収集ユーティリティー
ログファイルから情報を収集して、Satellite のトラブルシューティングを行うことができます。
- sosreport
-
sosreport
コマンドは、実行中のカーネルバージョン、ロードされたモジュール、実行中のサービス、システムおよびサービス設定ファイルなど、Linux システムから設定および診断情報を収集します。この出力は、/var/tmp/sosreport-XXX-20171002230919.tar.xz
にある tar ファイルに保存されます。詳細については、sosreport --help
を実行するか、What is an sosreport and how to create one in Red Hat Enterprise Linux? を参照してください。
収集プロセスでは、情報の収集中にパスワード、トークン、キーなどのセキュリティー情報が削除されます。ただし、tar ファイルには依然として Satellite Server についての機密情報が含まれる可能性があります。Red Hat では、この情報をパブリックではなく特定の受信者に直接送信することを推奨します。
第16章 リソースの監視
本章では、管理システムの監視とレポーティングの設定方法について説明します。これには、ホストの設定やコンテンツビュー、コンプライアンス、サブスクリプションと現在登録されているホスト、プロモーションおよび同期が含まれます。
16.1. Red Hat Satellite コンテンツダッシュボードの使用
Red Hat Satellite コンテンツダッシュボードには、ホストの設定の概要やコンテンツビュー、コンプライアンスレポート、サブスクリプションと現在登録されているホストの状態についての概要や、プロモーションおよび同期の概要、さらに最新の通知一覧などを提供する各種ウィジェットが含まれています。
Satellite web UI で、Monitor > Dashboard に移動して、コンテンツダッシュボードにアクセスします。ダッシュボードは、各ウィジェットをクリックして別の位置にドラッグすることで、配置を変更することができます。以下のウィジェットが利用できます。
- ホスト設定の状態
最後のレポーティング期間におけるホストの設定状態およびそれに該当するホスト数。以下の表では、各設定状態を説明しています。
表16.1 ホスト設定の状態
アイコン 状態 説明 変更をエラーなく実行したホスト
最後のレポーティング期間に変更が正常に実行されたホスト。
エラー状態のホスト
最後のレポーティング期間にエラーが検出されたホスト。
直近 35 分間での良好なホストレポート
直近の 35 分間で変更を行わず、エラーがないホスト。
保留中の変更があるホスト
いくつかのリソースが適用されているものの、Puppet が
noop
モードで実行されるように設定されたホスト。同期していないホスト
同期がされておらず、最後のレポーティング期間にレポートが受信されていないホスト。
レポートのないホスト
最後のレポーティング期間にレポートが受信されていないホスト。
警告が無効にされているホスト
監視対象外のホスト。
設定状態のいずれかをクリックすると、該当するホストが表示されます。
- ホスト設定チャート
- ホスト状態の割合と該当するホストのパーセンテージを示す円グラフです。
- 最新イベント
管理情報、製品、サブスクリプションの変更およびエラーに関するホストが生成するメッセージの一覧です。
すべてのユーザーに送信されるグローバル通知や、異常なアクティビティーまたはエラーを検出するためにこのセクションを監視します。
- 実行分布 (直近 30 分)
- デフォルトでは 30 分となっている直近の Puppet 間隔中の実行中 Puppet エージェントの分布状況を示すグラフです。このケースでは、各コラムで 3 分間にクライアントから受け取ったレポート数を示しています。
- 新規ホスト
- 最近作成されたホスト一覧です。ホストをクリックすると、詳細が表示されます。
- タスクのステータス
- ステータスと結果別に分類される現在のすべてのタスクのサマリーです。タスク番号をクリックすると、対応するタスクの一覧が表示されます。
- 最新の警告/エラータスク
- 警告またはエラーにより停止している最新タスクの一覧です。タスクをクリックして詳細を確認してください。
- 検出されたホスト
- 検出プラグインによってプロビジョニングネットワークで検出されたベアメタルホストの一覧です。
- 最新のエラータ
- Satellite に登録されているホストで利用できるすべてのエラータの一覧です。
- コンテンツビュー
- Satellite におけるすべてのコンテンツビューおよびそれらの公開状態の一覧です。
- 同期の概要
- Satellite で有効にされているすべての製品またはリポジトリーおよびそれらの同期の状態の概要です。同期待ちになっている製品、同期されていない製品、同期が行われた製品はすべてこのセクションに一覧表示されます。
- ホストサブスクリプションの状態
Satellite に登録されているホストによって現在使用されているサブスクリプションの概要です。サブスクリプションとはご購入いただいた証明書を指します。このサブスクリプションでホストのソフトウェア、アップグレード、およびセキュリティー修正などが利用できるようになります。以下の表はサブスクリプションの状態の種類を示しています。
表16.2 ホストのサブスクリプションの状態
アイコン 状態 説明 無効
製品がインストールされていて、サブスクリプションが適切に使用されていないホストです。これらのホストには早急な対応が必要です。
部分使用
サブスクリプションが使用されていて、有効なエンタイトルメントを持つホストですが、それらのエンタイトルメントは完全には使用されていません。これらのホストが予定通りに設定されていることを確認するために、これらのホストを監視する必要があります。
有効
有効なエンタイトルメントを有し、それらのエンタイトルメントを完全に使用しているホストです。
サブスクリプションタイプを選択し、選択したタイプのサブスクリプションに関連付けられたホストを表示します。
- サブスクリプションのステータス
- アクティブなサブスクリプションの数、次の 120 日で期限の切れるサブスクリプションの数、および最近期限切れになったサブスクリプションの数を表示する現在のサブスクリプション合計の概要です。
- ホストコレクション
- Satellite 内のすべてのホストコレクションとそれらの状態の一覧で、各ホストコレクション内のコンテンツホストの数なども含まれます。
- Virt-who 設定の状態
環境内のホスト上で稼働している
virt-who
デーモンから受け取ったレポートの状態。以下の状態があります。表16.3 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 で表示される日付の形式を変更することはできません。
16.1.1. タスクの管理
Red Hat Satellite は、同期されたリポジトリー、適用されたエラータ、公開されたコンテンツビューなどの計画されたタスクまたは実行されたタスクのすべての詳細なログを保持します。ログを確認するには、監視 > タスク に移動します。
タスクウィンドウでは、特定のタスクを検索し、そのステータス、詳細、およびタスクが開始してからの経過時間を表示できます。1 つ以上のタスクをキャンセルして再開することもできます。
タスクは Dynflow エンジンを使用して管理されます。リモートタスクには、必要に応じて調整できるタイムアウトが設定されます。
タイムアウト設定を調整するには、以下を実行します。
- Satellite Web UI で、管理 > 設定に移動します。
- 検索ボックスに %_timeout を入力し、検索 をクリックします。検索では、説明を含む 4 つの設定が返されます。
- 値 のコラムで、数字の横にあるアイコンをクリックして編集します。
- 希望する秒数を入力したら、保存 をクリックします。
低帯域幅の場合は %_finish_timeout 値の編集が役に立つ場合があります。待ち時間が長い場合は %_accept_timeout 値の編集が役立つことがあります。
タスクが初期化されると、Candlepin または Pulp などのタスクで使用されるすべてのバックエンドサービスについて正常に機能するかどうかがチェックされます。チェックにパスしない場合は、次のようなエラーを受信します。
There was an issue with the backend service candlepin: Connection refused – connect(2).
バックエンドサービスチェック機能で問題が発生する場合は、以下の方法で無効にできます。
サービスのチェックを無効にするには、以下を実行します。
- Satellite Web UI で、管理 > 設定に移動します。
- 検索ボックスに check_services_before_actions を入力し、検索 をクリックします。
- 値 コラムでアイコンをクリックして値を編集します。
- ドロップダウンメニューから false を選択します。
- Save をクリックします。
16.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 の行で、値 コラムの編集アイコンをクリックし、必要な URL を入力します。
- RSS 有効化の行で、値 コラムの編集アイコンをクリックし、この機能を有効または無効にします。
16.3. Satellite Server の監視
監査レコードには、Satellite ですべてのユーザーが行った変更が一覧表示されます。この情報は、メンテナンスとトラブルシューティングに使用できます。
手順
- Satellite Web UI で、Monitor > Audits に移動して、監査レコードを表示します。
すべての監査属性のリストを取得するには、次のコマンドを使用します。
# foreman-rake audits:list_attributes
16.4. Capsule Server の監視
以下の項では、Satellite Web UI を使用して、保守とトラブルシューティングに役に立つ Capsule 情報を見つける方法について説明します。
16.4.1. 一般的な Capsule 情報の表示
Satellite web UI で、インフラストラクチャー > カプセル に移動して、Satellite Server に登録されているカプセルサーバーのテーブルを表示します。表に含まれる情報には以下の質問に対する回答が含まれます。
- Capsule Server は稼働していますか ?
-
これは、ステータス コラムで緑色のアイコンにより示されます。赤色のアイコンは、非アクティブな Capsule を示します。その Capsule をアクティベートするには、Capsule Server で
service foreman-proxy restart
コマンドを使用します。 - Capsule Server で有効なサービスはどれですか ?
- 機能 コラムで、Capsule がたとえば DHCP サービスを提供するかどうか、また Pulp ミラーとして動作するかどうかを確認できます。Capsule の機能はインストール中に有効にしたり、後で設定したりできます。詳細は、Capsule Server のインストール を参照してください。
- Capsule Server はどの組織およびロケーションに割り当てられていますか ?
Capsule Server は複数の組織およびロケーションに割り当てることができますが、現在選択された組織に属する Capsule のみが表示されます。すべての Capsule をリストするには、左上隅にあるコンテキストメニューから 任意の組織 を選択します。
Capsule 設定の変更後に、アクション コラムのドロップダウンメニューから リフレッシュ を選択して Capsule の表を最新状態にしてください。
詳細情報を表示するには Capsule 名をクリックします。概要 タブでは、Capsule の表にある情報と同じものを見つけることができます。さらに、以下の質問に回答することができます。
- Capsule Server が管理するホストはどれですか ?
- 関連するホストの数は 管理対象ホスト ラベルの横に表示されます。関連するホストの詳細を表示するには、その数をクリックします。
- Capsule Server で利用可能なストレージ容量はどれくらいですか ?
-
/var/lib/pulp
で Pulp コンテンツが使用しているストレージ容量が表示されます。また、Capsule で利用可能な残りのストレージ容量を確認できます。
16.4.2. サービスの監視
Satellite web UI で、Infrastructure > Capsules に移動し、選択した Capsule の名前をクリックします。サービス タブでは、DNS ドメインのリストや Pulp ワーカーの数などの、Capsule サービスに関する基本的な情報を見つけることができます。ページの外観は、Capsule Server で有効なサービスによって異なります。より詳細なステータス情報を提供するサービスには Capsule ページで専用のタブが用意されることがあります。詳細は、「Puppet の監視」 を参照してください。
16.4.3. Puppet の監視
Satellite web UI で、Infrastructure > Capsules に移動し、選択した Capsule の名前をクリックします。Puppet タブでは、以下を確認できます。
- 全般 サブタブで、Puppet イベントのサマリー、最新の Puppet 実行の概要、関連するホストの同期ステータス。
- 環境 サブタブで、Puppet 環境のリスト。
Puppet CA タブでは、以下の情報を確認できます。
- 全般 サブタブで、証明書ステータスの概要と自動署名エントリーの数。
- 証明書 サブタブで、Capsule に関連する CA 証明書の表。ここでは、証明書失効データを調べたり、取り消し をクリックして証明書をキャンセルしたりすることができます。
- エントリーの自動署名 サブタブで、自動署名エントリーのリスト。ここでは、新規 をクリックしてエントリーを作成したり、削除 をクリックしてエントリーを削除したりできます。
第17章 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 イベント を参照してください。
17.1. Webhook への移行
従来の foreman_hooks
プラグインは、webhooks プラグインが意図的に提供していないモデルオブジェクトへのフルアクセスを提供していました。
利用可能な範囲はセーフモードによって制限され、すべてのオブジェクトとマクロは両方とも API の安定性の約束の対象であり、完全に文書化されています。
webhook によってトリガーされるイベントの数は、foreman_hooks
の場合よりも大幅に少なくなります。
Webhook は非同期で処理されるため、システムの内部が改ざんされるリスクは最小限に抑えられます。個々の Webhook スクリプトごとにペイロードを作成せずに、foreman_hooks
から移行することはできません。ただし、webhook プラグインにはいくつかのサンプルペイロードテンプレートが付属しています。シェルフックでサンプルペイロードを使用して、移行を簡素化することもできます。
同様の結果を得るには、スクリプトテンプレートとペイロードテンプレートの両方をカスタマイズする必要があります。
17.2. Webhook のインストール
次の手順を使用して、Webhook をインストールします。Webhook をインストールした後、Webhook リクエストを送信するように Satellite Server を設定できます。
手順
次のコマンドを使用して Webhook をインストールします。
# satellite-installer --enable-foreman-plugin-webhooks
オプション: 次のコマンドを使用して CLI プラグインをインストールできます。
# satellite-installer --enable-foreman-cli-webhooks
17.3. Webhook テンプレートの作成
Webhook テンプレートは、Webhook がトリガーされる際に、設定されたターゲットへの HTTP 要求の本文を生成するために使用されます。次の手順を使用して、Satellite web UI で Webhook テンプレートを作成します。
手順
- Satellite web UI で、Administer > Webhooks Templates に移動します。
- Clone an existing template または Create Template をクリックします。
- テンプレートの名前を入力します。
エディターを使用して、テンプレートペイロードに変更を加えます。
Webhook HTTP ペイロードは、Satellite テンプレート構文を使用して作成する必要があります。Webhook テンプレートは、イベントのメインオブジェクトを表すことができる
@object
と呼ばれる特別な変数を使用できます。特定のイベントの場合は@
Object が欠落できます。@payload
変数を使用して、実際に利用可能なデータを判断できます。詳細については、ホストの管理 の テンプレートの記述リファレンス を参照してください。使用可能なテンプレートマクロとメソッドについては、Satellite Server の
/templates_doc
にアクセスしてください。- オプション: 説明と監査コメントを入力します。
- 組織と場所を割り当てます。
- Submit をクリックします。
17.4. Webhook の作成
Satellite web UI を使用して、イベント、ペイロード、HTTP 認証、コンテンツタイプ、およびヘッダーをカスタマイズできます。
次の手順を使用して、SatelliteWebUI で Webhook を作成します。
手順
- Satellite Web UI で、Administer > Webhooks に移動します。
- Create new をクリックします。
- Subscribe to リストから、イベントを選択します。
- Webhook の Name を入力します。
- ターゲット 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 コンテンツタイプを入力します。たとえば、定義したペイロードの
application/json
、application/xml
、text/plain
などです。アプリケーションは、指定されたコンテンツタイプに一致するようにコンテンツを変換しようとはしません。 - オプション: HTTP ヘッダーを JSON として提供します。ERB も許可されます。
非標準の HTTP または HTTPS ポートを持つエンドポイントで webhook を設定する場合は、SELinux ポートを割り当てる必要があります。オンラインネットワーク環境での Satellite Server のインストール の カスタムポートでの Satellite へのアクセスを確保するように SELinux を設定する手順 を参照してください。
17.5. 利用可能な Webhook イベント
次の表には、Satellite web UI から利用できる Webhook イベントのリストが含まれています。Action
イベントは success
した場合にのみ Webhook をトリガーするため、アクションが失敗した場合、Webhook はトリガーされません。
ペイロードの詳細については、Administer > About > Support > Templates DSL アクセスしてください。使用可能なタイプのリストを次の表に示します。一部のイベントは custom としてマークされます。その場合、ペイロードはオブジェクトオブジェクトですが、Ruby ハッシュ (Key-Value データ構造) であるため、構文が異なります。
イベント名 | 説明 | Payload |
---|---|---|
アクション Katello コンテンツビュー プロモートを成功させる | コンテンツビューが正常にプロモートされました。 | Actions::Katello::ContentView::Promote |
アクション Katello コンテンツビュー プロモートの公開を成功させる | リポジトリーは正常に同期されました。 | Actions::Katello::ContentView::Publish |
アクションリモート実行ホストジョブを成功させる | ホストの汎用リモート実行ジョブが成功しました。このイベントは、完了すると、すべてのリモート実行ジョブに対して発行されます。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello エラータインストールを成功させる | Katello インターフェイスを使用してエラータをインストールします。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 KatelloGroup インストールを成功させる | Katello インターフェイスを使用してパッケージグループをインストールします。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello パッケージのインストールを成功させる | Katello インターフェイスを使用してパッケージをインストールします。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello グループの削除 | Katello インターフェイスを使用してパッケージグループを削除します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello パッケージの削除を成功させる | Katello インターフェイスを使用してパッケージを削除します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello サービスの再起動を成功させる | Katello インターフェイスを使用してサービスを再起動します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello グループの更新を成功させる | Katello インターフェイスを使用してパッケージグループを更新します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello パッケージの更新を成功させる | Katello インターフェイスを使用してパッケージを更新します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブ Foreman OpenSCAP 実行スキャンを成功させる | OpenSCAP スキャンを実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Ansible ホストの実行を成功させる | ホストに定義されたすべてのロールを含む Ansible Playbook を実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Ansible 実行カプセルのアップグレードを成功させる | 特定の Capsule Server ホストで Capsule をアップグレードします。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Ansible クラウドコネクターの設定を成功させる | 特定のホストで Cloud Connector を設定します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 AnsibleRunInsights プランを成功させる | ID を指定して Red Hat から指定されたメンテナーンスプランを実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 AnsibleRunPlaybook を成功させる | 特定のホストに対して Ansible Playbook を実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 AnsibleWeb コンソールの有効化を成功させる | Ansible Playbook を実行して、特定のホストで Web コンソールを有効にします。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Puppet ホストの実行を成功させる | Puppet を 1 回実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Katello モジュールストリームアクションを成功させる | Katello インターフェイスを使用してモジュールストリームアクションを実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Leapp 事前アップグレードを成功させる | RHEL7 ホストのアップグレード可能性チェック。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Leapp 修復計画を成功させる | Leapp で修復計画を実行します。 | Actions::RemoteExecution::RunHostJob |
アクションリモート実行ホストジョブの実行 Leapp アップグレードを成功させる | RHEL7 ホストの Leapp アップグレードジョブを実行します。 | Actions::RemoteExecution::RunHostJob |
ビルドが入力されました | ホストがビルドモードに入りました。 |
カスタムイベント: |
ビルドが終了しました | ホストビルドモードがキャンセルされました。正常にプロビジョニングされたか、ユーザーが手動でビルドをキャンセルしました。 |
カスタムイベント: |
コンテンツビューの作成/更新/破棄 | コンテンツビューでの一般的なデータベース操作。 | Katello::ContentView |
ドメインの作成/更新/破棄 | ドメインでの一般的なデータベース操作。 | Domain |
ホストの作成/更新/破棄 | ホストでの一般的なデータベース操作。 | ホスト |
ホストグループの作成/更新/破棄 | ホストグループでの一般的なデータベース操作。 | Hostgroup |
モデルの作成/更新/破棄 | モデルに対する一般的なデータベース操作。 | モデル |
ステータスが変更されました | ホストのグローバルホストステータスが変更されました。 |
カスタムイベント: |
サブネットの作成/更新/破棄 | サブネットでの一般的なデータベース操作。 | サブネット |
テンプレートレンダリングが実行されました | レポートテンプレートがレンダリングされました。 | Template |
ユーザーが作成/更新/破棄しました | ユーザーに対する一般的なデータベース操作。 | User |
17.6. シェルフック
Webhook を使用すると、1 つの Satellite イベントを 1 つの API 呼び出しにのみマップできます。単一のシェルスクリプトに複数のコマンドを含めることができる高度な統合の場合、REST HTTP API を使用して実行可能ファイルを公開する Capsule shellhooks プラグインをインストールできます。
次に、事前定義済みのシェルフックを実行するために Capsule API に到達するように Webhook を設定できます。shellhook は、実行可能なスクリプトで、実行可能であれば、どの言語でも記述できます。shellhook には、たとえばコマンドやファイルを編集できます。
英数字とアンダースコアのみを含む /var/lib/foreman-proxy/shellhooks
に実行可能スクリプトを配置する必要があります。
Webhook ペイロードを使用して、shellhook スクリプトに入力を渡すことができます。この入力は、shellhook スクリプトの標準入力にリダイレクトされます。X-Shellhook-Arg-1 形式の HTTP ヘッダーを使用して、シェルフックスクリプトに引数を
に渡すことができます。引数を shellhook スクリプトに渡す方法は、以下を参照してください。
X-Shellhook-Arg
-99
HTTP メソッドは POST である必要があります。URL の例は次のようになります: https://capsule.example.com:9090/shellhook/my_script
。
shellhooks
ディレクトリーとは異なり、URL を有効にするには、URL に単数形の /shellhook/
が含まれている必要があります。
シェルフックに接続された各 Webhook に対して Capsule Authorization を有効にして、呼び出しを認証できるようにする必要があります。
標準出力と標準エラー出力は、それぞれデバッグレベルまたは警告レベルのメッセージとして Capsule ログにリダイレクトされます。
shellhook HTTPS 呼び出しでは値が返されません。
shellhook スクリプトの作成例は、「引数を出力するシェルフックの作成」 を参照してください。
17.7. Shellhooks プラグインのインストール
オプションで、次のコマンドを使用して、シェルフックに使用される各 Capsule にシェルフックプラグインをインストールして有効にすることができます。
# satellite-installer --enable-foreman-proxy-plugin-shellhooks
17.8. 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 %>" }
17.9. Curl を使用したシェルスクリプトに引数を渡す
この手順を使用して、curl を使用してシェルフックスクリプトに引数を渡します。
手順
curl
を使用してシェルフックスクリプトを実行する場合は、次の形式で HTTP ヘッダーを作成します。"X-Shellhook-Arg-1: VALUE" "X-Shellhook-Arg-2: VALUE"
例
# curl -sX POST -H 'Content-Type: text/plain' \ -H "X-Shellhook-Arg-1: Version 1.0" \ -H "X-Shellhook-Arg-2: My Content View" \ --data "" https://capsule.example.com:9090/shellhook/My_Script
17.10. 引数を出力するシェルフックの作成
リモート実行ジョブの実行時に Hello World! を出力する単純なシェルフックスクリプトを作成します。
前提条件
Webhook
およびshellhooks
プラグインがインストールされている。詳細は以下を参照してください。
手順
/var/lib/foreman-proxy/shellhooks/print_args
スクリプトを変更して、引数を標準エラー出力に出力し、Capsule ログに表示されるようにします。#!/bin/sh # # Prints all arguments to stderr # echo "$@" >&2
- Satellite Web UI で、Administer > 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_args
URL の
shellhook
は、shellhooks
ディレクトリーとは異なり、単数であることに注意してください。- Template リストから、Empty Payload を選択します。
- Credentials タブで、Capsule の認証を確認します。
Additional タブで、Optional HTTP headers フィールドに以下のテキストを入力します。
{ "X-Shellhook-Arg-1": "Hello", "X-Shellhook-Arg-2": "World!" }
- Submit をクリックします。リモート実行ジョブが正常に実行されるたびに、Capsule ログに対して Hello World! を出力するシェルフックが正常に作成されました。
検証
-
任意のホストでリモート実行ジョブを実行します。
時間
はコマンドとして使用できます。詳細については、ホストの管理 の リモートジョブの実行 を参照してください。 shellhook スクリプトがトリガーされ、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!
第18章 検索およびブックマーク機能
Satellite は、Satellite web UI のほとんどのページで強力な検索機能を備えています。この機能によって Satellite が管理するあらゆる種類のリソースを検索できます。検索では、フリーテキストと構文ベースのクエリーの両方を使用でき、クエリーは詳細な予測入力を使用して実行されます。検索クエリーは今後の再利用に備えてブックマークとして保存することができます。
18.1. 検索クエリーの構築
検索クエリーの入力を開始すると、現在のクエリーを補完する有効なオプションの一覧が表示されます。一覧からオプションを選択するか、補完機能を使用してクエリーを構築するか、または入力を継続するかのいずれかのオプションを選択できます。検索エンジンがフリーテキストを解釈する方法については、「フリーテキスト検索の使用」 を参照してください。
18.1.1. クエリーの構文
parameter operator value
検索に利用できるフィールド、リソースおよびクエリーが解釈される方法はコンテキスト、つまり検索を実行するページによって異なります。たとえば、ホストページのホストグループフィールドはホストグループページの名前フィールドに相当します。またフィールドのタイプにより、利用可能な演算子および許可される値が決まります。
すべての演算子の一覧については、Operators を参照してください。値の形式についての説明は、Values を参照してください。
18.1.2. クエリー Operator
パラメーター と 値 の間で使用できるすべての演算子は以下の表に一覧表示されています。予測に基づいて構築されるクエリーで表示される可能性のある他の記号および特殊文字 (コロンなど) には特別な意味がなく、フリーテキストとして処理されます。
表18.1 検索で使用できる比較演算子
演算子 | ショートネーム | 説明 | 例 |
---|---|---|---|
= | EQUALS | 数値、時間的な値 (temporal value) またはテキストの値を受け入れます。テキストの場合、大文字と小文字が区別された完全一致が返されます。 |
|
!= | NOT EQUALS | ||
~ | LIKE | テキストまたは時間的な値 (temporal value) を受け入れます。大文字と小文字を区別しない一致を返します。1 文字の場合の _、ゼロを含む任意の数の文字の場合の % または たは * などのワイルドカードを受け入れます。ワイルドカードが指定されない場合、文字列はワイルドカードで囲まれている場合の様に処理されます (例: %rhel7%)。 |
|
!~ | NOT LIKE | ||
> | GREATER THAN | 数値、または時間的な値 (temporal value) を受け入れます。時間的な値の場合、演算子 > is は later than (次の日付より後) として、< は earlier than (次の日付より前) として解釈されます。どちらの演算子も EQUALS: >= <= と組み合わせることができます。 |
|
< | LESS THAN | ||
^ | IN | SQL の場合と同様に、値の一覧に対して式を比較します。値が含まれる一致または値の含まれない一致をそれぞれ返します。 |
|
!^ | NOT IN | ||
HAS or set? |
| 存在する値、または存在しない値をそれぞれ返します。 |
|
NOT HAS or null? |
|
記述された構文に従う単純なクエリーを組み合わせて、論理演算子の AND、OR および NOT を使用してより複雑なクエリーにすることができます。演算子の代替表記も使用できます。
表18.2 検索で使用できる論理演算子
演算子 | 代替表記 | 例 | ||
---|---|---|---|---|
and | & | && | <空白文字> |
|
or | | | || |
|
|
not | – | ! |
|
|
18.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 などのあいまいな日付形式を使用しないようにしてください。
18.2. フリーテキスト検索の使用
フリーテキストを入力する際、複数のフィールドにまたがって検索が実行されます。たとえば、64 と入力する場合、検索は名前、IP アドレス、MAC アドレスおよびアーキテクチャーにこの数字が含まれるすべてのホストを返します。
複数の語句からなるクエリーは引用符で囲む必要があります。囲まないと、空白文字は AND 演算子として解釈されます。
検索はすべてのフィールドで実行されるため、フリーテキストの検索結果は非常に正確になりますが、多数のホストで実行する場合などには検索スピードが遅くなる可能性があります。このため、可能な限りフリーテキストを使用せず、より具体的で、構文ベースのクエリーを使用することが推奨されます。
18.3. ブックマークの管理
検索クエリーをブックマークとして保存し、再利用することもできます。ブックマークは削除したり、変更したりすることもできます。
ブックマークは、作成されたページでのみ表示されます。一部のページには、すべての active
または disabled
ホストなど、一般的な検索で使用可能なデフォルトのブックマークがあります。
18.3.1. ブックマークの作成
本セクションでは、検索クエリーをブックマークとして保存する方法について説明します。関連ページ用の検索クエリーのブックマークは、作成したそのページで保存する必要があります。たとえば、ホスト関連の検索クエリーは、ホストページで保存します。
手順
- Satellite web UI で、ブックマークを作成するページに移動します。
- 検索 フィールドに保存する検索クエリーを入力します。
- 検索 ボタンの右側にある矢印を選択し、この検索をブックマーク を選択します。
- 名前 フィールドに 新規ブックマークの名前を入力します。
- 検索クエリー フィールドに正しい検索クエリーがあることを確認します。
公開 チェックボックスの設定を確認します。
- 公開 にチェックを入れると、ブックマークが公開されて全ユーザーに見えるようになります。
- 公開 のチェックを外すと、ブックマークが非公開となり、作成したユーザーのみに見えるようになります。
- Submit をクリックします。
作成されたことを確認するには、検索 ボタンの右側にある矢印を選択してブックマーク一覧を表示するか、管理 > ブックマーク に移動してから、ブックマークの名前を ブックマーク 一覧で確認します。
18.3.2. ブックマークの削除
ブックマークは、ブックマークページで削除できます。
手順
- Satellite web UI で、Administer > Bookmarks に移動します。
- ブックマークページで、削除するブックマークの 削除 をクリックします。
- 確認ウィンドウが表示されたら、OK をクリックして削除を確認します。
削除されたことを確認するには、ブックマークの名前がないことを ブックマーク 一覧で確認します。
付録A 管理設定
このセクションには、Administer > Settings に移動して、Satellite web UI で編集できる設定に関する情報が含まれています。
A.1. 一般設定
設定 | Default Value | 説明 |
---|---|---|
管理者のメールアドレス | デフォルトの管理者の電子メールアドレス | |
Satellite URL | Satellite インスタンスに到達可能な URL。Provisioning > Unattended URL も参照してください。 | |
1 ページあたりのエントリー | 20 | Satellite のページごとに表示されるレコードの数 |
DB キャッシュの修正 | なし |
Satellite は、パーミッションとロールのキャッシュを保持します。これを |
DB 保留シード | なし |
|
Capsule リクエストのタイムアウト | 60 | Satellite から Capsule への HTTP リクエストのオープンおよび読み取りタイムアウト (秒単位)。 |
ログインページのフッターテキスト | ログインページのフッターに表示されるテキスト。 | |
ホストの電源ステータスを表示する | あり | ホストインデックスページに電源ステータスを表示します。この機能は、ホストリストページのパフォーマンスの低下につながる可能性のあるコンピュートリソースプロバイダーを呼び出します。 |
HTTP(S) プロキシー | Satellite 製品からの発信 HTTP(S) 接続のプロキシーを設定します。システム全体のプロキシーは、オペレーティングシステムレベルで設定する必要があります。 | |
ホストを除く HTTP(S) プロキシー | をクリックします。 | リクエストのプロキシーとならないホスト名を設定します。ローカルホストへのリクエストはデフォルトで除外されます。 |
Experimental Labs を表示する | なし | Experimental Labs の機能にアクセスするためのメニューを表示するかどうか (ページのリロードが必要)。 |
ホストにドメイン名を追加する | あり |
|
同期間隔外 | 30 |
管理対象ホストは定期的にレポートを作成し、レポート間の時間がこの期間 (分単位) を超えると、ホストは同期していないと見なされます。ホストごとに、Hosts > All hosts > $host > Edit > Parameters > Add Parameter の追加で |
Satellite UUID | Satellite インスタンス ID。Satellite インスタンスを一意に識別します。 | |
既定の言語 | 新規ユーザーの UI はこの言語を使用します。 | |
デフォルトのタイムゾーン | 新規ユーザーに使用するタイムゾーン。 | |
インスタンスのタイトル | インスタンスのタイトルは上部のナビゲーションバーに表示されます (ページの再読み込みが必要です)。 | |
保存された監査間隔 | 監査データを保持するための日数。監査のクリーンアップを無効にするには、空のままにします。 | |
新しいホストの詳細 UI | あり | Satellite は、ホストの詳細について新しい UI をロードします。 |
A.2. Satellite タスク設定
設定 | Default Value | 説明 |
---|---|---|
同期タスクのタイムアウト | 120 | 例外が発生する前に同期タスクが終了するのを待機する秒数。 |
dynflow コンソールを有効にする | あり |
デバッグ用に dynflow コンソール ( |
dynflow コンソールに認証が必要 | あり | ユーザーは、dynflow コンソールにアクセスする前に、管理者権限を持っていることを認証する必要があります。 |
Capsule アクションの再試行回数 | 4 | 失敗する前に Capsule でタスクを開始するために許可された試行回数。 |
Capsule アクションの再試行間隔 | 15 | 再試行間の秒単位の時間。 |
Capsule バッチタスクを許可する | あり | Capsule でタスクのバッチトリガーを有効にします。 |
Capsule タスクのバッチサイズ | 100 |
|
タスクのトラブルシューティング URL |
タスクのトラブルシューティングドキュメントを指す URL。正規化されたタスクラベル (英数字のみに制限) に置き換えられる | |
ポーリング間隔乗数 | 1 | デフォルトのポーリング間隔を乗算するために使用されるポーリング乗数。これを使用して、長時間実行されるタスクで頻繁にポーリングするのを防ぐことができます。 |
A.3. テンプレート同期設定
設定 | Default Value | 説明 |
---|---|---|
関連付け | New | テンプレートを OS、組織、場所に関連付けます。 |
ブランチ | Git リポジトリーのデフォルトのブランチ。 | |
メッセージのコミット | Satellite ユーザーが作成したテンプレートのエクスポート | エクスポートされたテンプレートのカスタムコミットメッセージ。 |
ディレクトリー名 | / | テンプレートを含む Git リポジトリー内のディレクトリー。 |
Filter | この正規表現に一致する名前のインポートまたはエクスポート。大文字小文字を区別しません。スニペットはフィルターリングされません。 | |
強制インポート | なし |
|
テンプレートのロック | 保持し、新しいものをロックしないでください | インポートされたテンプレートのロックを処理する方法。 |
メタデータエクスポートモード | 更新 | デフォルトのメタデータエクスポートモード。 可能なオプション:
|
否定 | なし | インポートまたはエクスポート用にフィルターを無効にします。 |
接頭辞 | インポートされたテンプレートに接頭辞として追加された文字列。 | |
リポジトリー | テンプレートをインポートまたはエクスポートする場所からのターゲットパス。たとえば、さまざまなプロトコルを使用できます。
| |
詳細 | なし | テンプレートをインポートする Rake タスクの冗長性を選択します。 |
A.4. 検出された設定
設定 | Default Value | 説明 |
---|---|---|
ディスカバリーロケーション | 検出されたホストを配置するデフォルトの場所を示します。 | |
ディスカバリー組織 | 検出されたホストが追加されるデフォルトの組織を示します。 | |
インターフェイスのファクト | discovery_bootif | プライマリーインターフェイスの検出に使用するファクト名。 |
ボンドインターフェイスを作成する | なし | LLDP を使用して同じ VLAN で別のインターフェイスが検出された場合、ボンドインターフェイスを自動的に作成します。 |
すべてのファクトをクリーンアップする | なし | プロビジョニング中に、報告されたすべてのファクト (検出ファクトを除く) をクリーンアップします。 |
ホスト名のファクト | discovery_bootif | ホスト名に使用するファクトのリスト (コンマ区切り、最初の勝利)。 |
自動プロビジョニング | なし | プロビジョニングルールを使用して、新しく検出されたホストを自動的にプロビジョニングします。 |
再起動 | あり | プロビジョニング中に自動的に再起動するか、kexec が検出したホスト。 |
ホスト名接頭辞 | mac | ホスト名に使用するデフォルトの接頭辞。文字で始める必要があります。 |
ファクト列 | ホストリストに表示する追加のファクト列 (コンマ区切り)。 | |
ハイライトされたファクト |
ハイライトセクションのファクトを整理するための正規表現 - 例: | |
ストレージのファクト | ストレージセクションのファクトを整理するための正規表現。 | |
ソフトウェアのファクト | ソフトウェアセクションのファクトを整理するための正規表現。 | |
ハードウェアのファクト | ハードウェアセクションのファクトを整理するための正規表現。 | |
ネットワークのファクト | ネットワークセクションのファクトを整理するための正規表現。 | |
IPMI のファクト | インテリジェントプラットフォーム管理インターフェイス (IPMI) セクションのファクトを整理するための正規表現。 | |
PXE をロックする | なし | Preboot Execution Environment (PXE) 設定を自動的に生成して、新しく検出されたホストを検出に固定します。 |
ロックされた PXELinux テンプレート名 | pxelinux_discovery | ホストを検出に固定するときに使用される PXELinux テンプレート。 |
ロックされた PXEGrub テンプレート名 | pxegrub_discovery | ホストを検出に固定するときに使用される PXEGrub テンプレート。 |
ロックされた PXEGrub2 テンプレート名 | pxegrub2_discovery | ホストを検出に固定するときに使用される PXEGrub2 テンプレート。 |
DNS を強制する | あり | 検出されたホストをプロビジョニングするときに、DNS エントリーの作成を強制します。 |
既存の NIC で発生したエラー | なし | プロビジョニング ネットワークインターフェイスカード (NIC) の MAC に一致する既存の管理対象ホストの検出を許可しないでください (早期にエラーが発生します)。 |
名前ジェネレーターのタイプ | ファクト + 接頭辞 | 検出ホスト名の命名パターン。 |
Prefer IPv6 | なし | 検出されたノードを呼び出すときは、IPv4 よりも IPv6 を優先します。 |
A.5. ブートディスク設定
設定 | Default Value | 説明 |
---|---|---|
iPXE ディレクトリー |
| iPXE イメージを含むディレクトリーへのパス。 |
ISOLINUX ディレクトリー |
| ISOLINUX イメージを含むディレクトリーへのパス。 |
SYSLINUX ディレクトリー |
| SYSLINUX イメージを含むディレクトリーへのパス。 |
Grub2 ディレクトリー |
|
|
ホストイメージテンプレート | ブートディスク iPXE- ホスト | ホスト固有のブートディスクに使用する iPXE テンプレート。 |
一般的なイメージテンプレート | ブートディスク iPXE- 汎用ホスト | 汎用ホストブートディスクに使用する iPXE テンプレート。 |
汎用 Grub2 EFI イメージテンプレート | ブートディスク Grub2 EFI- 汎用ホスト | 汎用 Extensible Firmware Interface (EFI) ホストブートディスクに使用する Grub2 テンプレート。 |
ISO 生成コマンド | genisoimage |
ISO イメージを生成するコマンド |
インストールメディアのキャッシュ | あり | インストールメディアファイルは、完全なホストイメージ用にキャッシュされます。 |
許可されるブートディスクの種類 | [generic, host, full_host, subnet] | 許可されているブートディスクタイプのリスト。無効にするには空白のままにします。 |
A.6. Red Hat クラウド設定
設定 | Default Value | 説明 |
---|---|---|
自動インベントリーアップロード | あり | ホストインベントリーの Red Hat クラウドへの自動アップロードを有効にします。 |
推奨事項を自動的に同期する | なし | RedHat クラウドからの Insights 推奨事項の自動同期を有効にします。 |
ホスト名の難読化 | なし | RedHat クラウドに送信されたホスト名を難読化します。 |
ホストの ipv4 アドレスの難読化 | なし | RedHat クラウドに送信された IPv4 アドレスを難読化します。 |
Red Hat Cloud トークン | ***** | Red Hat クラウドサービスに送信される認証トークン。クラウド API へのリクエストを認証するために使用されます。 |
インストールされたパッケージを除外する | なし | インストールされたパッケージを Red Hat クラウドへのアップロードから除外します。 |
インサイトクライアントレポートにパラメーターを含める | なし | インポート中に Satellite からのパラメータータグを含めます。 |
A.7. コンテンツ設定
設定 | Default Value | 説明 |
---|---|---|
デフォルトの HTTP プロキシー | コンテンツを同期するためのデフォルトの HTTP プロキシー。 | |
CDN SSL バージョン | CDN との通信に使用される SSL バージョン。 | |
デフォルトの同期 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 | マニフェストを更新するときのタイムアウト (秒単位)。 |
アクションタイムアウトを受け入れる | 20 | ホストがリモートアクションを取得するのを待機する秒単位の時間。 |
アクションタイムアウトの終了 | 3600 | ホストがリモートアクションを終了するのを待つ秒単位の時間。 |
サブスクリプション接続が有効 | あり | サブスクリプションのために Red Hat ポータルと通信できます。 |
コンテンツビューからインストール可能なエラータ | なし | ホストのコンテンツビューおよびライフサイクル環境のエラータのみに基づいてエラータホストのステータスを計算します。 |
複合コンテンツビューのプロモーションを制限する | なし | これが有効になっている場合は、複合コンテンツビューに含まれるコンテンツビューのバージョンがターゲット環境に存在しない限り、複合コンテンツビューを公開またはプロモートすることはできません。 |
アクションの前にサービスを確認してください | あり | アクションを実行する前に、pulp や candlepin などのバックエンドサービスのステータスを確認しますか ? |
リポジトリーを同期するためのバッチサイズ | 100 | Capsule で同時に同期する必要があるリポジトリーの数。数値が小さいほど、同期時間が長くなる可能性があります。数値を大きくすると、dynflow の負荷が増加します。 |
コンテンツビュープロモーション後に Capsules を同期する | あり | コンテンツビューのプロモーション後に Capsules を自動同期するかどうか。 |
デフォルトのカスタムリポジトリーダウンロードポリシー |
|
カスタムリポジトリーのデフォルトのダウンロードポリシー。 |
デフォルトの Red Hat リポジトリーダウンロードポリシー | オンデマンド |
有効な Red Hat リポジトリーのデフォルトのダウンロードポリシー。 |
デフォルトの Capsule ダウンロードポリシー | オンデマンド |
Capsule 同期のデフォルトのダウンロードポリシー。 |
Pulp のエクスポート先ファイルパス |
| エクスポートされたリポジトリーのディスク上の場所。 |
Pulp 3 のエクスポート先ファイルパス |
| Pulp 3 のエクスポートされたリポジトリーのディスク上の場所。 |
Pulp クライアントキー |
| Pulp サーバー認証に使用される SSL キーのパス。 |
Pulp クライアント証明書 |
| Pulp サーバー認証に使用される SSL 証明書のパス。 |
同期接続タイムアウト | 300 | 同期時の接続の合計タイムアウト (秒単位)。 |
デフォルトでリモート実行を使用 | なし | 有効にすると、リモートアクションに katello-agent の代わりにリモート実行が使用されます。 |
登録解除時にホストを削除 | なし | subscription-manager を使用してホストの登録を解除する場合は、ホストレコードも削除してください。仮想マシンや DNS レコードなど、ホストにリンクされている管理対象リソースも削除される可能性があります。 |
サブスクリプションマネージャー名登録ファクト |
subscription-manager を使用してホストを登録する場合は、ホスト名に指定されたファクトを強制的に使用します ( | |
サブスクリプションマネージャー名登録ファクト strict マッチ | なし |
これが有効で、 |
デフォルトの場所サブスクライブされたホスト | デフォルトのロケーション | 登録後に新しいサブスクライブされたホストが保存されるデフォルトの場所。 |
すぐに期限切れ | 120 | サブスクリプションの更新について通知されるまでのサブスクリプションの残り日数。 |
コンテンツビューの依存関係を解決するデフォルト | なし | 新しいコンテンツビューのデフォルトの依存関係解決値。 |
重複する DMIUUID をホストする | をクリックします。 | デスクトップ管理インターフェイス (DMI)UUID が重複しているためにホストが登録に失敗した場合は、ここにコンマ区切りの値を追加します。後続の登録により、影響を受けるホストに対して一意の DMIUUID が生成されます。 |
ホストプロファイルを想定 | あり | 登録 DMIUUID が別のホストによって使用されていない限り、新しいホスト登録を有効にして、ホスト名が一致する登録済みプロファイルを想定します。 |
ビルドでホストプロファイルを変更できる | なし | ホストがビルドモードである限り、ホストプロファイル をバイパスするようにホスト登録を有効にします。 |
ホストはビルドでのみ再登録できます | なし | ホストがビルドモードの場合にのみ、ホストが再登録できるようにします。 |
ホストタスクワーカーのプールサイズ | 5 | ホスト関連タスクの実行を処理するためのプール内のワーカーの数。0 に設定すると、デフォルトのキューが使用されます。dynflowd/foreman-tasks サービスの再起動が必要です。 |
適用性バッチサイズ | 50 | タスクごとに処理するホスト適用性計算の数。 |
Autosearch | あり | それをサポートするページの場合、検索入力を入力しながら自動的に検索を実行します。 |
自動検索の遅延 | 500 | 自動検索が有効になっている場合は、入力中に検索を実行する前にミリ秒単位で遅延します。 |
Pulp バルクロードサイズ | 2000 | 1 ページの PulpAPI 呼び出しからフェッチされたアイテムの数。 |
Dynflow なしでプロファイルをアップロードする | あり | Katello を有効にして、ホストがインストールしたパッケージ、有効なリポジトリー、およびモジュールインベントリーを、Dynflow タスクでラップするのではなく、直接更新できるようにします (Puma プロセスが大量のメモリーを使用している場合はオフにしてみてください)。 |
孤立したコンテンツの保護時間 | 1440 | 孤立したコンテンツを孤立していると見なす時間 (分単位)。 |
リモート実行のために Capsule を介して登録することをお勧めします | なし | リモート実行を使用する場合は、ホストが登録されているプロキシーを使用することをお勧めします。 |
公開されたコンテンツビューのリポジトリーの削除を許可する | あり | ユーザーが以前に 1 つ以上のコンテンツビューバージョンで公開したリポジトリーの削除を有効にします。 |
A.8. 認証設定
設定 | Default Value | 説明 |
---|---|---|
OAuth がアクティブ | あり | Satellite は API 認証に OAuth を使用します。 |
OAuth コンシューマーキー | ***** | OAuth コンシューマーキー。 |
OAuth コンシューマーシークレット | ***** | OAuth コンシューマーシークレット。 |
OAuth マップユーザー | なし | Satellite は、リクエストヘッダーのユーザー名でユーザーをマッピングします。これが無効になっている場合、OAuth リクエストには管理者権限があります。 |
ログイン試行の失敗制限 | 30 | Satellite は、指定された回数のログイン試行の失敗後 5 分間、受信 IP アドレスからのユーザーログインをブロックします。ブルートフォース保護を無効にするには、0 に設定します。 |
登録された Capsules を制限する | あり | 既知の Capsules のみが、Capsules 認証を使用する機能にアクセスできます。 |
Capsules には SSL が必要 | あり |
クライアント SSL 証明書は、Capsules を識別するために使用されます ( |
信頼できるホスト | をクリックします。 | ファクト/レポートインポーターおよび ENC 出力にアクセスするための Capsules に加えて、信頼されるホスト名、IPv4、IPv6 アドレス、またはサブネットのリスト。 |
SSL 証明書 |
| Satellite がプロキシーとの通信に使用する SSL 証明書パス。 |
SSL CA ファイル |
| Satellite がプロキシーとの通信に使用する SSLCA ファイルパス。 |
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 への接続を確認するためにテンプレートで使用される SSLCA ファイルパス。 | |
Websocket SSL キー |
| Satellite が WebSocket を暗号化するために使用する秘密鍵ファイルのパス。 |
Websocket SSL 証明書 |
| Satellite が WebSocket を暗号化するために使用する証明書パス。 |
WebSocket の暗号化 | あり |
VNC/SPICE WebSocket プロキシーコンソールアクセス暗号化 ( |
ログイン委譲ログアウト URL | ログアウト時にユーザーをこの URL にリダイレクトします。ログイン委譲の承認 も有効にします。 | |
ログイン委譲認証ソースユーザーの自動作成を承認します | External | 不明な外部認証ユーザー (ログイン委譲の承認を参照) が作成される外部認証ソースの名前。空は自動作成がないことを意味します。 |
ログイン委譲を承認する | なし |
|
ログイン委譲 API を承認する | なし |
API 呼び出しにも |
アイドルタイムアウト | 60 | 指定した分数が経過したら、アイドル状態のユーザーをログアウトします。 |
BCrypt パスワードのコスト | 9 | 内部認証ソースの bcrypt パスワードハッシュ関数のコスト値 (4-30)。値が大きいほど安全ですが、特にステートレス API 呼び出しと UI ログインの場合、検証は遅くなります。既存のパスワードに影響を与えるには、パスワードの変更が必要です。 |
BMC クレデンシャルアクセス | あり | ENCYAML 出力およびテンプレートでの BMC インターフェイスパスワードへのアクセスを許可します。 |
OIDC JWKs URL |
OpenID Connect JSON Web Key Set (JWKS) の URL。Keycloak を OpenID プロバイダーとして使用する場合、通常は | |
OIDC Audience | をクリックします。 | 認証に使用されている OpenIDConnect Audience の名前。Keycloak の場合、これはクライアント ID です。 |
OIDC Issuer |
issuer claim は、JSON Web トークン (JWT) を発行したプリンシパルを識別します。これは、ほとんどの OpenID プロバイダーの場合は | |
OIDC Algorithm | OpenID プロバイダーで JWT をエンコードするために使用されるアルゴリズム。 |
A.9. メール設定
設定 | Default Value | 説明 |
---|---|---|
メール返信アドレス | Satellite が送信している電子メールの電子メール返信アドレス。 | |
メールの件名の接頭辞 | すべての送信メールに追加する接頭辞。 | |
ウェルカムメールを送信する | なし | 新しいユーザーにユーザー名と URL を含むウェルカムメールを送信します。 |
配信方法 | Sendmail | 電子メールの配信に使用される方法。 |
SMTP enable StartTLS auto | あり | 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 に設定されている場合にのみ使用されます。 |
A.10. 通知設定
設定 | Default Value | 説明 |
---|---|---|
RSS を有効にする | あり | RSS 通知をプルします。 |
RSS URL | https://www.redhat.com/en/rss/blog/channel/red-hat-satellite | RSS 通知を取得する URL。 |
A.11. プロビジョニング設定
設定 | Default Value | 説明 |
---|---|---|
ホストオーナー | 空の Satellite が現在のユーザーを使用する場合、プロビジョニングされたホストのデフォルトの所有者。 | |
root パスワード | ***** | プロビジョニングされたホストのデフォルトの暗号化されたルートパスワード。 |
無人 URL | ホストがビルド中にテンプレートを取得する URL。https、無人、または userdata で始まる場合、HTTP を使用してコントローラーにアクセスすることはできません。 | |
Safemode レンダリング |
|
プロビジョニングテンプレートのセーフモードレンダリングを有効にします。デフォルトの推奨オプションである
|
ビルドせずに無人でアクセス | なし | ビルドモードを使用せずに無人 URL へのアクセスを有効にします。 |
ローカルネームサーバーのクエリー | なし | Satellite は、SOA/NS 権限ではなく、ローカルに設定されたリゾルバーにクエリーを実行します。 |
インストールトークンの有効期間 | 360 | インストールトークンが有効である必要がある時間 (分単位)。トークンを無効にするには、0 に設定します。 |
SSH タイムアウト | 120 | SSH プロビジョニングがタイムアウトするまでの秒単位の時間。 |
Libvirt のデフォルトのコンソールアドレス | 0.0.0.0 | libvirt を使用して新しい仮想マシンをプロビジョニングするときに、コンソールのリッスンアドレスに使用する必要がある IP アドレス。 |
ビルドされたリクエストから IP を更新 | なし | Satellite は、ビルド要求を行った IP でホスト IP を更新します。 |
VM には短い名前を使用します | なし | Satellite は、新しい仮想マシンを作成するために FQDN の代わりに短いホスト名を使用します。 |
DNS タイムアウト | [5, 10, 15, 20] |
|
失敗したデプロイメントのクリーンアップ | あり | プロビジョニングスクリプトがゼロ以外の終了コードで終了した場合、Satellite は仮想マシンを削除します。 |
名前ジェネレーターのタイプ |
| 新規ホスト作成時のホスト名の生成方法を指定します。
デフォルトの
|
デフォルトの PXE グローバルテンプレートエントリー |
グローバルテンプレートのデフォルトの PXE メニュー項目 - | |
デフォルトの PXE ローカルテンプレートエントリー |
ローカルテンプレートのデフォルトの PXE メニュー項目 - | |
iPXE 中間スクリプト | iPXE 中間スクリプト | 無人インストール用の中間 iPXE スクリプト。 |
ホストの削除で関連付けられた VM を破棄します | なし | ホストの削除時に関連する VM を破棄します。有効にすると、ホストにリンクされている VM がコンピューティングリソースから削除されます。無効にすると、ホストが削除されたときに VM のリンクが解除されます。つまり、VM はコンピュートリソースに残り、再関連付けしたり、Satellite に再度インポートしたりできます。これにより、VM の電源が自動的にオフになることはありません |
最大の構造化されたファクト | 100 |
構造化サブツリー内のキーの最大数、 |
デフォルトのグローバル登録テンプレート | グローバル登録 | グローバル登録テンプレート。 |
デフォルトのホスト初期設定テンプレート | Linuxhost_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 を管理する | あり | Satellite は、新しいホストの提供時に証明書の署名を自動化します。 |
証明書に UUID を使用する | なし | Satellite は、ホスト名の代わりにランダムな UUID を証明書の署名に使用します。 |
サポートされていないプロビジョニングテンプレートを表示する | なし | サポートされていないプロビジョニングテンプレートを表示します。有効にすると、使用可能なすべてのテンプレートが表示されます。無効にすると、RedHat でサポートされているテンプレートのみが表示されます。 |
A.12. ファクト設定
設定 | Default Value | 説明 |
---|---|---|
ファクトがアップロードされたときに新しいホストを作成する | あり | 新しいファクトが受信されると、Satellite がホストを作成します。 |
場所のファクト | satellite_location | Puppet の実行後に作成されたホストは、このファクトで指定された場所に配置されます。 |
組織のファクト | satellite_organization | Puppet の実行後に作成されたホストは、このファクトで指定された組織に配置されます。このファクトの内容は、組織の完全なラベルである必要があります。 |
デフォルトの場所 | デフォルトのロケーション | ロケーションファクトを送信しなかった Puppet の実行後に作成されたホストは、このロケーションに配置されます。 |
デフォルトの組織 | デフォルトの組織 | 組織ファクトを送信しなかった Puppet の実行後に作成されたホストは、この組織に配置されます。 |
ファクトからホストグループを更新する | あり | Satellite は、ホストのホストグループをそのファクトから更新します。 |
オペレーティングシステムのファクトを無視する | なし | ファクトからオペレーティングシステムを更新するのをやめます。 |
ドメインのファクトを無視する | なし | ファクトからのドメイン値の更新を停止します。 |
ファクトからサブネットを更新する | なし | Satellite は、ホストのサブネットをそのファクトから更新します。 |
プロビジョニングのためにインターフェイスファクトを無視する | なし | ファクトからの IP および MAC アドレス値の更新を停止します (すべてのインターフェイスに影響します)。 |
一致する識別子を持つインターフェイスを無視 |
[ |
受信ファクトからのこれらの値に一致する識別子を持つホストネットワークインターフェイスオブジェクトの作成または更新をスキップします。*ワイルドカードを使用して、識別子をインデックスと照合できます (例: |
satellite に保存されているファクトの除外パターン |
[ |
インポートされたすべてのタイプのファクト (Puppet、Ansible、rhsm) のパターンを除外します。これらのファクトは Satellite データベースに保存されません。*ワイルドカードを使用して、名前をインデックスと一致させることができます。たとえば、 |
A.13. 管理設定設定
設定 | Default Value | 説明 |
---|---|---|
レポートのアップロード時に新しいホストを作成する | あり | レポートを受信すると、Satellite がホストを作成します。 |
Matchers の継承 | あり | Satellite マッチャーは、ホストグループ、組織、および場所のスマートクラスパラメーターを評価するときに子に継承されます。 |
デフォルトパラメータールックアップパス |
| Satellite は、デフォルトでホストスマートクラスパラメーターをこの順序で評価します。 |
パラメーター内の ERB を補間します | あり | Satellite は、ENC 出力のパラメーター値で ERB を解析します。 |
常に設定ステータスを表示する | なし | Puppet Capsule が割り当てられていない場合でも、すべてのホストに設定ステータスが表示されます。 |
A.14. リモート実行設定
設定 | Default Value | 説明 |
---|---|---|
Capsule へのフォールバック | なし | リモート実行を使用して、ホストでプロキシーを検索します。これは、ホストにサブネットがない場合、またはサブネットに実行プロキシーがない場合に役立ちます。 |
グローバルカプセルの有効化 | あり | ホストに割り当てられたプロキシーの外部でリモート実行プロキシーを検索します。検索は、ホストの組織と場所に限定されます。 |
SSH ユーザー | root |
SSH に使用するデフォルトのユーザー。 |
実効ユーザー | root | スクリプトの実行に使用するデフォルトのユーザー。ユーザーが SSH ユーザーと異なる場合は、su または sudo を使用してユーザーを切り替えます。 |
実効ユーザーメソッド | sudo |
有効なユーザーに切り替えるために使用されるコマンド。 |
有効なユーザーパスワード | ***** | 有効なユーザーパスワード。効果的なユーザー を参照してください。 |
ジョブテンプレートの同期 | あり |
|
SSH ポート | 22 |
SSH 通信に使用するポート。デフォルトのポート 22 |
IP での接続 | なし |
ホストインターフェイスの IP アドレスが FQDN よりも優先されるかどうか。DNS が FQDN を適切に解決していない場合に役立ちます。 |
IPv4 よりも IPv6 を優先する | なし |
IP アドレスを使用して接続する場合、IPv6 アドレスが優先されますか ?IPv6 アドレスが設定されていない場合は、自動的に IPv4 にフォールバックします。 |
デフォルトの SSH パスワード | ***** |
SSH に使用するデフォルトのパスワード。 |
デフォルトの SSH 鍵のパスフレーズ | ***** |
SSH に使用するデフォルトのキーパスフレーズ。 |
ワーカーのプールサイズ | 5 |
リモート実行ジョブの実行を処理するためのプール内のワーカーの数。 |
作業ディレクトリーの消去 | あり |
タスクの完了後に作業ディレクトリーを削除するかどうか。 |
Cockpit の URL | Web コンソールボタンの Cockpit インスタンスの場所。デフォルトでは、ボタンは表示されません。 | |
フォームジョブテンプレート | コマンドの実行 -SSH のデフォルト | ジョブ呼び出しフォームで事前に選択されているジョブテンプレートを選択します。 |
ジョブ呼び出しレポートテンプレート | ジョブ - 呼び出しレポートテンプレート | 特定のリモート実行ジョブのレポートを生成するために使用されるレポートテンプレートを選択します。 |
A.15. Ansible 設定
設定 | Default Value | 説明 |
---|---|---|
秘密鍵パス |
これを使用して、パスワードの代わりに Ansible が使用する SSH 秘密鍵へのパスを指定します。 | |
connection.type | ssh |
Ansible Playbook を実行するときは、デフォルトでこの接続タイプを使用します。 |
WinRM 証明書の検証 | validate |
Ansible Playbook を実行するときに、WinRM サーバー証明書の検証を有効または無効にします。 |
デフォルトの詳細レベル | Disabled | Satellite は、Ansible Playbook を実行するときに、追加のデバッグ出力のためにこのレベルの冗長性を追加します。 |
プロビジョニング後のタイムアウト | 360 | ホストが完全にプロビジョニングされた後、Satellite が Ansible ロールタスク Playbook をトリガーするタイミングを設定するタイムアウト (秒単位)。これを、ホストが再起動後に準備ができるまでにかかると予想される最大時間に設定します。 |
Ansible レポートのタイムアウト | 30 | ホストがレポートする必要があるタイムアウト (分単位)。 |
Ansible の同期が無効 | なし | 設定された間隔内にレポートが到着しない場合、Ansible の同期がとれていないホスト設定ステータスを無効にします。 |
デフォルトの Ansible インベントリーレポートテンプレート | Ansible-Ansible インベントリー | Satellite はこのテンプレートを使用して、Ansible インベントリーでレポートをスケジュールします。 |
無視する Ansible のロール | をクリックします。 |
Capsule からロールをインポートするときに除外するロール。予想される入力はコンマ区切り値であり、*ワイルドカードメタ文字を使用できます。例: |
Ansible の Capsules タスクのバッチサイズ |
|