Red Hat Training

A Red Hat training course is available for Red Hat Satellite

ユーザーガイド

Red Hat Satellite 5.8

Red Hat Satellite の使用と管理

Red Hat Satellite Documentation Team

概要

本ガイドでは、Red Hat Satellite の使用と管理について説明します。追加情報については、Red Hat Satellite Getting Started Guide および Red Hat Satellite Client Configuration Guide を参照してください。

第1章 ユーザーアカウントの管理

1.1. ユーザーアカウントの作成および削除

Red Hat  Satellite web サーバー上の ユーザー ページは、Satellite ユーザーを管理する上で適したツールを提供します。このページを使用して、ユーザーアカウントの作成、削除、アクティベート、および停止を実行できると共に、ロールと関連付けられたパーミッションを割り当てることができます。
ユーザーアカウントの作成

Satellite ユーザーが Satellite サーバーに登録して製品の更新の要求や他の保守作業を行えるようにするには、適切なユーザーアカウントが必要になります。特定の Satellite 管理者 のみがユーザーアカウントを作成できます。

手順1.1 ユーザーアカウントの作成

ユーザーアカウントを作成するには以下を行います。
  1. Satellite の web サーバーページに移動して、ナビゲーションバー上の ユーザー タブをクリックします。
  2. ページの右側で、新規ユーザーの作成 をクリックし、ユーザーの作成 ページを開きます。
  3. すべての必須フィールドに入力します。

    注記

    ログイン値は 5 文字以上の長さにしてください。使用できるのは英数字、ハイフン、下線、コンマ、ピリオド、および商用の at (@) の文字です。
  4. ログインの作成 をクリックして、新規ユーザーを作成します。Email が作成時に指定されたアドレスを使ってユーザーに送信され、ユーザーは新規のアカウント詳細について通知されます。また、パスワードはプレーンテキストに含まれます。
  5. アカウントの作成が完了すると、ユーザーの一覧 ページにリダイレクトされます。新規ユーザーのパーミッションの変更やオプションの設定を行う場合は、表示されている一覧からそのユーザーの名前を選択して ユーザーの詳細 ページを表示し、適切なタブに移動して変更を行います。
ユーザーアカウントの削除

Satellite 管理者 のみがユーザーアカウントを削除できます。削除されたアカウントを使用して、Satellite サーバーのインターフェースにログインしたり、動作をスケジュールしたりすることはできません。

警告

削除したユーザーアカウントを取得することはできません。削除した結果を判断するため、そのアカウントを停止してからユーザーアカウントを削除することを検討してください。

手順1.2 ユーザーアカウントの削除

ユーザーアカウントを削除するには以下を行います。
  1. Satellite の web サーバーページに移動して、ナビゲーションバー上の ユーザー タブをクリックします。
  2. ユーザー名 の一覧から削除するアカウントのユーザー名をクリックします。ユーザーの詳細 ページが表示されます。
  3. ユーザーアカウントが Satellite 管理者ではないことを確認します。
    ユーザーが Satellite 管理者である場合、関連するチェックボックスをクリアにしてからサブミット をクリックします。
    ユーザーが Satellite 管理者ではない場合は次のステップに進みます。
  4. ユーザーの削除をクリックします。ユーザーの削除の確認 ページが表示されます。
  5. このユーザーアカウントを完全に削除してもよいかを確認してから ユーザーの削除 をクリックします。
ユーザーアカウントが正常に削除されると、アクティブなユーザー ページに戻ります。ユーザーの名前は アクティブなユーザー の一覧には表示されなくなります。

手順1.3 ユーザーのアクティベートと停止

ユーザーアカウントは、作成時に自動的にアクティベートされます。ユーザーアカウントは管理者が停止することも、ユーザーが各自のアカウントを停止することもできます。停止したユーザーアカウントは、Satellite サーバーのインターフェースにログインしたり、動作をスケジュールしたりすることができません。アカウントが停止される前にスケジュールされていたいずれの動作も、それらが完了するまで動作キューに置かれたままになります。停止されたユーザーアカウントは、管理者によってのみ再度アクティベートされます。

注記

管理者アカウントは、管理者ロールがアカウントから削除された後でなければ停止することができません。
ユーザーアカウントを停止するには以下を実行します。
  1. ユーザー タブ内にある一覧からユーザー名を選択し、ユーザーの詳細 ページを表示します。
  2. そのユーザーが Satellite 管理者かどうか確認します。
    Satellite 管理者である場合は、そのロールの横にあるチェックボックスのチェックマークを外してから サブミット をクリックします。
    Satellite 管理者ではない場合はそのまま次のステップに進みます。
  3. ユーザーを停止する をクリックします。
    この動作を確認するため再クリックが求められます。 詳細を確認してから ユーザーを停止する を再度クリックして確定します。
  4. アカウントが正しく停止されると、そのユーザー名は アクティブなユーザー の一覧には表示されなくなります。 停止されたユーザーアカウントを表示するには、 ユーザーの一覧 のメニューから 停止 のリンクをクリックします。
  5. ユーザーアカウントを再度アクティベートする場合は、停止 の一覧を表示させてから、再度アクティベートしたいユーザーの横にあるチェックボックスに印を付け、再度アクティベートする をクリックします。

1.2. ユーザーアカウントへのロールの割り当て

ユーザーアカウントの管理は、Satellite Server のナビゲーションバー上部にある ユーザー タブを使用して行います。ユーザーのパーミッションの変更やオプションの設定を行う場合は、一覧からそのユーザー名を選択して ユーザーの詳細 ページを表示します。次に、該当タブに移動して変更を行います。変更を加えて サブミット をクリックしてアカウントの詳細を修正します。

ユーザーのロール

ユーザーのロール を使ってユーザーアカウントに各種の役割を任せます。ユーザーロールによって役割やアクセスのレベルはそれぞれ異なります。
ユーザーに新しいロールを割り当てる場合は、 ユーザーの詳細 のページの該当チェックボックスを使ってロールの選択を行います。 変更を加え サブミット をクリックしてロールを修正します。
ユーザーロールには以下のような種類があります。
Satellite 管理者
組織の作成、サブスクリプションの管理、Satellite Server のグローバル設定など、Satellite の管理作業を行うための特別なロールです。
このロールは ユーザーの詳細 ページでは割り当てられません。Satellite Server 管理者ロールを有しているユーザーは、別のユーザーにロールを割り当てることができます。この割り当ては、管理ユーザー の順に移動して行います。
組織の管理者
組織内でのユーザー、システム、およびチャンネルなどの管理作業を行います。組織の管理者には、その他すべてのロールに対する管理アクセスが自動的に与えられます。これらは、他のロールが選択されるとチェックボックスがグレー表示されるのでわかるようになっています。
アクティベーションキーの管理者
アカウント内のキーの作成、変更、削除など、アクティベーションキー関連の作業を行います。
チャンネル管理者
組織内のソフトウェアチャンネルおよび関連チャンネルへの完全なアクセスが与えられます。チャンネルのサブスクリプションをグローバルに可能にする、新しいチャンネルを作成する、チャンネル内のパッケージを管理する、などの作業を行います。
設定管理者
組織内の設定チャンネルおよび関連チャンネルへの完全なアクセスが与えられます。組織内のキックスタートプロファイルおよび関連するアイテムへの完全なアクセスも与えられます。組織内のキックスタートプロファイル、チャンネルおよびファイル管理設定の作業を行います。
システムグループ管理者
このロールは、アクセス権を付与されたシステムおよびシステムグループに対して完全な権限を有します。システムグループの新規作成、割り当てられたシステムグループの削除、グループへのシステムの追加、グループに対するユーザーアクセスの管理などの作業を行います。
Satellite 管理者は、自らの権利を含む Satellite 管理者の権利を削除できますが、Satellite 管理者は最低でも常に 1 名必要です。

1.3. Red Hat Satellite の選択部分のカスタマイズ

Red Hat Satellite web インターフェースの選択部分をカスタマイズできます。これには、ヘッダー、フッター、およびログインページが含まれます。
  1. テキストエディターで Red Hat Satellite の rhn.conf ファイルを開きます。
  2. 必要なコンテンツを追加してファイルを編集します。複数行にまたがるコンテンツを入力するには、新しい行をバックスラッシュでエスケープします。バックスラッシュ自体をエスケープすることができますが HTML はエスケープされません。

    注記

    Red Hat Satelliteは現在、 rhn.conf の UTF-8 エンコーディングをサポートしません。
    • ヘッダーをカスタマイズするには、必要なコンテンツで java.custom_header を編集します。
    • フッターをカスタマイズするには、必要なコンテンツで java.custom_footer を編集します。
    • ログインバナーをカスタマイズするには、必要なコンテキストで java.login_banner を編集します。
  3. Satellite を再起動して変更を有効にします。

第2章 Red Hat Satellite Server リポジトリーの自動同期

Red Hat Satellite サーバーリポジトリーを Red Hat Content Delivery Network (CDN) と手動で同期するのは難しいことがあります。最良のパフォーマンスを実現するために、同期を自動化して、ピークを避けた時間帯を指定し、同期が無作為に発生するようにすることができます。cron ユーティリティーを使用すると効果的に同期を自動化できます。

手順2.1 cron ユーティリティーを使用した同期の自動化

  1. root ユーザーに切り替え、次のコマンドを実行して、テキストエディターで crontab を開きます。
    # crontab -e
  2. 適切なジョブ定義を作成して同期のスケジュールを設定します。ランダムな同期時間を作成する場合は以下のエントリーを使用します。
    0 1 * * * perl -le 'sleep rand 9000' && cdn-sync --email >/dev/null 2>1
    このエントリーは、01:00 から 03:30 の間に同期ジョブをランダムに実行し、cron ユーティリティーから stdout および stderr メッセージを破棄します。これは、cdn-sync コマンドからのメッセージが重複しないようにします。他のオプションも必要に応じて追加することができます。詳細は、crontab man ページの man crontab を参照してください。
  3. テキストエディターを終了するだけで更新された crontab ファイルは保存されます。追加した新しいルールは直ちに反映されます。

注記

デフォルトでは crontab ファイルは vi で開かれます。この動作を変更するには、EDITOR の変数を希望するテキストエディターの名前に変更します。

第3章 障害回復の計画

本章では、Red Hat Satellite と組み込みデータベースをバックアップ、検証、および復元するための推奨方法について説明します。外部データベースを使用している場合は、企業または組織のデータベース管理者にお問い合わせください。組み込みデータベースを使用している場合は、このプロセスの詳細と使用可能なオプションについて、「組み込みデータベースのバックアップ」 を参照してください。
格納しているデータの量やシステムの機能停止が発生した場合に想定されるデータの損失量などに応じ、バックアップの作成を毎晩または毎週実施してください。
オフラインの「コールド」バックアップの実行を計画する場合は、バックアップ中は Web サイトおよびクライアント接続サービスがすべて使用できなくなるため、Red Hat はこれらのバックアップを Satellite Server の定期保守時の機能停止期間にスケジュールすることを推奨します。Satellite 5.6 以上のバージョンでは、オンラインの「ホット」バックアップ機能が含まれているため、オフラインでバックアップをする必要はありません。

3.1. Red Hat Satellite Server のバックアップ

Red Hat Satellite システムをバックアップする方法はいくつかあります。Red Hat は以下の方法を推奨しています。
最小限のバックアップ

Red Hat は、少なくとも以下のファイルおよびディレクトリーをバックアップすることを推奨しています。

  • /var/opt/rh/rh-postgresql95/lib/pgsql/ (組み込みデータベースのみ)
  • /etc/sysconfig/rhn/
  • /etc/rhn/
  • /etc/sudoers
  • /var/www/html/pub/
  • /var/satellite/redhat/[0-9]*/ (カスタムの RPM を格納する場所)
  • /root/.gnupg/
  • /root/ssl-build/
  • /etc/dhcp.conf
  • /etc/httpd
  • /var/lib/tftpboot/ (Red Hat Enterprise Linux 6 の場合)
  • /var/lib/cobbler/
  • /var/lib/rhn/kickstarts/
  • /var/www/
  • /var/lib/nocpulse/
  • /etc/tomcat*/
  • /etc/jabberd/
  • /etc/cobbler/
If possible, back up /var/satellite/ as well. In case of failure, this will save lengthy download times. The /var/satellite/ directory (specifically /var/satellite/redhat/NULL/) is primarily a duplicate of Red Hat's RPM repository, and can be regenerated using the cdn-sync command. Red Hat recommends that the entire /var/satellite/ tree be backed up. In the case of disconnected satellites, /var/satellite/ must be backed up.
これらのファイルとディレクトリーのみをバックアップすることにはいくつかの欠点があります。障害回復プロセスの一部として、以下を実行する必要があります。
  • Red Hat Satellite ISO RPM を再インストールします。
  • サーバーを再登録します。
  • Use the cdn-sync command to resynchronize Red Hat packages.
  • /root/ssl-build/rhn-org-httpd-ssl-key-pair-MACHINE_NAME-VER-REL.noarch.rpm ファイルを再インストールします。
再登録をしないバックアップ

別の方法として、前述のファイルとディレクトリーのバックアップはすべて行い、Satellite サーバーは登録せずに再インストールする方法です。インストール時に、Red Hat Network の登録と SSL 証明書の生成の部分は取り消すか、または省略します。

マシンの完全バックアップ

最後に、最も包括的な方法としてマシン全体をバックアップする方法があります。この方法の場合、ダウンロードと再インストールの時間を節約することができます。ただし、余分なディスク領域とバックアップ時間が必要になります。

重要

使用されるバックアップの方法に関係なく、バックアップから Satellite サーバーを復元する際には、次回の rhn-search サービスの起動時に検索インデックスの再作成が行われるようにスケジュールする必要があります。
# service rhn-search cleanindex

3.2. 組み込みデータベースのバックアップ

Red Hat Satellite は、組み込みデータベースの管理タスクを支援する特殊なコマンドラインユーティリティを提供します。db-control コマンドは、バックアップの作成、検証、復元をはじめデータベースの状態に関する情報の取得、必要な時の再起動に至るまでの様々な機能を提供します。利用可能な機能の完全な一覧については db-control man ページ (man db-control) を参照してください。
以下のセクションでは、Red Hat Satellite の組み込みデータベースおよび管理データベースの作成、検証、および復元の方法について説明します。

3.2.1. データベースのオンラインバックアップの実行

Red Hat Satellite Server 5 には、Satellite Server を停止せずにデータベースのオンラインバックアップを可能にする機能が含まれています。既存の db-control コマンドにオプションを追加すると、この機能が可能になります。
以下の 3 つの新規のオプションが db-control コマンドに追加されました。
  • online-backup FILENAME: Satellite データベースのオンラインバックアップを実行します (組み込み PostgreSQL のみ)。
  • reset-password: ユーザーパスワードをリセットし、アカウントのロックを解除します。
  • restore DIRECTORY | FILENAME: 以下のいずれかのバックアップによりデータベースを復元します。
    • db-control backup によって取得され、DIRECTORY ディレクトリーに保存されるオフラインのバックアップ。backuprestore 操作がどちらも正常に実行されるため、データベースは停止している必要があります。
    • db-control online-backup によって取得され、FILENAME として保存されるオンラインのバックアップ。online-backuprestore 操作がどちらも正常に実行されるため、データベース自体は実行中である必要がありますが、それ以外のすべての Satellite サービスは停止している必要があります。

3.2.1.1. オンラインバックアップの実行

組み込み Red Hat Satellite 5 サーバーデータベースのオンラインバックアップを作成するには、root ユーザーとして以下のコマンドを実行します。FILENAME オプションを、作成するバックアップファイルの完全パスに置き換えます。この場所は、PostgreSQL ユーザーが書き込める必要があります。
# db-control online-backup FILENAME

注記

オンラインバックアップを実行するには、データベースまたは Satellite サービスのいずれも停止する必要はありません。

3.2.1.2. オンラインバックアップからのデータベースの復元

db-control online-backup コマンドを使用して作成されたバックアップから組み込みデータベースを復元するには、db-control restore FILENAME コマンドを使用します。データベースを復元する前に、データベース自体を除く、すべての Satellite サービスをシャットダウンする必要があります。

手順3.1 オンラインバックアップからのデータベースの復元

  1. root ユーザーに切り替え、データベース以外のすべての Satellite サービスを停止するために以下のコマンドを実行します。
    # rhn-satellite stop --exclude=rh-postgresql95-postgresql
  2. 以下のコマンドを実行してデータベースを復元します。FILENAME オプションを、db-control online-backup コマンドで作成したバックアップファイルの完全パスで置き換えます。
    # db-control restore FILENAME
  3. 復元が完了したら、以下のコマンドを実行して、データベースとすべての関連サービスを再起動します。
    # rhn-satellite start

3.2.2. データベースのオフラインバックアップの実行

Red Hat Satellite Server 5 は、オンラインバックアップと復元操作を実行する機能を提供します。Red Hat は、月ごとまたは 4 半期ごとの保守時にオフラインバックアップを継続して行うことを推奨します。

3.2.2.1. オフラインバックアップの実行

以下での手順では、組み込み Red Hat Satellite サーバーデータベースのバックアップ方法について説明します。

手順3.2 オフラインバックアップの作成

  1. root ユーザーに切り替え、以下のコマンドを実行して Satellite サーバーを停止します。
    # rhn-satellite stop
  2. 以下のコマンドを実行してバックアップを作成します。
    # db-control backup DIRECTORY
    DIRECTORY の部分はデータベースのバックアップの保管先となる場所の絶対パスを入力してください。このプロセスには数分かかります。
  3. バックアップが完了したら、以下のコマンドを実行して Satellite サーバーを再起動します。
    # rhn-satellite start
  4. 次にバックアップを rsync または別のファイル転送ユーティリティを使って別のシステムにコピーします。Red Hat は cron ジョブを使って自動バックアップのプロセスをスケジュールすることを強く推奨します。 例えば、午前 3 時にシステムをバックアップしてからそのバックアップを午前 6 時に別のリポジトリー (パーティション、ディスク、またはシステム) にコピーします。

3.2.2.2. バックアップの検証

結果として作成されるバックアップの整合性を確保できなければ、組み込みデータベースのバックアップを行なっても役に立ちません。この整合性の検査を行う方法として 2 つのアプローチがあります。まずは、バックアップを検査 (examine) して、バックアップのタイムスタンプを確認し、ファイルが紛失していないかどうかを確認します。または、バックアップを検証 (verify) します。これには、バックアップの徹底的な検証や、バックアップ内の各ファイルの md5sum の妥当性検証を行うことも関係します。最初の方法はより速く実行できますが、2 番目の方法ではより徹底的な検証を行うことができます。
バックアップを検査するには、root として以下のコマンドを実行します。
# db-control examine BACKUP_FILE
バックアップを検証するには、root として以下のコマンドを実行します。
# db-control verify BACKUP_FILE
検証に成功すると、BACKUP_FILE ディレクトリーからデータベースを安全に復元できます。

注記

外部データベースの場合も定期的なバックアップを行う必要があります。対応しているバックアップ手順についてはその外部データベースの管理者にご相談ください。

3.2.2.3. データベースの復元

db-control restore コマンドを使用してバックアップから組み込みデータベースを復元します。データベースの復元を試行する前に、データベースと関連するすべてのサービスをシャットダウンする必要があります。

手順3.3 バックアップからの組み込みデータベースの復元

  1. すべての Red Hat Satellite サービスを停止するために以下のコマンドを実行します。
    # rhn-satellite stop
  2. 復元を開始するには、バックアップが格納されているディレクトリーを含む、以下のコマンドを実行します。directory の部分は、バックアップが格納されている場所の絶対パスで置き換えます。まずバックアップの内容の検証が行われてから、実際のデータベースの復元が行われます。このプロセスには数分かかります。
    # db-control restore directory
    このコマンドは組み込みデータベースを復元するだけではありません。復元の前にチェックサムを使ったバックアップディレクトリーの内容の検証も行います。
  3. 復元が完了したら、データベースと関連サービスを再起動します。
    # rhn-satellite start
  4. バックアップしているデータベースが外部のデータベースか組み込みデータベースであるかに関わらず、バックアップからデータベースを復元する際には rhn-search サービスの次回の起動時に検索インデックスの復元が行われるようスケジュールします。
    # service rhn-search cleanindex

3.3. 組み込みデータベースを使用する Red Hat Satellite のクローン作成

組み込みデータベースを使用する Red Hat Satellite サーバーのクローンを作成することで、ハードウェアやその他の障害による機能停止を全体的に抑えることができます。1 次サーバーに障害が発生した場合の予備としてクローン作成されたサーバーを準備できます。

手順3.4 組み込みデータベースを使用する Satellite Server のクローン作成

  1. 組み込みデータベースを使用する Red Hat Satellite を、別のマシン上の Red Hat Enterprise Linux のベースインストールにインストールします。つまり、Red Hat Satellite の 1 次サーバーとは異なるマシンにインストールします。SSL 証明書の生成手順は省略します。
  2. 「オフラインバックアップの実行」 の説明どおりにコマンドを使って 1 次サーバーのデータベースを日次でバックアップします。これを行うと、障害が発生した日の変更のみが失われることになります。
  3. バックアップを 2 次サーバーにコピーするメカニズムを構築します。rsync などのファイル転送プログラムを使ってリポジトリーを常に同期します。SAN (Storage Area Network) を使用している場合はコピーは不要です。
  4. db-control restore コマンドを使用して重複するデータをインポートします。
  5. 1 次サーバーに障害が発生した場合、/root/ssl-build 内にある SSL キーペアの RPM パッケージを 1 次サーバーから 2 次サーバーに転送し、そのパッケージをインストールします。これにより、Red Hat Satellite クライアントの 2 次サーバーでの認証および安全な接続が可能になります。
  6. DNS が 2 次サーバーを参照するように更新するか、またはロードバランサーを適切に設定します。

3.4. 外部データベースを使用する冗長な Satellite の作成

組み込みデータベースを使用する Red Hat Satellite で使用可能なクローン作成のオプションと同様に、冗長な Satellite サーバーを用意することで外部データベースを使用する Satellite サーバーでの機能停止を制限することができます。クローンとは異なり、外部データベースを使用する冗長な Satellite サーバーは アクティブ モードで実行することも、または スタンバイ モードで実行することもでき、ご使用のネットワークトポロジーに応じて使い分けることができます。その運用方法は以下の手順とは別になります。

重要

以下の手順を開始する前に、耐障害性データベースの構築向けに推奨される適切な方法を用いて、フェールオーバー用の外部データベースを準備します。社内のデータベース管理者にお問い合わせください。

手順3.5 外部データベースを使用する冗長な Satellite の作成

  1. 別のマシンに Red Hat Satellite をインストールしますが、データベースの設定、データベースのスキーマ、SSL 証明書、およびブートストラップスクリプトなどの生成手順の部分は省略します。Satellite の初回インストール時に入力した同じ Red Hat Network アカウント情報およびデータベース接続情報を含めます。
  2. 新規の Satellite サーバーを登録します。詳しくは、Red Hat Satelliteインストールガイド』 を参照してください。
  3. オリジナルの SSL 証明書作成時に高可用性ソリューションについて考慮していなかった場合は、より適切な Common Name の値を使って新しい SSL 証明書を作成してください (「Red Hat Satelliteクライアント設定ガイド』」の 「『SSL Maintenance Tool』」を参照)。この場合、この新規の値を取り込む新しいブートストラップスクリプトを生成します (「『Red Hat Satellite クライアント設定ガイド』」の「『ブートストラップスクリプトを生成する』」に記載)。Common Name の値が単一マシンのホスト名を表すのではなく、 Satellite の一体化ソリューションを表すようにします。
  4. インストールが終了したら、次のファイルを 1 次サーバーから 2 次サーバーにコピーします。
    • /etc/rhn/rhn.conf
    • /etc/tnsnames.ora (Oracle データベースのみ。)
  5. 1 次サーバーからサーバー側の SSL 証明書 RPM をコピーして 2 次サーバーにインストールします。
    インストールプロセス時に新しい Common Name の値を含んだ新しい SSL 証明書を生成した場合には、その SSL 証明書 RPM を 2 次サーバーから1 次サーバーにコピーしてクライアント側の証明書を再配信します。また、別のブートストラップスクリプトを作成した場合には、すべてのクライアントシステムへの証明書のインストールにはこのスクリプトを使用します。
    • 新しいブートストラップスクリプトを作成した場合は、/var/www/html/pub/bootstrap/ の内容を1 次サーバーにコピーします。
    • 新しいブートストラップスクリプトを作成しなかった場合は、/var/www/html/pub/bootstrap/ の内容を1 次サーバーから 2 次サーバーにコピーします。
  6. Red Hat Network Task Engine サービスを停止するには、 2 次サーバー上で以下のコマンドを実行します。
    # service taskomatic stop
    2 次サーバー上で、カスタムのスクリプトを使用するか、またはその他の方法を使用して Red Hat Network Task Engine の自動スタートアップや自動フェールオーバーを確立することもできます。いずれの場合も、障害の発生時に確実に起動できるようにする必要があります。
  7. 何らかのネットワークストレージデバイスでチャンネルパッケージのデータ (デフォルトでは /var/satellite にある) とキャッシュデータ (デフォルトでは /var/cache/rhn にある) を1 次サーバーと 2 次サーバー間で共有します。これによりデータを重複して持たせることなく各サーバーのデータ保存整合性を確保できるようになります。
  8. Common Name およびご使用のインフラストラクチャーに合った方法を用いてネットワーク上で各種のサーバーを使用できるようにします。ラウンドロビンの DNS、ネットワーク負荷分散機能、およびリバースプロキシの設定などが考えられます。

3.5. Satellite データベースのバックアップの自動化

バックアップ作業を自動化して、ピーク時を避け深夜もしくは早朝などにバックアップが行われるようにすることができます。これにより、バックアップをとるのを忘れてしまったりすることなく定期的にバックアップを実施することができます。バックアップの自動化で最も効果的なのは cron を使用する方法です。

手順3.6 Satellite Server データベースのバックアップ自動化

backup-db.sh という名前の新しいファイルを作成し、以下のスクリプトを含ませます。このスクリプトで Satellite の停止や、データベースのバックアップ、および Satellite の再起動などを行います。
#!/bin/bash
{
/usr/sbin/rhn-satellite stop
d=db-backup-$(date "+%F");
mkdir -p /tmp/$d;
db-control backup /tmp/$d
/usr/sbin/rhn-satellite start
} &> /dev/null
  1. move-files.sh という名前の新しいファイルを作成し、以下のスクリプトを含ませます。このスクリプトを使ってバックアップファイルを格納先のディレクトリーに rsync で移動します。
    #!/bin/bash
    rsync -avz /tmp/db-backup-$(date "+%F") <destination> &> /dev/null
    <destination> をバックアップディレクトリーのパスに置き換えます。
    または、以下のスクリプトを使用しても同じことができます。
    #!/bin/bash
    scp -r /tmp/db-backup-$(date "+%F") <destination> &> /dev/null
  2. root ユーザーに切り替え、テキストエディターで crontab ファイルを開きます。
    # crontab -e

    注記

    デフォルトでは crontab ファイルは vi で開かれます。この動作を変更するには、EDITOR の変数を希望するテキストエディターの名前に変更します。
  3. 適切なジョブ定義を作成して、バックアップスクリプトを実行するスケジュールを設定します。
    0 3 * * * backup-db.sh
    0 6 * * * move-files.sh
    この crontab のエントリーの場合、バックアップは 03:00 に、そのバックアップファイルの転送は 06:00 にそれぞれ実行されます。その他のオプションも必要に応じて追加することができます。また、古いバックアップディレクトリーを削除してバックアップストレージが満杯にならないようにするクリーンアップスクリプトを含めることもできます。
  4. エディターを終了するだけで crontab ファイルは保存されます。追加した新しいルールは直ちに反映されます。

第4章 コマンドライン設定管理ツールの使用

Red Hat Satellite web サイトで提供されるオプションのほかに、Red Hat Network Configuration Client および Red Hat Network Configuration Manager の 2 種類のコマンドラインツールをシステムの設定ファイルの管理用に提供しています。クライアントシステム上で設定管理を有効にしたり、無効にしたりする補完ツールの Red Hat Network Actions Control もあります。これらのツールをインストールしていない場合は、使用しているオペレーティングシステムの子チャンネルとなる Red Hat Network ツール内で取得できます。

注記

Web サイトから設定ファイルを配備する際は常に、影響を受けるシステムの /var/lib/rhncfg/backups/ ディレクトリーに完全パスを含む以前のファイルのバックアップを作成します。バックアップのファイル名は保持されますが、.rhn-cfg-backup という拡張子が付きます。

4.1. Red Hat Network Actions Control の使用

Red Hat Network Actions Control (rhn-actions-control) アプリケーションは、システムの設定管理を有効にしたり、無効にしたりする際に使用します。デフォルトではこの方法でクライアントシステムを管理することができません。このツールにより、Satellite 管理者は次のような許可される動作の特定モードを有効または無効にできます: システム上に設定ファイルを配備、システムからファイルをアップロードdiff を使用してシステムで現在管理対象となるものや利用可能なものを判別、任意のリモートコマンドの実行を許可。 これらのモードは /etc/sysconfig/rhn/allowed-actions/ ディレクトリーにファイルやディレクトリーの配置または削除を行うことによって有効または無効にできます。/etc/sysconfig/rhn/ ディレクトリーのデフォルトの権限により、Red Hat Network Actions Control は root アクセス権を持つユーザーによって実行される必要があります。

4.1.1. 一般的なコマンドラインオプションの使用

ほとんどのコマンドラインツールと同様に、man ページを使用できます。Red Hat Network でスケジュール済みのどの動作をシステム管理者が使用できるようにするかのみを確定します。次のオプションを使用して各種のスケジュール済み動作のモードを有効にすることができます。

表4.1 rhn-actions-control のオプション

オプション説明
--enable-deployrhncfg-client にファイルの配備を許可します
--enable-diffrhncfg-client にファイルの diff (差分取得) を許可します
--enable-uploadrhncfg-client にファイルのアップロードを許可します
--enable-mtime-uploadrhncfg-clien に mtime のアップロードを許可します
--enable-allrhncfg-client に全ての動作を許可します
--enable-runscript.run を有効にします
--disable-deploy配備を無効にします
--disable-diffdiff (差分取得) を無効にします
--disable-uploadアップロードを無効にします
--disable-mtime-uploadmtime のアップロードを無効にします
--disable-all全てのオプションを無効にします
--disable-runscript.run を無効にします
--reportモードが有効になっているか、または無効になっているのかをレポートします
-f, --force確認なしに操作を強制実行します
-h, --helpヘルプメッセージを表示して終了します
モードが設定されたら (rhn-actions-control --enable-all が一般的)、Red Hat Satellite でシステムの設定管理を行う準備ができます。

4.2. Red Hat Network Configuration Client の使用

名前が示す通り、Red Hat Network Configuration Client (rhncfg-client) は各クライアントシステムから別々にインストールして実行されます。次にこれを使用して Red Hat Network が設定ファイルをクライアントにどのように導入するかに関する情報を得ることができます。
Red Hat Network Configuration Client は、「list」、「get」、「channels」、「diff」、「verify」などの基本モードを提供します。

4.2.1. 設定ファイルの一覧表示

マシンの設定ファイルとそのファイルを含む設定チャンネルのラベルを一覧表示するには、以下のコマンドを実行します。
rhncfg-client list
出力は次のようになります。
Config Channel      File
config-channel-17   /etc/example-config.txt
config-channel-17   /var/spool/aalib.rpm
config-channel-14   /etc/rhn/rhn.conf
これらはシステムに適用されている設定ファイルです。ただし、他のチャンネルにも重複したファイルがあるかもしれません。例えば、次のコマンドを発行してみます。
rhncfg-manager list config-channel-14
次の出力を見てみます。
Files in config channel 'config-channel-14' /etc/example-config.txt /etc/rhn/rhn.conf
/etc/example-config.txt の 2 番目のバージョンがどこへ行ったか気になるかもしれません。 config-channel-17 にある /etc/example-config.txt ファイルは config-channel-14 にある同ファイルよりランクが高くなっていました。その結果、config-channel-14 の設定ファイルのバージョンはこのシステムには配備されていませんが、ファイルはまだそのチャンネルにあります。このシステムにこのファイルは配備されないため、rhncfg-client コマンドはこのファイルを表示しません。

4.2.2. 設定ファイルの取得

マシンに最適な設定ファイルをダウンロードする場合は、次のコマンドを実行します。
rhncfg-client get /etc/example-config.txt
次のような出力が表示されるはずです。
Deploying /etc/example-config.txt
less または他のページャーを使用してこのファイルのコンテンツを表示します。このファイルを含む設定チャンネルのランクを基準にしてこのファイルが「最適」として選択されている点に注意してください。これは、システムの詳細 ページの 設定 タブ内で実行できます。

4.2.3. 設定チャンネルの表示

システムに適用される設定チャンネルのラベルと名前を表示するには、次のコマンドを発行します。
rhncfg-client channels
次のような出力が表示されるはずです。
Config channels: Label Name ----- ---- config-channel-17 config chan 2 config-channel-14 config chan 1
次の表は rhncfg-client get に使用できるオプションの一覧です。

表4.2 rhncfg-client get のオプション

オプション説明
--topdir=TOPDIR全てのファイル操作をこの文字列に対して相対的にします
--exclude=EXCLUDE'get'/ を使用して配備されたファイルを除外します。複数回の使用が可能です。
-h, --helpヘルプメッセージを表示して終了します

4.2.4. 設定ファイルの違いを比較

システムに配備した設定ファイルと Red Hat Network で保存している設定ファイル間の違いを表示するには、次のコマンドを発行します。
rhncfg-client diff
出力は以下のようになります。
[root@testsatellite root]# rhncfg-client diff
--- /etc/test
+++ /etc/test	2013-08-28 00:14:49.405152824 +1000
@@ -1 +1,2 @@
 This is the first line
+This is the second line added
さらに、次のように --topdir オプションを組み込んで Red Hat Network 内の設定ファイルと、クライアントシステム上の任意 (さらに未使用) の場所にある設定ファイルを比較することができます。
[root@ root]# rhncfg-client diff --topdir /home/test/blah/ /usr/bin/diff: /home/test/blah/etc/example-config.txt: No such file or directory /usr/bin/diff: /home/test/blah/var/spool/aalib.rpm: No such file or directory

4.2.5. 設定ファイルの確認

クライアントの設定ファイルが Red Hat Network で関連付けられた設定ファイルと異なるかどうかを簡単に確認するには、次のコマンドを発行します。
rhncfg-client verify
出力は以下のようになります。
modified /etc/example-config.txt /var/spool/aalib.rpm
example-config.txt ファイルはローカルで修正されていますが、 aalib.rpm は修正されていません。
次の表は rhncfg-client verify に使用できるオプションの一覧です。

表4.3 rhncfg-clientt verify のオプション

オプション説明
-v, --verbose出力させる詳細レベルを増やします。指定した設定ファイルのモード、所有者、およびグループパーミッションの違いを表示します。
-o, --only異なるファイルのみを表示します。
-h, --helpヘルプメッセージを表示して終了します

4.3. Red Hat Network Configuration Manager の使用

Red Hat Network Configuration Client とは異なり、Red Hat Network Configuration Manager (rhncfg-manager) は、クライアントシステムにある設定ファイルではなく Red Hat Network にある設定ファイルとチャンネルの中央レポジトリの保守を目的として設計されています。このツールでは Red Hat Network Web サイト内の設定管理機能の代替となるコマンドラインのほか、関連するメンテナンスの一部または全体を行うためにスクリプトを作成する機能も備えています。
これは、設定管理者による使用が意図されているため、適切な権限セットを持つ Red Hat Network ユーザー名とパスワードを必要とします。ユーザー名は /etc/sysconfig/rhn/rhncfg-manager.conf または ~/.rhncfgrc の [rhncfg-manager] セクションに指定することができます。
Red Hat Network Configuration Manager が root として実行されると、Red Hat Update Agent から必要な設定値を取得しようとします。root 以外のユーザーとして実行される場合は、~/.rhncfgrc ファイル内で設定の変更を行う必要があるかもしれません。セッションファイルは ~/.rhncfg-manager-session にキャッシュされ、すべてのコマンドごとにログインが行われないようにします。
Red Hat Network Configuration Manager のデフォルトのタイムアウトは 30 分です。タイムアウトを変更するには、server.session_lifetime オプションと新しい値を、このマネージャーを実行しているサーバー上の /etc/rhn/rhn.conf ファイルに追加します。次のようになります。
server.session_lifetime = 120
Red Hat Network Configuration Manager には、「add」、「create-channel」、「diff」、「diff-revisions」、「download-channel」、「get」、「list」、「list-channels」、「remove」、「remove-channel」、「revisions」、「update」、「upload-channel」などの基本モードが備わっています。
各モードにはそれぞれ独自のオプションセットがあります。 次のコマンドを発行するとオプションを表示することができます。
rhncfg-manager mode --help 
mode の部分にモード名を入れて調べます。
rhncfg-manager diff-revisions --help
「add」モードのオプション一覧は、「設定チャンネルへのファイルの追加」 を参照してください。

4.3.1. 設定チャンネルの作成

組織用の設定チャンネルを作成するには、次のコマンドを発行します。
rhncfg-manager create-channel channel-label
Red Hat Satellite のユーザー名とパスワードの入力が求められたら入力します。次のような出力になります。
Red Hat Network username: rhn-user
Password:
Creating config channel channel-label Config channel channel-label created
設定チャンネルを作成したら、上記の残りのモードを使ってそのチャンネルの設定や管理を行います。

4.3.2. 設定チャンネルへのファイルの追加

設定チャンネルにファイルを追加するには、アップロードするローカルファイルとチャンネルのラベルを指定します。
rhncfg-manager add --channel=channel-label /path/to/file
必要なチャンネルラベルおよびファイルへのパスのほか、追加時にファイルに変更を加えるオプションを使用することもできます。例えば、以下のようにコマンドに --dest-file オプションを組み込んでパスとファイル名を変更することができます。
rhncfg-manager add --channel=channel-label --dest-file=/new/path/to/file.txt/path/to/file
出力は以下のようになります。
Pushing to channel example-channel
Local file >/path/to/file -> remote file /new/path/to/file.txt
次の表は rhncfg-manager add に使用できるオプションの一覧です。

表4.4 rhncfg-manager add のオプション

オプション説明
-c CHANNEL --channel=CHANNELこの設定チャンネルにファイルをアップロードします
-d DEST_FILE --dest-file=DEST_FILEこのパスにファイルをアップロードします
--delim-start=DELIM_START変数挿入用の区切りの開始点です
--delim-end=DELIM_END変数挿入用の区切りの終了点です
-i, --ignore-missing足りないローカルファイルは無視します
--selinux-context=SELINUX_CONTEXTSELinux コンテキストを上書きします。
-h, --helpヘルプメッセージを表示して終了します

注記

デフォルトでは設定ファイルの最大サイズは 128KB です。この値を変更する必要がある場合は、以下のファイルで指定の行を見つけるか、その行を作成します。
/usr/share/rhn/config-defaults/rhn_web.conf の場合(バイト単位):
maximum_config_file_size = 131072
/usr/share/rhn/config-defaults/rhn_server.conf の場合(バイト単位):
maximum_config_file_size = 131072
/usr/share/rhn/config-defaults/rhn_java.conf (キロバイト単位):
java.config_file_edit_size = 128

4.3.3. 最新の設定ファイルの違いを比較

ディスク上の設定ファイルとチャンネル内の最新リビジョン間の違いを表示するには、以下のコマンドを実行します。
rhncfg-manager diff --channel=channel-label --dest-file=/path/to/file.txt \ /local/path/to/file
次のような出力が表示されるはずです。
--- /tmp/dest_path/example-config.txt config_channel: example-channel revision: 1
+++ /home/test/blah/hello_world.txt 2003-12-14 19:08:59.000000000 -0500
@@ -1 +1 @@
-foo
+hello, world
次の表は rhncfg-manager diff に使用できるオプションの一覧です。

表4.5 rhncfg-manager diff のオプション

オプション説明
-c CHANNEL, --channel=CHANNELこの設定チャンネルからファイルを取得します
-r REVISION, --revision=REVISIONこのリビジョンを使用します
-d DEST_FILE, --dest-file=DEST_FILEこのパスにファイルをアップロードします
-t TOPDIR, --topdir=TOPDIR全てのファイルをこの文字列に対して相対的にします
-h, --helpヘルプメッセージを表示して終了します

4.3.4. バージョン間の違いの比較

チャンネルおよびリビジョン全体で 1 つのファイルの異なるバージョンを比較する場合は、-r フラグを使用して比較するファイルのリビジョンを指定し、-n フラグでチェックする 2 つのチャンネルを特定します。これに関する説明は、「ファイルリビジョン数の判断」 を参照してください。ここでは 1 つのファイルの別のバージョンを比較しているため、1 つのファイル名のみを指定します。例を以下に示します。
rhncfg-manager diff-revisions -n=channel-label1 -r=1 -n=channel-label2 -r=1 /path/to/file.txt
出力は以下のようになります。
--- /tmp/dest_path/example-config.txt 2004-01-13 14:36:41 \ config channel: example-channel2 revision: 1
--- /tmp/dest_path/example-config.txt 2004-01-13 14:42:42 \ config channel: example-channel3 revision: 1
@@ -1 +1,20 @@
-foo
+blah
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.0.6 (GNU/Linux)
+Comment: For info see http://www.gnupg.org
+
+iD8DBQA9ZY6vse4XmfJPGwgRAsHcAJ9ud9dabUcdscdcqB8AZP7e0Fua0NmKsdhQCeOWHX +VsDTfen2NWdwwPaTM+S+Cow=
+=Ltp2
+-----END PGP SIGNATURE-----
次の表は rhncfg-manager diff-revisions に使用できるオプションの一覧です。

表4.6 rhncfg-manager diff-revisions のオプション

オプション説明
-c CHANNEL, --channel=CHANNELこの設定チャンネルを使用します
-r REVISION, --revision=REVISIONこのリビジョンを使用します
-h, --helpヘルプメッセージを表示して終了します

4.3.5. 1 つのチャンネル内のすべてのファイルをダウンロード

あるチャンネル内の全ファイルをディスクにダウンロードする場合は、ディレクトリーを 1 つ作成してから次のコマンドを発行します。
rhncfg-manager download-channel channel-label --topdir . 
出力は以下のようになります。
Copying /tmp/dest_path/example-config.txt -> \ blah2/tmp/dest_path/example-config.txt
次の表は rhncfg-manager download-channel に使用できるオプションの一覧です。

表4.7 rhncfg-manager download-channel のオプション

オプション説明
-t TOPDIR, --topdir=TOPDIR全てのファイルパスはこのディレクトリーに対して相対的になります。このオプションは設定しなければなりません。
-h, --helpヘルプメッセージを表示して終了します

4.3.6. ファイル内容の取得

特定ファイルの内容を標準出力に出力するには、次のコマンドを実行します。
rhncfg-manager get --channel=channel-label \ /tmp/dest_path/example-config.txt 
ファイルの内容は出力として表示されます。

4.3.7. チャンネル内の全ファイルの表示

1 つのチャンネル内の全ファイルを表示させるには、次のコマンドを発行します。
rhncfg-manager list channel-label
次のような出力が表示されるはずです。
Files in config channel `example-channel3': /tmp/dest_path/example-config.txt
次の表は rhncfg-manager get に使用できるオプションの一覧です。

表4.8 rhncfg-manager get のオプション

オプション説明
-c CHANNEL, --channel=CHANNELこの設定チャンネルからファイルを取得します
-t TOPDIR, --topdir=TOPDIR全てのファイルをこの文字列に対して相対的にします
-r REVISION, --revision=REVISIONこのファイルリビジョンを取得します
-h, --helpヘルプメッセージを表示して終了します

4.3.8. すべての設定チャンネルの一覧表示

組織内の全ての設定チャンネルを表示させるには、次のコマンドを発行します。
rhncfg-manager list-channels 
出力は以下のようになります。
Available config channels: example-channel example-channel2 example-channel3 config-channel-14 config-channel-17
local_override チャンネルや server_import チャンネルは表示しないので注意してください。

4.3.9. チャンネルからのファイルの削除

チャンネルからファイルを削除するには、次のコマンドを発行します。
rhncfg-manager remove --channel=channel-label /tmp/dest_path/example-config.txt
Red Hat Network のユーザー名とパスワードの入力が求められたら入力します。次のような出力が表示されます。
Red Hat Network username: rhn-user Password: Removing from config channel example-channel3 /tmp/dest_path/example-config.txt removed
次の表は rhncfg-manager remove に使用できるオプションの一覧です。

表4.9 rhncfg-manager remove のオプション

オプション説明
-c CHANNEL, --channel=CHANNELこの設定チャンネルからファイルを削除します
-t TOPDIR, --topdir=TOPDIR全てのファイルをこの文字列に対して相対的にします
-h, --helpヘルプメッセージを表示して終了します

4.3.10. 設定チャンネルの削除

組織の設定チャンネルを削除するには、以下のコマンドを実行します。
rhncfg-manager remove-channel channel-label 
出力は以下のようになります。
Removing config channel example-channel Config channel example-channel removed

4.3.11. ファイルリビジョン数の判断

チャンネル内のファイルやパスのリビジョンの数を確認するには (リビジョンは 1 から開始して N までとし、N は 0 より大きい整数になる)、次のコマンドを発行します。
rhncfg-manager revisions channel-label /tmp/dest_path/example-config.txt 
出力は以下のようになります。
Analyzing files in config channel example-channel \ /tmp/dest_path/example-config.txt: 1

4.3.12. チャンネル内のファイルの更新

チャンネル内のファイルの新たなリビジョンを作成 (またはそのパスにリビジョンが存在していない場合はそのチャンネルに最初のリビジョンを追加) するには、次のコマンドを発行します。
rhncfg-manager update \ --channel=channel-label --dest-file=/path/to/file.txt /local/path/to/file
出力は以下のようになります。
Pushing to channel example-channel: Local file example-channel/tmp/dest_path/example-config.txt -> \ remote file /tmp/dest_path/example-config.txt
次の表は rhncfg-manager update に使用できるオプションの一覧です。

表4.10 rhncfg-manager update のオプション

オプション説明
-c CHANNEL, --channel=CHANNELこの設定チャンネルにファイルをアップロードします
-d DEST_FILE, --dest-file=DEST_FILEこのパスにファイルをアップロードします
-t TOPDIR, --topdir=TOPDIR全てのファイルをこの文字列に対して相対的にします
--delim-start=DELIM_START変数挿入用の区切りの開始点です
--delim-end=DELIM_END変数挿入用の区切りの終了点です
-h, --helpヘルプメッセージを表示して終了します

4.3.13. 複数のファイルを一度にまとめてアップロード

ローカルディスクから設定チャンネルへ一度にまとめて複数ファイルをアップロードする場合は、次のコマンドを発行します。
rhncfg-manager upload-channel --topdir=topdir channel-label
出力は以下のようになります。
Using config channel example-channel4 Uploading /tmp/ola_world.txt from blah4/tmp/ola_world.txt
次の表は rhncfg-manager upload-channel に使用できるオプションの一覧です。

表4.11 rhncfg-manager upload-channel のオプション

オプション説明
-t TOPDIR, --topdir=TOPDIR全てのファイルパスはこのディレクトリーに対して相対的になります
-c CHANNEL, --channel=CHANNEL設定情報をアップロードする複数のチャンネルをリストします。 チャンネルとチャンネルの間はコンマ「,」で区切ります。 例: --channel=foo,bar,baz
-h, --helpヘルプメッセージを表示して終了します

4.4. Red Hat Satellite コマンドラインツール (spacecmd) の使用

spacecmd ツールは Red Hat Satellite の XML-RPC API と対話します。このツールにより、ユーザーはコマンドラインから簡単に Satellite の機能を実行できます。

注記

spacecmd の最初の実行時にユーザー名とパスワードが必要になります。これにより、指定ユーザーのセッションチケットが発行され、その後 spacecmd が使用されると 1 時間後に期限切れになるまでこのセッションが使用されます。ユーザーとパスワードを変更するには、-u USERNAME および -p PASSWORD オプションを使用します。
spacecmd は 2 つの実行方法を使用します。

インタラクティブシェルの使用

spacecmd のみを実行してインタラクティブシェルを開始します。
[root@satellite57 ~]# spacecmd
Welcome to spacecmd, a command-line interface to Spacewalk.

Type: 'help' for a list of commands
      'help <cmd>' for command-specific help
      'quit' to quit

INFO: Connected to https://localhost/rpc/api as admin
spacecmd {SSM:0}>
spacecmd プロンプトが表示され、System Set Manager (SSM) に接続するシステムの数も表示されます。
コマンドを実行するにはシェルに入力します。たとえば、すべてのシステムを一覧表示するには、以下のように system_list を実行します。
spacecmd {SSM:0}> system_list
system001.example.com
system002.example.com
system003.example.com
system004.example.com
...
システムのベースチャンネルを一覧表示するには、system_list の後にシステム名を追加して実行します。
spacecmd {SSM:0}> system_listbasechannel system001.example.com
rhel-x86_64-server-6
help コマンドを使用してすべてのコマンドを一覧表示します。

ターミナルの使用

Linux ターミナルから直接 spacecmd コマンドを実行します。たとえば、spacecmd system_list を使用すると、すべてのシステムが表示されます。
[root@satellite57 ~]# spacecmd system_list
INFO: Connected to https://localhost/rpc/api as admin
system001.example.com
system002.example.com
system003.example.com
system004.example.com
...
また、spacecmd system_listbasechannel systemname を使用するとシステムのベースチャンネルが表示されます。
[root@satellite57 ~]# spacecmd system_listbasechannel system001.example.com
INFO: Connected to https://localhost/rpc/api as admin
rhel-x86_64-server-6
spacecmd help を使用するとすべてのコマンドが一覧表示されます。

4.5. Red Hat Satellite Final Archive Tool (spacewalk-final-archive) の使用

spacewalk-final-archive は、Red Hat Satellite 5 サーバーを廃止する前にそのサーバーの最終アーカイブを生成するために使用されます。このコマンドは、/tmp/spacewalk-final/final-archive.tar.bz2 にあるアーカイブファイルを生成します。このアーカイブには以下が含まれます。
  • archive/db_backup ディレクトリーに格納されるデータベースのバックアップ。このバックアップは db-control コマンドで作成されます。
  • archive/debug ディレクトリーに格納される関連するシステムファイルすべてのコピー。このバックアップは spacewalk-debug コマンドで作成されます。
  • archive/reports ディレクトリーに格納される CSV 形式のレポートすべての最終コピー。このバックアップは spacewalk-report コマンドで作成されます。
  • archive/transition ディレクトリーに格納される、Red Hat Satellite 6 と使用する CVS 形式の遷移データ。このバックアップは spacewalk-export コマンドで作成されます。
完全なアーカイブ処理を開始するには、以下のコマンドを実行します。
[root@satellite57 ~]# spacewalk-final-archive
アーカイブから一部のコンテンツを制限する場合やアーカイブエクスポートディレクトリーを変更する場合は、-h オプションを使用して他のオプションを表示します。

第5章 ソフトウェアチャンネルおよびエラータのクローン作成

spacewalk-clone-by-date コマンドを使用すると、Red Hat Enterprise Linux システムに対してエラータが利用可能になった日付でカスタムの Red Hat Enterprise Linux チャンネルのクローンを作成することができるようになります。

5.1. 特長

spacewalk-clone-by-date で利用できる機能を以下に示します。
  • 特定の日付のチャンネルのエラータと関連するパッケージの状態のクローンを作成する
  • スクリプトとテンプレートファイルでクローン作成を自動化する
  • チャンネルからパッケージを削除するか、またはパッケージをブロックする
  • 親チャンネルと子チャンネル内のパッケージの依存関係を解決する
  • 特定のエラータのみをフィルターおよび対応し、他のエラータは無視する (たとえば、セキュリティーエラータのみに対応し、バグ修正や強化機能は無視)

注記

spacewalk-clone-by-date コマンドは root ユーザー で実行する必要があります。また、username は組織管理者か、またはチャンネル管理者のいずれかにしてください。

重要

Use of spacewalk-clone-by-date is limited to Red Hat Enterprise Linux 5 and higher versions because spacewalk-clone-by-date uses yum metadata to complete dependency resolution.

5.2. 使用例

以下の例では、2012 年 1 月 1 日時点の rhel-i386-server-5 チャンネルを my-clone-RHEL-5 という名前のチャンネルにクローン作成します。
# spacewalk-clone-by-date --username=your_username --password=your_password --server=satellite_server_url --channels=rhel-i386-server-5 my-clone-RHEL-5 --to_date=2012-01-01

重要

クローンされたチャンネル名に空白文字が含まれないようにしてください。
以下の例では、2012 年 1 月1 日またはそれ以前にリリースされたセキュリティ関連のエラータのみをクローン作成し、カーネルの更新や vim の拡張パッケージについてはすべて無視します。また、このコマンドは Satellite 上にてクローン作成プロセスをバックグラウンドで実行します。
# spacewalk-clone-by-date --username=your_username --password=your_password --server=satellite_server_url --channels=rhel-i386-server-5 my-clone-RHEL-5 --to_date=2012-01-01 --security_only --background --blacklist=kernel,vim-extended --assumeyes
選択可能なオプションとそれらの使用方法について詳しくは、spacewalk-clone-by-date の man ページを参照してください。

第6章 OpenSCAP を使用したシステムの保守

SCAP (Security Certification and Authorization Package) とは、企業レベルの Linux インフラストラクチャーを対象としたソリューションのチェックを行う標準コンプライアンスを指します。NIST (National Institute of Standards and Technology ) によって管理されている企業向けシステムのシステムセキュリティの保守に関する一連の規格になります。
Red Hat Satellite Server 5.5 以降では、SCAP 規格が OpenSCAP を使用して実装されます。OpenSCAP は XCCDF (Extensible Configuration Checklist Description Format) を利用する監査ツールになります。XCCDF はチェックリストの内容を表す標準的な方法で、セキュリティチェックリストを定義します。また、CPE (Common Platform Enumeration)、CCE (Common configuration Enumeration)、および OVAL (Open Vulnerability and Assessment language) などの他種類の規格を組み合わせて、SCAP で検証された製品で処理が可能な SCAP 表現のチェックリストも作成します。

6.1. OpenSCAP 機能

OpenSCAP は Red Hat セキュリティーレスポンスチーム (SRT) が提供するコンテンツを使ってパッチの有無を確認し、システムのセキュリティー構成の設定をチェックし、標準や規格に基づいたルールを使ってセキュリティー侵害の兆候がないかを検査します。

6.2. OpenSCAP の前提条件

OpenSCAP を効率的に使用するには、以下を利用可能にしておく必要があります。
  • システムが標準に適合することを検証するツール。
    Satellite Server 5.5 以降は、OpenSCAP を監査機能として使用します。これにより Web インターフェースを使ったシステムのコンプライアンススキャンをスケジュールして表示させることが可能になります。
  • SCAP のコンテンツ
    SCAP のコンテンツは、少なくとも XCCDF または OVAL を理解していればゼロから作成することができます。XCCDF のコンテンツはオープンソースライセンスで頻繁にオンライン公開されるため、ニーズに合わせてこのコンテンツをカスタマイズすることもできます。

    注記

    Red Hat ではテンプレートを使用したシステム評価に対応しています。ただし、こうしたテンプレートのカスタムのコンテンツオーサリングについては対応していません。
    XCCDF のコンテンツを公開している機関の例をいくつか示します。
    • The United States Government Configuration Baseline (USGCB): 米国連邦機関内のデスクトップ向け公式 SCAP コンテンツです。OVAL を使用し、Red Hat, Inc および国防総省 (DoD) との協同の下 NIST で開発されました。
    • コミュニティーが提供するコンテンツ:
      • SCAP Security Guide: アクティブなコミュニティーにより運営されるコンテンツで、USGCB 要件や広く認められているポリシーをソースとし、デスクトップやサーバー、 FTP サーバーなどのプロファイルが含まれています。Red Hat Enterprise Linux 6JBoss Enterprise Application Server 5. に適しています。
      • OpenSCAP コンテンツ - Red Hat Enterprise Linux 6 向け: Red Hat Enterprise Linux 6 のオプションチャンネルから取得できる openscap-content パッケージでは、テンプレートを使ったデフォルトコンテンツのガイダンスを提供しています。
SCAP はシステムセキュリティーの保守における標準化された方法を提供するために作成されたため、使用される標準はコミュニティーや企業ビジネスなどのニーズに対応するため継続的に変化していきます。整合性があり、繰り返しが可能なリビジョンのワークフローを提供するため、新しい規格は NIST の SCAP リリースサイクル で管理されています。

6.3. OpenSCAP の使用における Red Hat Satellite の前提条件

以下のセクションでは、Red Hat Satellite ServersSatellite Clients で OpenSCAP を使用するための前提条件について説明しています。
パッケージに関する要件

  • Satellite Server: Satellite 5.5 またはそれ以降。
  • Satellite Client: spacewalk-oscap パッケージ (Red Hat Network Tools 子チャンネルから利用可能)。

エンタイトルメントに関する要件

スキャンのスケジュールに Management エンタイトルメントが必要です。

その他の要件

Satellite クライアント: XCCDF コンテンツのすべてのクライアントマシン群への配信。

以下のいずれかの方法を使用して、XCCDF コンテンツをクライアントマシンに配信できます。
  • 従来の方法 (CD、USB、NFS、SCP、FTP)
  • Satellite のスクリプト
  • RPM パッケージ
    SCAP コンテンツを他のマシンに配信する場合はカスタムの RPM を使用する方法を推奨します。 RPM パッケージはその完全性を保証するために署名を行い、検証することができます。RPM のインストール、削除、および検証はユーザーインターフェースで管理することができます。

6.4. 監査スキャンの実行

Red Hat Satellite Server での OpenSCAP の統合により、クライアントシステム上で監査スキャンを行うことができるようになります。このセクションでは、これらのスキャンを実行するために利用できる方法について説明します。

6.4.1. Web インターフェースを使った監査スキャン

このセクションでは、監査スキャンを実行するために Satellite web インターフェースを使用する方法について説明します。

手順6.1 Web インターフェースを使用した監査スキャンの実行

  1. Satellite Web インターフェースにログインします。
  2. システムsystem_name の順にクリックします。
  3. 監査スケジュール の順にクリックします。
  4. 新規の XCCDF スキャンをスケジュール ページに入力します。このページのフィールドの詳細は 「「スケジュール」ページ」 を参照してください。

    警告

    XCCDF コンテンツは検証後にリモートシステムで実行されます。無効なコマンドライン引数を指定すると、spacewalk-oscap による検証や実行が失敗する可能性があります。セキュリティー対策上、oscap xccdf eval コマンドが受け入れるのは限られたパラメーターセットのみになります。

注記

rhn_check コマンドを実行して、クライアントシステムで動作が正しく選択されているかどうかを確認します。
# rhn_check -vv
rhnsdosad がクライアントシステムで実行している場合、アクションはこれらのサービスによって検知されます。これらが実行中であることを確認するには、以下のコマンドのいずれかを実行します。
Red Hat Enterprise Linux 5 および 6 の場合:
# service rhnsd start
# chkconfig rhnsd on
または
# service osad start
# chkconfig osad on
Red Hat Enterprise Linux 7 の場合
# systemctl enable rhnsd
# systemctl start rhnsd
または
# systemctl enable osad
# systemctl start osad
スキャンの結果を確認する場合は 「SCAP 監査の結果の表示」 を参照してください。

6.4.2. API を使った監査スキャン

このセクションでは、監査スキャンを実施するために Satellite API を使用する方法について説明します。

手順6.2 API を使った監査スキャンの実行

  1. 既存のスクリプトを選択するか、またはフロントエンドの API system.scap.scheduleXccdfScan を使ってシステムスキャンのスケジュールを行うスクリプトを作成します。例を以下に示します。
    #!/usr/bin/python
    import xmlrpclib
    client = xmlrpclib.Server('https://satellite.example.com/rpc/api')
    key = client.auth.login('username', 'password')
    client.system.scap.scheduleXccdfScan(key, 1000010001,
        '/usr/local/share/scap/usgcb-rhel5desktop-xccdf.xml',
        '--profile united_states_government_configuration_baseline')
    上記の説明は次のとおりです。
    • 1000010001 は system ID (sid) です。
    • /usr/local/share/scap/usgcb-rhel5desktop-xccdf.xml はクライアントシステム上のコンテンツのある場所へのパスです。この場合、/usr/local/share/scap ディレクトリー内の USGCB コンテンツを想定しています。
    • --profile united_states_government_configuration_baselineoscap コマンドの追加引数です。この場合、USGCB を使用しています。
  2. いずれかのシステムのコマンドラインインターフェースでスクリプトを実行します。このシステムには適切な python ライブラリと XML-RPC ライブラリをインストールしておく必要があります。

注記

rhn_check コマンドを実行して、クライアントシステムで動作が正しく選択されているかどうかを確認します。
# rhn_check -vv
代わりに rhnsdosad がクライアントシステムで実行している場合には、動作はこれらのサービスによって選択されます。これらが実行中であることを確認するには、以下のコマンドのいずれかを実行します。
Red Hat Enterprise Linux 5 および 6 の場合:
# service rhnsd start
# chkconfig rhnsd on
または
# service osad start
# chkconfig osad on
Red Hat Enterprise Linux 7 の場合
# systemctl enable rhnsd
# systemctl start rhnsd
または
# systemctl enable osad
# systemctl start osad

6.4.3. SCAP 監査の結果の表示

終了したスキャンの結果を表示する方法は 3 通りあります。
  • Web インターフェースを使う方法。スキャンの終了後、結果は特定のシステムの 監査 ページに表示されます。「OpenSCAP Satellite の Web インターフェース」 を参照してください。
  • ハンドラーの system.scap で API 関数を使う方法。
  • spacewalk-report コマンドを使用する方法。次のコマンドを実行します。
    # spacewalk-report system-history-scap
    # spacewalk-report scap-scan
    # spacewalk-report scap-scan-results

6.5. OpenSCAP Satellite の Web インターフェース

以下のセクションでは、OpenSCAP とその機能へのアクセスを提供する Red Hat Satellite web インターフェース内のページについて説明します。

6.5.1. OpenSCAP のスキャンページ

上部ナビゲーションバーの 監査 タブをクリックして、OpenSCAP のスキャンページを表示します。これは、Satellilte Server におけるすべての OpenSCAP 機能についての「概要」ページです。このページを使用して、完了したスキャンの表示、検索、および比較を行います。

6.5.1.1. 全スキャン

全スキャン ページは、監査 タブに表示されるデフォルトのページです。このページでは、操作しているユーザーが表示できるパーミッションを有している OpenSCAP スキャンで完了したスキャンをすべて表示します。スキャンのパーミッションはシステムのパーミッションから派生します。
各スキャンに対して次の情報が表示されます。
  • システム: スキャンされたシステム。
  • XCCDF プロファイル: 評価を行ったプロファイル。
  • 完了: スキャンが完了した時間。
  • 合格: 評価の結果が合格になったルール数。ルールは、評価の結果が合格または修正済みのいずれかになる場合に合格とみなされます。
  • 不合格: 評価の結果が不合格になったルール数。ルールは、評価の結果が失敗になる場合に不合格とみなされます。
  • 不明: 評価に失敗したルール数。ルールは、評価の結果がエラー、不明、またはチェックされていない、などになる場合に不明とみなされます。
また、XCCDF ルールの評価では情報適用できません、または選択されていません、などの状態の結果も返します。このような場合、ルールはこのページの統計には含まれません。これらのタイプの結果の詳細については、システムの詳細監査 をご覧ください。

6.5.1.2. XCCDF 差分

XCCDF 差分 は、2 つの XCCDF スキャンの比較を視覚化するアプリケーションです。2 つのスキャンのメタデータのほかに、結果の一覧を表示します。
スキャンの一覧 ページで適切なアイコンをクリックすると、同じようなスキャンの 差分 の出力にアクセスできます。または、任意のスキャンの ID を指定することもできます。
比較スキャンのいずれか一つにしか表示されない項目は「変動」しているとみなされます。変動アイテムは常にベージュ色で強調表示されます。比較モードは 3 種類あります。完全比較 は全スキャンアイテムを表示します。 変更された項目のみ は変更があったアイテムを表示します。変更がない項目のみ は変更がないか、または同じアイテムを表示します。

6.5.2. 「システム監査 (Systems Audit)」ページ

システム監査 (Systems Audit) ページでは、特定システムのコンプライアンススキャンをスケジュールしたり表示させたりすることができます。スキャンは NIST 標準の SCAP (Security Content Automation Protocol) を実装する OpenSCAP ツールで行います。システムのスキャンを行う場合は、SCAP コンテンツの準備が整い、要件がすべて満たされていることを確認してください。
システム監査 (Systems Audit) ページを表示するには、システムsystem_name監査 をクリックします。

6.5.2.1. スキャンの一覧

このページには、選択したシステム上で完了した全スキャンの要約が表示されます。以下のコラムが表示されます。

表6.1 OpenSCAP スキャンのラベル

コラムのラベル定義
Xccdf のテスト結果スキャンの結果詳細へのリンクになっているスキャンテストの結果の名前
完了スキャンが終了した正確な時間
コンプライアンス標準的な使用に基づくコンプライアンスの加重のない合格/不合格の配分
P合格のチェック数
F不合格のチェック数
Eスキャン中に発生したエラー数
U不明
Nこのマシンには適用不可
Kチェックされていない
S選択されていない
I情報
X修正済み
合計チェック合計数
各エントリーの先頭には、前回行った同様のスキャンと比較した結果を示すアイコンが表示されています。アイコンは以下を示します。
  • "List Checked" Icon   No difference between the compared scans.
  • "List Alert" Icon  Arbitrary differences between the compared scans.
  • "List Error" Icon  Major differences between the compared scans. Either there are more failures than the previous scan or less passes.
  • "List Check In" Icon  No comparable scan was found, and therefore no comparison was made.

6.5.2.2. スキャンの詳細

スキャンの詳細 (Scan Details) ページには、単一スキャンの結果が表示されます。このページは 2 つのセクションに分かれています。
XCCDF スキャンの詳細

このセクションには、次のようなスキャンについての詳細が表示されます。

  • ファイルシステムパス: スキャンに使用された XCCDF ファイルへのパス
  • コマンドラインの引数: 使用されたすべての追加コマンドラインの引数
  • プロファイル識別子: スキャンに使用されたプロファイルの識別子
  • プロファイルのタイトル: スキャンに使用されたプロファイルのタイトル
  • スキャンのエラー出力: スキャン中に発生したエラー。

XCCDF ルールの結果

ルールの結果では、XCCDF ルール識別子の全一覧が表示され、各ルールチェックの結果のタグと結果を確認することができます。この一覧は特定の結果でフィルターをかけることができます。

6.5.2.3. 「スケジュール」ページ

新規の XCCDF スキャンをスケジュール ページを使用して、特定のマシン用に新規のスキャンをスケジュールします。指定された日時 以降に スケジュールされている次回のシステムのチェックインでスキャンが行われます。
次のフィールドを設定できます。
  • コマンドラインの引数: oscap コマンドのオプションの引数になります。以下のいずれかになります。
    • --profile PROFILE: XCCDF ドキュメントから特定のプロファイルを指定します。
      プロファイルは、XCCDF XML ファイル内の プロファイル タグで決定されます。所定の XCCDF ファイル内でプロファイルの一覧を確認するには oscap コマンドを使用します。例えば、以下のようになります。
      $ oscap info /usr/share/openscap/scap-rhel6-xccdf.xml
      Document type: XCCDF Checklist
      Checklist version: 1.1
      Status: draft
      Generated: 2011-10-12
      Imported: 2012-11-15T22:10:41
      Resolved: false
      Profiles:
              RHEL6-Default
      指定されていない場合は、デフォルトのプロファイルが使用されます。

      注記

      Red Hat Enterprise Linux 5 の以前のバージョンの OpenSCAP には、--profile オプションを使用しないとスキャンが失敗するものがあります。
    • --skip-valid: 入力や出力のファイルの検証を行いません。XCCDF コンテンツが適切な形式で構成されていない場合、このオプションを使用するとファイル検証のプロセスを回避することができます。
  • XCCDF ドキュメントへのパス: これは必須フィールドになります。 path パラメーターでクライアントシステム上の XCCDF コンテンツの場所をポイントします。例えば、/usr/local/scap/dist_rhel6_scap-rhel6-oval.xml などです。

    警告

    XCCDF コンテンツは検証が行われると、リモートシステムで実行されます。無効な引数を指定すると、spacewalk-oscap による検証や実行が失敗する可能性があります。セキュリティ対策上、oscap xccdf eval コマンドが受け取るのは限られたパラメーターセットのみになります。
Satellite web インターフェースを使用してスキャンをスケジュールする方法は 「Web インターフェースを使った監査スキャン」 を参照してください。

第7章 クライアントソフトウェアの障害レポート

システムの全般的なレポート作成機能を拡張するには、Red Hat Satellite のソフトウェア障害レポート機能と 自動バグ報告ツール (ABRT) を利用することができます。この拡張機能により、クライアントは ABRT から Satellite サーバーに取り込まれるソフトウェア障害を自動的にレポートし、取り込まれた障害を集中管理された方法によって処理することもできます。これらの障害レポートの処理には、Web UI または API のいずれかを使用することができます。
クライアントシステム上に ABRT 用の Red Hat Satellite ツールをセットアップする方法について詳しくは、『Red Hat Satellite Client Configuration Guide』 を参照してください。

7.1. 単一クライアントのソフトウェア障害の表示

以下の手順は、Satellite の ABRT ツールがインストールされた単一のクライアントシステムのソフトウェア障害レポートを表示する方法になります。

手順7.1 単一クライアントのソフトウェア障害の表示

  1. Red Hat Satellite Web UI にログインします。
  2. 登録済みのシステムで発生したソフトウェア障害の一覧を表示するには、システムsystem_nameソフトウェアソフトウェアのクラッシュ の順にクリックします。
  3. 該当する障害をクリックし、その詳細とソフトウェア障害レポートのためにキャプチャーされたファイルを表示します。

7.2. 類似するソフトウェア障害の分類

Red Hat Satellite Web UI は、全システムにおけるソフトウェア障害を クラッシュ UUID 別に分類するページを提供します。これは、クライアント上の同様のソフトウェアクラッシュを特定するのに役立ちます。

手順7.2 複数のクライアントでの類似するソフトウェア障害を表示するには

  1. Red Hat Satellite Web UI にログインします。
  2. すべての登録済みシステムにおけるすべてのソフトウェア障害の一覧を表示するには、システムソフトウェアのクラッシュ の順にクリックします。
  3. ソフトウェア障害で影響を受けるシステムを表示するには、クラッシュ UUID をクリックします。
  4. 特定のシステムをクリックし、詳細と個別のソフトウェア障害レポート用に取り込まれたファイルを表示します。
クライアントシステムのソフトウェア障害レポートが表示されます。

7.3. ソフトウェア障害レポートについての組織全体の設定の変更

Red hat Satellite は、ソフトウェア障害レポートについての組織全体の設定を変更する機能を提供します。例えば、ソフトウェア障害が発生するたびに、クライアントは Satellite サーバーへの障害発生時に、ABRT が取り込むファイルをアップロードします。これらのファイルの長さは任意であるため、単一のクラッシュファイルのアップロードに対して組織全体でのサイズ制限を設定することができます。
以下の手順は、ソフトウェア障害についての組織全体の設定を変更する方法について説明しています。

手順7.3 ソフトウェア障害に対して組織全体の設定を変更

  1. Satellite Web UI で、管理<organization_name>設定 の順にクリックします。
  2. 組織全体の設定とアップロードサイズの設定を変更し、組織の更新 をクリックします。

7.4. ソフトウェア障害のログファイル

ソフトウェア障害の結果として ABRT によって取り込まれたログファイルは、それぞれの障害レポートごとに Satellite サーバーにアップロードされます。これらのファイルは、Web UI または API のいずれかを使用してダウンロードできます。Satellite サーバーでは、これらのログファイルは、/var/satellite/systems/$org_id/$system_id/crashes/$crash_name/ ディレクトリーに物理的に格納されます。

第8章 Red Hat Satellite レポートの生成

本章では、Red Hat Satellite からレポートを生成する方法を説明します。
Red Hat Satellite には、複数のコマンドラインレポートが含まれます。
  • channel-packages - チャンネル内のパッケージ
  • channels - チャンネルレポート
  • custom-info - システムカスタム情報の表示
  • entitlements - エンタイトルメントとチャンネルの一覧と使用
  • errata-channels - チャンネル内のエラータの一覧
  • errata-list - システムに対するコンプライアンス検査に基づくエラータ情報
  • errata-list-all - 全エラータの一覧
  • errata-systems - 影響を受ける各システムに適用できる各エラータの一覧
  • inactive-systems - Satellite 内の休止中のシステム
  • inventory - インベントリレポート
  • kickstartable-trees - キックスタート可能なツリーの一覧
  • packages-updates-all - アップグレード可能なパッケージの一覧
  • packages-updates-newest - アップグレード可能なパッケージの一覧
  • scap-scan - OpenSCAP xccdf の評価の結果
  • scap-scan-results - OpenSCAP xccdf の評価の結果
  • system-crash-count - システムのクラッシュ数
  • system-crash-details - システムのクラッシュの詳細
  • system-currency - システムの状態の一覧
  • system-groups - Satellite 内のシステムグループ
  • system-groups-keys - システムグループのアクティベーションキー
  • system-groups-systems - システムグループ内のシステム
  • system-groups-users - システムグループのユーザーレポート
  • system-history - システムのイベント履歴
  • system-history-channels - チャンネルのイベント履歴
  • system-history-configuration - 設定のイベント履歴
  • system-history-entitlements - システムのエンタイトルメントに関するイベント履歴
  • system-history-errata - エラータに関するイベント履歴
  • system-history-kickstart - キックスタートに関するイベント履歴
  • system-history-packages - パッケージに関連するイベント履歴
  • system-history-scap - OpenSCAP に関するイベント履歴
  • system-packages-installed - システムにインストールされたパッケージ
  • users - システム内のユーザー
  • users-systems - 個別ユーザーが管理するシステム
レポートを生成するには、以下のように spacewalk-report コマンドを使用します。
# spacewalk-report report-name
このコマンドは、コンマで区切った値 (CSV) の出力として、選択したレポートを生成します。

注記

Satellite のロギング機能は、Satellite バージョン 5.6 以上のフレッシュインストールではデフォルトで追加されます。Satellite が 5.6 未満のバージョンからアップグレードされた場合、ロギング機能はアップグレードの時点で有効化され、その時点からすべてのイベントが監査されます。
そのため、アップグレード以前に作成されたすべてのユーザーは、アップグレードの時点からログに記録されます。過去のユーザー作成や過去のイベントはログに記録されませんが、今後のイベントはすべてログに記録されます。
追加情報を取得するには、-h オプションを使って spacewalk-report コマンドを実行します。

第9章 Red Hat Satellite の管理タスクのスケジューリング

Red Hat Satellite では、組織管理者が taskomatic サービスを使った長期的な操作を定期的に実行することができます。これらの操作は個別の作業に分けられ、スケジュールで定義される バンチ に論理的に分類されます。これらのスケジュールは、特定の時間の間隔で実行するように変更することができます。Satellite のスケジュールは、以下を目的として使用されます。
  • 作業を自動化して、組織管理者から管理上の負担を取り除く。
  • 組織の日々のネットワークトラフィックに負担をかけない時間枠に操作上の作業をスケジュールする。
Red Hat Satellite は、特定の作業バンチをトリガーするデフォルトのスケジュールを提供しています。

表9.1 Red Hat Satellite 5.8 でのデフォルトのスケジュール

スケジュール名バンチ名バンチ機能
channel-repodata-defaultchannel-repodata-bunchチャンネルのリポジトリーデータを生成する。
cleanup-data-defaultcleanup-data-bunch古く無効になったまま残されたデータを消去する。
clear-taskologs-defaultclear-taskologs-bunchtaskomatic 実行ログ履歴を消去する。
cobbler-sync-defaultcobbler-sync-bunchcobbler 設定変更を適用する。
compare-configs-defaultcompare-configs-bunch全システムでの設定ファイルの比較をスケジュールする。
daily-status-queuedaily-status-bunchデイリーレポートを送信する。
errata-cache-defaulterrata-cache-bunch特定のサーバーまたはチャンネル用のエラータキャッシュを再計算する。
errata-queue-defaulterrata-queue-bunchエラータを処理する。
kickstart-cleanup-defaultkickstart-cleanup-bunch古くなったキックスタートを消去する。
kickstartfile-sync-defaultkickstartfile-sync-bunchウィザードを使って生成したキックスタートプロファイルを同期する。
package-cleanup-defaultpackage-cleanup-bunch孤立しているパッケージを消去する。
sandbox-cleanup-defaultsandbox-cleanup-bunchサンドボックスを消去する。
satcert-check-defaultsatcert-check-bunchSatellite 証明書の有効期限の状態を判別する。
session-cleanup-defaultsession-cleanup-bunch期限切れの行が増大しすぎないよう PXTSessions テーブルから削除する。

9.1. 実行 (Run) のスケジューリング

実行 (run) は、設定されたスケジュールに基づくバンチの 1 つの実行を指します。実行 (run) のスケジュールは、Red Hat Satellite で提供されるデフォルトのテンプレートに基づいて行うことも、完全に新規のスケジュールを作成することもできます。

手順9.1 スケジュールテンプレートの作成

  1. 組織管理者として Satellite にログインします。
  2. 管理タスクスケジュールスケジュールの作成の順にクリックします。
  3. 以下のフィールドに入力します。
    • スケジュール名: 先頭は文字で開始します。使用できるのは小文字、ハイフン、ピリオド、下線、または数字のみになります。
    • バンチ: 管理者が選択できる管理作業のデフォルトのバンチ。
    • 頻度
      頻度については、以下のオプションを使用できます。
      • スケジュールを無効にする: スケジュールされる作業とその結果についての詳細の知識を持つ管理者のみに推奨されます。スケジュールを無効にすることで、Satellite の動作を変更できます。
      • 毎日: 指定される時間に、日次のスケジュールを作成します。
      • 毎週: 指定される日と時間に、週次のスケジュールを作成します。
      • 毎月: 指定される日と時間に、月次のスケジュールを作成します。
      • カスタム Quartz 形式: この形式では、Cron 式に基づいてスケジュールを定義します。この形式について詳しくは、crontab man ページ (man 5 crontab) を参照してください。
  4. スケジュールの作成 をクリックします。

手順9.2 スケジュールテンプレートの編集

新規スケジュールを作成する代替方法として、デフォルトのテンプレートを編集することもできます。既存のテンプレートのいずれかを編集するには、以下を実行します。
  1. 組織管理者として Satellite にログインします。
  2. 管理タスクスケジュール の順にクリックします。
  3. 変更するスケジュールをクリックします。
  4. 必要に応じて頻度のタイプを変更します。
  5. スケジュールの編集をクリックします。

9.2. セルフサブスクライブされた Red Hat Satellite の設定

セルフサブスクライブされた Red Satellite 5 Server は、Red Hat Content Delivery Network (CDN) ではなくそのサーバー自体に登録されます。自体に登録されていない Satellite サーバーは Red Hat CDN に登録された後、Satellite サーバーとしてアクティベートされます。その後、Satellite は cdn-sync コマンドを使用して新しいパッケージとコンテンツを Red Hat CDN から取得できます。
セルフサブスクライブされた Satellite サーバーが設定されたら、Red Hat CDN からではなく Satellite サーバー自体でホストされたベースチャンネルから同様にコンテンツを取得します。これにより、Satellite に登録されたクライアントと同様に、Satellite サーバーの Red Hat Enterprise Linux パッケージを制御できます。

重要

セルフサブスクライブされた Satellite には次のような制限があります。
  • セルフサブスクライブされた Satellite は自身の登録を他のクライアントシステムの登録と同様に処理します。セルフサブスクライブされた Satellite を誤って変更しないようにするには、システムプロファイルの システムのロック を使用して、セルフサブスクライブされた Satellite のシステムプロファイルをロックします。
  • セルフサブスクライブされた Satellite は osad を使用できません。 クライアント側の osad パッケージをインストールすると、Satellite のプロビジョニング機能は動作しません。

9.2.1. セルフサブスクライブされた Satellite のインストールおよび設定

手順9.3 セルフサブスクライブされた Satellite のインストールおよび設定

  1. Red Hat Satellite 5 インストールガイド』 の 『シナリオ 1: 組み込みデータベースを使用する Satellite のインストール』 にある手順にしたがって Red Hat Enterprise Linux をインストールします。インストールを非接続モードで実行する必要があります。
  2. インストール後、/etc/rhn/rhn.conf 設定ファイルにある disconnected パラメーターの値を 0 に戻し、次のステップで cdn-sync コマンドを使用できるようにします。
    disconnected=0
    
  3. cdn-sync コマンドを使用して、Satellite サーバーにインストールされた Red Hat Enterprise Linux のバージョンと一致するベースチャンネルをダウンロードおよびインポートします。cdn-sync コマンドを使用すると Red Hat CDN から必要なファイルをインポートできます。任意で satellite-sync コマンドを使用すると、ダウンロードできるベースチャンネルコンテンツ ISO をインポートできます。
  4. Satellite 5 の web インターフェースを使用して、インポートしたベースチャンネルをクローンしたチャンネルを作成します。詳細は 5章ソフトウェアチャンネルおよびエラータのクローン作成 を参照してください。
  5. 以下のコマンドを使用して、クライアント側の Satellite SSL 証明書を Satellite サーバーにインストールします。
    # rpm -Uvh /var/www/html/pub/rhn-org-trusted-ssl-cert-1.0-1.noarch.rpm
  6. Satellite のホスト名と SSL 証明書を使用するよう、/etc/sysconfig/rhn/up2date を編集して Red Hat Update Agent を再設定します。以下のオプションを変更します。
    sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
    noSSLServerURL=http://satellite-server-hostname/XMLRPC
    serverURL=https://satellite-server-hostname/XMLRPC
  7. Register the Satellite server:
    # rhnreg_ks --username satellite_username --password satellite_password
  8. Satellite web インターフェースにログインします。システムの詳細チャンネル に移動し、ドロップダウンメニューからクローンしたベースチャンネルを選択します。ベースチャンネルの変更 をクリックします。

9.2.2. セルフサブスクライブされた Satellite 機能のテスト

手順9.4 セルフサブスクライブされた Satellite 機能のテスト

  1. Red Hat CDN と同期されていることを検証します。
    # cdn-sync -l
    
    cdn-sync コマンドを実行すると、同期可能なチャンネルがすべて表示されます。以下は出力の例になります。
    17:34:02 p = previously imported/synced channel
    17:34:02 . = channel not yet imported/synced
    
  2. パッケージ更新のソースを検証します。
    • Red Hat Enterprise Linux 6:
      yum check-update
    Red Hat CDN からではなく Satellite からパッケージがダウンロードされることを示す情報が表示されるはずです。

9.2.3. セルフサブスクライブされた Satellite でのクライアント側のアプリケーション機能

Red Hat は、Red Hat Satellite と対話するためにさまざまなクライアント側ツールを提供します。以下のリストは、セルフサブスクライブされた Satellite サーバーでクライアント側のアプリケーションが機能するかどうかを示しています。

重要

セルフサブスクライブされた Satellite に関する重要事項は次のとおりです。
  • ここには、テスト済みのクライアント側アプリケーションのみが記載されています。
  • Red Hat は、管理者が登録済みのセルフサブスクライブされた Satellite を Satellite web インターフェース内でロックすることを推奨します。これにより、スケジュールされたイベントが実行されないようにします。Satellite のロックを解除する前に、保留中のイベントを確認して実行したくないイベントを削除してください。
  • Red Hat は、管理者がセルフサブスクライブされた Satellite のエンタイトルメントを Management レベルにし、Provisioning エンタイトルメントを使用しないことを推奨します。これにより、Satellite サーバーに悪影響を与える変更や意図的でない変更が行われないようにします。
  • セルフサブスクライブされた Satellite に Provisioning エンタイトルメントを使用する場合は、Satellite を使用して再度プロビジョニングを行わないでください。Satellite は Red Hat Enterprise Linux オペレーティングシステムの再インストールを試みますが、再起動時に Red Hat インストールプログラムはインストールの実行に必要なパッケージを Satellite からダウンロードすることができません。特に、外部のキックスタートツリーが使用された場合、データが損失し、サービスが中断するリスクが高くなります。
  • Red Hat Update Agent ツール
    The rhn_check, rhnsd and, yum packages will all function normally on a self-subscribed Satellite.
  • Push
    osad パッケージはインストールされません。osad パッケージはパッケージをクライアントシステムにプッシュするために使用されますが、これはサーバー側の osa-dispatcher パッケージと競合します。セルフサブスクライブされた Satellite では osad のインストールを強制しないでください。
  • 設定クライアントツール
    The rhncfg-client package will function normally.
  • 設定管理ツール
    rhncfg-manager パッケージは正常に動作します。
  • カスタム情報
    rhn-custom-info パッケージは正常に動作します。

第10章 トラブルシューティング

本章では、Red Hat Network Satellite に関連する一般的なエラーの要因を究明して解決するためのヒントを記載しています。さらに詳しいヘルプが必要な場合は、https://access.redhat.com/support/ から Red Hat Network サポートにご連絡ください。オプションの全一覧をご覧になる場合は、Satellite のエンタイトルメントを有するアカウントを使ってログインしてください。
一般的な問題からトラブルシューティングを開始する場合、障害が発生しているコンポーネントに関連するログファイルまたはファイルを調べます。すべてのログファイルに対して tail -f コマンドを発行してから yum list を実行するのが効果的です。解決の手がかりがあるかどうかについて、ログのエントリーをすべて調べます。
10.1. ディスク領域
問: ディスクの空き容量がすぐ一杯になります。ここでは何が起こり、どうしたらよいでしょうか?
10.2. インストールと更新
問: インストールしようとすると SELinux から何度もメッセージが表示されます。どうしてですか?
問: /var/satellite を NFS マウントに変更しました。このため SELinux が正常に動作しなくなってしまいました。どうしたらいいですか?
問: Satellite に障害が発生します。どうしてですか?
10.3. Services
問: Apache Web serverが稼動していません。どうしてですか?
問: Red Hat Network Task Engine の状態はどうしたら取得できますか?
問: Satellite の組み込みデータベースの状態を確認したいのですがどうしたらいいですか?
問: Red Hat Satellite のプッシュ機能が停止してしまった場合はどうしたらいいですか?
10.4. 接続性
問: 接続できません。原因を調べるにはどうしたらよいでしょうか?
問: チャンネルのインポートまたは同期が失敗して修復できない場合にはどうしたらよいでしょうか?
問: 「SSL_CONNECT」のエラーがでます。どうしたらよいでしょうか?
10.5. ログとレポート機能
問: どのようなログファイルがありますか?
問: spacewalk-report の使い方を教えてください。
問: データベーススキーマのバージョンはどうしたら確認できますか?
問: 搭載されている文字セットのタイプはどうしたら確認できますか?
問: 管理者に電子メールが送信されないのはどうしてですか?
問: トレースバックメールの送信者はどうしたら変更できますか?
10.6. エラー
問: Red Hat Satellite のインストール中に「Error validating satellite certificate (Satellite 証明書の検証中にエラーが発生しました)」のエラーが表示されます。どうしたら修復できますか?
問: Red Hat Satellite のアクティベートや同期を行おうとすると「ERROR: server.mount_point not set in the configuration file (エラー: server.mount_point が設定ファイル内に設定されていません)」のエラーが表示されます。どうしたら修復できますか?
問: 別のバージョンの yum-utils が必要だというエラーメッセージが cobbler check で表示されるのはどうしてですか?
問: Red Hat Satellite 証明書をアクティベートしようとすると「unsupported version (バージョンがサポートされていません)」のエラーが表示されます。どうしたら修復できますか?
問: キックスタートプロファイルを編集しようとすると「Internal Server Error (内部サーバーのエラー)」が表示され ASCII についての問題が指摘されます。何が問題なのでしょうか?
問: 「Host Not Found (ホストが見つかりません)」または「Could Not Determine FQDN (完全修飾ドメイン名を確定できませんでした)」のエラーが表示されます。どうしたらよいでしょうか?
問: Red Hat Satellite サーバーを同期しようとすると「This server is not an entitled Satellite (このサーバーはエンタイトルメントを有する Satellite ではありません)」というメッセージが表示されます。どうしたら修復できますか?
10.7. Web インターフェース
問: Red Hat Satellite のユーザーインターフェースに不具合が生じました。どのログファイルをチェックしたらよいでしょうか。
10.8. Anaconda
問: Error downloading kickstart file (キックスタートファイルのダウンロードでエラーが発生しました) というエラーが表示されます。何が問題なのでしょうか。どのようにしたら修復できますか。
問: The file chkconfig-1.3.30.1-2.i386.rpm cannot be opened. (chkconfig-1.3.30.1-2.i386.rpm のファイルは開くことができません) というパッケージインストールエラーが表示されます。何が問題なのでしょうか。どのようにしたら修復できますか。
10.9. トレースバック
問: "WEB TRACEBACK" という表題の電子メールが送信されてきます。どう対処したらよいでしょうか。
10.10. 登録
問: rhnreg_ks コマンドを実行すると、ERROR: unable to read system id (エラー: システム ID を読み取ることができません) というエラーメッセージが表示されて、失敗してしまいます。何が問題なのでしょうか。
10.11. キックスタートとスニペット
問: キックスタートのディレクトリー構造はどのようになっていますか。
問: Cobbler スニペットのディレクトリー構造はどのようになっていますか。
10.12. 複数組織向けの Satellite と Satellite 証明書
問: Satellite 証明書に十分なエンタイトルメント群がない場合は、システムの登録を複数組織向けの環境でどのように行えますか?
問: Satellite 証明書には、使用されていない追加のエンタイトルメントがあります。これらのエンタイトルメントはどうなりますか?
10.13. プロキシのインストールと設定
問: Red Hat Network Package Manager の設定後に、ローカルパッケージがプライベート Red Hat Network チャンネルに正しく追加されたかどうかをどのように判別できますか?
問: クライアント群が Squid サーバーに接続しているかどうかは、どうしたら確認することができますか?
問: クライアントシステムの Red Hat Update Agent が Red Hat Satellite Proxy に接続されません。どうしたらこのエラーを解決できますか?
問: Red Hat Satellite Proxy 設定が動作しません。どこからトラブルシューティングを開始したらよいですか?
問: Red Hat Satellite Proxy の全般的な問題はどのように調査/解決できますか?
問: Red Hat Satellite Proxy に「Host Not Found (ホストが見つかりません)」または「Could Not Determine FQDN (完全修飾ドメイン名を確定できませんでした)」のエラーが発生しました。どうしたらよいでしょうか?
問: Red Hat Satellite Proxy の不具合とネットワーク接続のエラーが生じました。どうしたらよいでしょうか?
問: パッケージ配信のエラーとオブジェクトの破損が生じました。何をチェックしたらよいですか?

10.1. ディスク領域

問:
ディスクの空き容量がすぐ一杯になります。ここでは何が起こり、どうしたらよいでしょうか?
答:
ディスク領域が一杯というのはよくある問題です。ディスク領域が一杯であるという最も明らかな兆候はログファイルへの書き込みが停止される状況です。単語の途中など、書き込み中にログ記録が停止された場合は、ハードディスクが一杯である可能性があります。これを確認するには、次のコマンドを実行して Use% の欄にある割合を確認します。
# df -h
ログファイルの他にも、Red Hat Network Satellite および各種コンポーネントの状態を取得すると貴重な情報が見つかります。次のコマンドで行います。
# /usr/sbin/rhn-satellite status
また、Apache Web serverや Red Hat Network Task Engine などのコンポーネントの状態を個別に取得することもできます。例えば、Apache Web serverの状態を表示するには次のコマンドを実行します。
# service httpd status

10.2. インストールと更新

問:
インストールしようとすると SELinux から何度もメッセージが表示されます。どうしてですか?
答:
Red Hat Network Satellite のインストール時に SELinux メッセージ (AVC 拒否メッセージなど) が表示された場合は、Red Hat サポートチームが支援できるよう audit.log ファイルを用意してください。このファイルは /var/log/audit/audit.log にあります。サポートチームの担当が支援できるようサポートチケットにファイルを添付できます。
問:
/var/satellite を NFS マウントに変更しました。このため SELinux が正常に動作しなくなってしまいました。どうしたらいいですか?
答:
SELinux にトラフィックを許可させるために、SELinux パラメータを新規 NFS マウントに基づいて変更する必要があります。次のコマンドを実行します。
# /usr/sbin/setsebool -P spacewalk_nfs_mountpoint on
Red Hat Enterprise Linux 6 をご使用の場合は次のコマンドも必要になります。
# /usr/sbin/setsebool -P cobbler_use_nfs on
問:
Satellite に障害が発生します。どうしてですか?
答:
Red Hat Network Satellite には Red Hat Network の中央サーバーから取得可能な次の子チャンネルは一切サブスクライブさせないでください。
  • Red Hat Developer Suite
  • Red Hat Application Server
  • Red Hat Extras
  • JBoss 製品のチャンネル
これらのチャンネルをサブスクライブさせて Satellite の更新を行うと、互換性がなく新しい重大なソフトウェアコンポーネントのバージョンをインストールするため Satellite に障害が発生する恐れがあります。

10.3. Services

問:
Apache Web serverが稼動していません。どうしてですか?
答:
Apache Web server が稼働していない場合は、 /etc/hosts ファイル内のエントリーが正しくない可能性があります。
問:
Red Hat Network Task Engine の状態はどうしたら取得できますか?
答:
Red Hat Network Task Engine の状態を取得するには次のコマンドを実行します。
# service taskomatic status
問:
Satellite の組み込みデータベースの状態を確認したいのですがどうしたらいいですか?
答:
Satellite の組み込みデータベースの状態を表示させるには次のコマンドを実行します。
# db-control status
問:
Red Hat Satellite のプッシュ機能が停止してしまった場合はどうしたらいいですか?
答:
Red Hat Network Satellite のプッシュ機能が停止した場合、古いログファイルが障害となっている可能性があります。このファイルを削除する前に jabberd デーモンを停止してください。root で次のコマンドを発行します。
# service jabberd stop
# rm -f /var/lib/jabberd/db/_db*
# service jabberd start

10.4. 接続性

問:
接続できません。原因を調べるにはどうしたらよいでしょうか?
答:
全般的な接続エラーを調べて解決するには次のような手段が使用できます。
  • /etc/rhn/rhn.conf にある正しい接続文字列を使ってコマンドラインから Red Hat Satellite のデータベースへの接続を試行します。
    # sqlplus username/password@sid
  • Red Hat Satellite でネットワーク時刻プロトコル (NTP) が使用され、また適切なタイムゾーンに設定されていることを確認します。同様に、すべてのクライアントシステムおよびスタンドアローンのデータベースと動作する Red Hat Satellite の単独データベースマシンについても適切な設定になっていることを確認してください。
  • 適切なパッケージを確認します。
    rhn-org-httpd-ssl-key-pair-MACHINE_NAME-VER-REL.noarch.rpm 
    上記のパッケージが Red Hat Satellite にインストールされ、また対応する rhn-org-trusted-ssl-cert-*.noarch.rpm または Raw 形式の CA SSL パブリック (クライアント) 証明書がすべてのクライアントシステムにインストールされていることを確認します。
  • クライアントシステムが適切な証明書を使用するよう設定されていることを確認します。
  • また、1 つまたは複数の Red Hat Satellite Proxy Server を使用している場合は、各プロキシの SSL 証明書も正しく用意されていることを確認します。プロキシには、両方向に対応するためプロキシ独自のサーバー用 SSL キーペアと CA SSL パブリック (クライアント用) 証明書の両方がインストールされていなければなりません。詳しい説明については、『Red Hat Satellite クライアント設定ガイド』 の SSL 証明書の章を参照してください。
  • Red Hat Satellite インストールガイド』 の 『その他の要件』 のセクションにあるように、必要なポートをブロックするファイアウォールをクライアントシステム自体が使用していないか確認します。
問:
チャンネルのインポートまたは同期が失敗して修復できない場合にはどうしたらよいでしょうか?
答:
チャンネルのインポートまたは同期が失敗していずれの方法でも修復できない場合には、キャッシュを削除する次のコマンドを実行します。
# rm -rf temporary-directory

注記

ローカルメディアからのインポートの準備』 の 『Red Hat Satellite インストールガイド』 のセクションは、一時ディレクトリーとして /var/rhn-sat-import/ を指定しています。
次に、インポートまたは同期を再スタートします。
問:
「SSL_CONNECT」のエラーがでます。どうしたらよいでしょうか?
答:
SSL_CONNECT のエラーで示される一般的な接続の問題は、時間が不適切に設定されているマシンに Satellite がインストールされていることが原因です。Satellite のインストール過程で SSL 証明書が誤った時間で作成され、その後に Satellite の時間が修正されると、証明書の開始日と時刻が未来に設定されることがあり、これにより証明書が無効になってしまいます。
これを解決するには、次のコマンドでクライアントと Satellite の日付と時刻を確認します。
# date
この結果は、すべてのマシンがほぼ同一で、証明書の「notBefore (これ以前は無効)」と「notAfter (これ以降は無効)」の有効期間枠内になるはずです。次のコマンドでクライアント証明書の日付と時刻を確認します。
# openssl x509 -dates -noout -in /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
次のコマンドで Satellite サーバーの証明書の日付と時刻を確認します。
# openssl x509 -dates -noout -in /etc/httpd/conf/ssl.crt/server.crt
デフォルトでは、サーバーの証明書は 1 年間有効でクライアントの証明書は 10 年間有効になっています。証明書の誤りを見つけたら、できれば有効開始時間を待つか、または新しい証明書を作成してすべてのシステム時間は GMT に設定するのがよいでしょう。

10.5. ログとレポート機能

問:
どのようなログファイルがありますか?
答:
ほとんどすべてのトラブルシューティングの手順は、関連ログファイルを調べることから始めます。関連ログファイルは、デバイス上やアプリケーション内で発生したアクティビティに関する貴重な情報を提供します。この情報は、パフォーマンスをモニタリングしたり、正しい設定を確保するのに使用することができます。関連するすべてのログファイルへのパスは、表10.1「ログファイル」 をご覧ください。
/var/log/rhn/ ディレクトリー内には、番号付けされたログファイル (例: /var/log/rhn/rhn_satellite_install.log.1、/var/log/rhn/rhn_satellite_install.log.2など) が存在する場合があります。これらは、回転 ログで、現行の rhn_satellite_install.log ファイルが logrotate(8) デーモンにより指定されたサイズに達して一杯になった時に、コンテンツが回転ログファイルに書き込まれ、<NUMBER> の拡張子付きで作成されるログファイルです。例えば、rhn_satellite_install.log.1 には、最も古い回転ログファイルが含まれる一方、rhn_satellite_install.log.4 には最も新しい回転ログが含まれます。

表10.1 ログファイル

コンポーネント/タスクログファイルの場所
Apache Web server/var/log/httpd/ ディレクトリー
Red Hat Satellite/var/log/rhn/ ディレクトリー
Red Hat Satellite Installation Program/var/log/rhn/rhn_satellite_install.log
データベースのインストール - 組み込みのデータベース/var/log/rhn/install_db.log
データベースへのデータ取り込み/var/log/rhn/populate_db.log
Red Hat Satellite Synchronization Tool/var/log/rhn/rhn_server_satellite.log
Red Hat Network DB Control - 組み込みのデータベース/var/log/rhn/rhn_database.log
Red Hat Network Task Engine (taskomatic)/var/log/messages
yum/var/log/yum.log
XML-RPC のトランザクション/var/log/rhn/rhn_server_xmlrpc.log
問:
spacewalk-report の使い方を教えてください。
答:
エンタイトルメント、サブスクライブしているシステム、ユーザーおよび組織などのインベントリなどを作成する場合、管理者には書式化された簡潔な Red Hat Satellite リソースの要約が必要な場合があります。こうした情報を Satellite インターフェースで手作業で集めるのではなく、一度に重要な Satellilte 情報を収集し、表示してくれる spacewalk-report コマンドが Red Hat Satellite には同梱されています。

注記

spacewalk-report を使用する場合、spacewalk-reports パッケージを先にインストールしておく必要があります。
Satellite のロギング機能は、Satellite バージョン 5.6 以上のフレッシュインストールではデフォルトで追加されます。Satellite が 5.6 未満のバージョンからアップグレードされた場合、ロギング機能はアップグレードの時点で有効化され、その時点からすべてのイベントが監査されます。そのため、アップグレード以前に作成されたすべてのユーザーは、アップグレードの時点からログに記録されます。過去のユーザー作成や過去のイベントはログに記録されませんが、今後のイベントはすべてログに記録されます。
spacewalk-report では、管理者による Satellite 全体のコンテンツ、エラータ、システム群、システムイベント履歴、およびユーザーなどのリソースに関するレポートの生成と表示が可能です。以下のように spacewalk-report コマンドを使ってレポートを生成します。
  • システムインベントリ - Satellite に登録されているすべてのシステムを一覧表示します。
  • エンタイトルメント - Satellite 上のすべての組織をシステム別またはチャンネルエンタイトルメント別に表示します。
  • エラータ - 登録されているシステムに関連した全エラータを重度別、ならびに特定のエラータに適用されるシステム別に表示します。
  • ユーザー - Satellite に登録されている全ユーザーと、特定のユーザーに関連付けされているシステムを表示します。
  • システム履歴 - 発生した全システムイベントまたは一部のシステムイベントを表示します。
CSV 形式のレポートを取得する場合は、Satellite サーバーのコマンドプロンプトで次を実行します。
# spacewalk-report report_name
以下のような種類のレポートを生成することができます。

表10.2 spacewalk-report レポート

レポート以下として呼び出し説明
グループ監査audit-server-groupsグループでのユーザー変更の監査
サーバー監査audit-serversサーバー変更の監査
ユーザー監査audit-usersユーザー変更の監査
パッケージレポートchannel-packagesパッケージおよびパッケージのチャンネルを表示
チャンネルchannelsサーバーで利用できるチャンネルを表示
クローンされたチャンネルcloned-channelsクローンされたチャンネルを表示
カスタム情報custom-infoシステムに関するカスタム情報を表示
エンタイトルメントentitlementsSatellite 上の全組織とそのシステムまたはチャンネルのエンタイトルメントを表示
チャンネル内のエラータerrata-channelsチャンネル内のエラータを表示
エラータのコンプライアンスerrata-listコンプライアンス情報からエラータの詳細をリストします。
すべてのエラータerrata-list-allすべてのエラータの全一覧
システムのエラータerrata-systems適用できるエラータと影響を受ける登録システムをすべて表示
リレーションシップマッピングhost-guestsホストとゲストのマッピング詳細を提供
休止中のシステムinactive-systems
システムインベントリinventoryサーバーに登録されているシステムとそのハードウェアおよびソフトウェア情報を表示
キックスタートツリーkickstartable-treesキックスタート可能なツリーを表示
パッケージの更新packages-updates-allアップデート可能なすべてのパッケージを表示
最新のパッケージ更新package-updates-newestパッケージの最新更新を表示
SCAP スキャン
scap-scan
scap-scan-results
OpenSCAP xccdf 評価の結果を表示
Splice レポートsplice-exportレポート強化のための splice 統合に必要なシステムデータの表示
クラッシュ数system-crash-countシステムがクラッシュした回数を表示
クラッシュの詳細system-crash-detailsシステムのクラッシュの詳細を表示
システムの状態system-currencyシステムの状態値を表示
システムグループsystem-groupsSatellite サーバーのシステムグループを表示
グループアクティベーションキーsystem-groups-keysシステムグループの既存のアクティベーションキーをすべて表示
システムグループのシステムsystem-groups-systems各グループ内のシステムグループとシステムをすべて表示
システムグループのユーザーsystem-groups-usersすべてのシステムグループとそれらの関連ユーザーを表示
システム履歴system-historyシステムのイベント履歴を表示
システム履歴チャンネルsystem-history-channelsシステムのイベント履歴を表示
システム履歴 (設定)system-history-configurationシステムの設定に関連するイベントの履歴を表示
システム履歴 (エンタイトルメント)system-history-entitlementsシステムのエンタイトルメントに関連するイベントの履歴を表示
システム履歴 (エラータ)system-history-errataシステムのエラータに関連するイベントの履歴を表示
システム履歴 (キックスタート)system-history-kickstartシステムのキックスタートとプロビジョニングに関連するイベントの履歴を表示
システム履歴 (パッケージ)system-history-packagesシステムのパッケージに関連するイベントの履歴を表示
SCAP イベント履歴system-history-scapシステムの OpenSCAP イベント履歴を表示
インストール済みパッケージsystem-packages-installedシステムにインストールされたすべてのパッケージを表示
システム内のユーザーusersSatellite に登録されている全ユーザーを表示
管理対象システムusers-systems個別ユーザーで管理が可能なシステムを表示
個別のレポートについての詳しい情報を取得するには、spacewalk-report--info または --list-fields-info のオプションとレポート名を指定して実行します。レポート内に使用可能なフィールドの説明と一覧が表示されます。
spacewalk-report(8) man ページおよび spacewalk-report プログラムの --help パラメータを使用すると、プログラムの起動とそのオプションについての追加情報を取得することができます。
問:
データベーススキーマのバージョンはどうしたら確認できますか?
答:
データベーススキーマのバージョンを確認するには次のコマンドを実行します。
# rhn-schema-version
問:
搭載されている文字セットのタイプはどうしたら確認できますか?
答:
Satellite のデータベースの文字セットタイプを得るには次のコマンドを実行します。
# rhn-charsets
問:
管理者に電子メールが送信されないのはどうしてですか?
答:
管理者側で Red Hat Satellite からのメールが受信できていない場合は、/etc/rhn/rhn.conf 内の traceback_mail に正しいアドレスが設定されているか確認してください。
問:
トレースバックメールの送信者はどうしたら変更できますか?
答:
トレースバックのメールが dev-null@rhn.redhat.com からの送信と記され、このアドレスが組織で有効となるようにしたい場合は、web.default_mail_from オプションと適切な値を /etc/rhn/rhn.conf に追加します。

10.6. エラー

問:
Red Hat Satellite のインストール中に「Error validating satellite certificate (Satellite 証明書の検証中にエラーが発生しました)」のエラーが表示されます。どうしたら修復できますか?
答:
An "Error validating satellite certificate" error message during a Red Hat Satellite installation is caused by having an HTTP proxy in the environment. This can be confirmed by looking at the install.log file, and locating the following error:
ERROR: unhandled exception occurred:
Traceback (most recent call last):
  File "/usr/bin/rhn-satellite-activate", line 45, in ?
    sys.exit(abs(mod.main() or 0))
  File "/usr/share/rhn/satellite_tools/rhn_satellite_activate.py", line 585, in main
    activateSatellite_remote(options)
  File "/usr/share/rhn/satellite_tools/rhn_satellite_activate.py", line 291, in activateSatellite_remote
    ret = s.satellite.deactivate_satellite(systemid, rhn_cert)
  File "/usr/lib/python2.4/site-packages/rhn/rpclib.py", line 603, in __call__
    return self._send(self._name, args)
  File "/usr/lib/python2.4/site-packages/rhn/rpclib.py", line 326, in _request
    self._handler, request, verbose=self._verbose)
  File "/usr/lib/python2.4/site-packages/rhn/transports.py", line 171, in request
    headers, fd = req.send_http(host, handler)
  File "/usr/lib/python2.4/site-packages/rhn/transports.py", line 698, in send_http
    self._connection.connect()
  File "/usr/lib/python2.4/site-packages/rhn/connections.py", line 193, in connect
    sock.connect((self.host, self.port))
  File "<string>", line 1, in connect
socket.timeout: timed out
この問題の解決方法
  1. 分離モードでインストールスクリプトを実行し、すでに実行済みのデータベースのインストールは省略します。
    # ./install.pl --disconnected --skip-db-install
  2. テキストエディターで /etc/rhn/rhn.conf を開き、以下の行を追加または変更します。
    server.satellite.rhn_parent = satellite.rhn.redhat.com
    以下の行を削除します。
    disconnected=1
    Red Hat Network への接続にプロキシーを使用している場合には、以下の行を追加または変更してプロキシーの設定も反映させる必要があります。
    server.satellite.http_proxy = <hostname>:<port>
    server.satellite.http_proxy_username = <username>
    server.satellite.http_proxy_password = <password>
  3. Re-activate Satellite in connected mode, using the rhn-satellite-activate command as the root user, including the path and filename of the Satellite manifest:
    # rhn-satellite-activate --manifest=manifest.zip --verbose
別の方法として、接続モードで install.pl スクリプトを実行します。この場合、--answer-file=answer file のオプションを使用します。以下に示したような HTTP プロキシの情報を回答ファイルに組み込みます。
rhn-http-proxy = <hostname>:<port>
rhn-http-proxy-username = <username>
rhn-http-proxy-password = <password>
問:
Red Hat Satellite のアクティベートや同期を行おうとすると「ERROR: server.mount_point not set in the configuration file (エラー: server.mount_point が設定ファイル内に設定されていません)」のエラーが表示されます。どうしたら修復できますか?
答:
Red Hat Satellite のアクティベートまたは同期中の「ERROR: server.mount_point not set in the configuration file (エラー: サーバーの mount_point が設定ファイル内で設定されていません)」のエラーは、/etc/rhn/rhn.conf 内の mount_point 設定パラメータがディレクトリーパスをポイントしていない場合か、ポイントしているディレクトリーパスが存在しない場合か、またはディレクトリーにアクセスするパーミッションがない場合に発生する可能性があります。
この問題を解決するには、/etc/rhn/rhn.conf 内の mount_point 設定パラメータの値をチェックします。/var/satellite のデフォルト値に設定されている場合には、 /var/satellite/var/satellite/redhat のディレクトリーが確かに存在していることを確認します。すべての値に対してファイルへのパスが正しく設定されていること、およびパーミッションが適切に設定されていることを確認します。
問:
別のバージョンの yum-utils が必要だというエラーメッセージが cobbler check で表示されるのはどうしてですか?
答:
cobbler check コマンドを実行すると以下のようなエラーが表示される場合があります。
# cobbler check
The following potential problems were detected:
#0: yum-utils need to be at least version 1.1.17 for reposync -l, current version is 1.1.16
これは、Cobbler の reposync パッケージでは既知の問題です。このエラーは擬似エラーのため無視して構いません。このエラーは、今後の Red Hat Satellite バージョンで解決される予定です。
問:
Red Hat Satellite 証明書をアクティベートしようとすると「unsupported version (バージョンがサポートされていません)」のエラーが表示されます。どうしたら修復できますか?
答:
Red Hat Satellite 証明書が破損していると、以下のいずれかのエラーが表示される可能性があります。
ERROR: <Fault -2: 'unhandled internal exception: unsupported version: 96'>
RHN_PARENT: satellite.rhn.redhat.com
     Error reported from RHN: <Fault -2: 'unhandled internal exception: unsupported version: 115'>
     ERROR: unhandled XMLRPC fault upon remote activation: <Fault -2: 'unhandled internal exception: unsupported version: 115'>
     ERROR: <Fault -2: 'unhandled internal exception: unsupported version: 115'>
Invalid satellite certificate
この問題を解決するには、Red Hat のサポートサービスに連絡して新しい証明書を取得してください。
問:
キックスタートプロファイルを編集しようとすると「Internal Server Error (内部サーバーのエラー)」が表示され ASCII についての問題が指摘されます。何が問題なのでしょうか?
答:
最近、キックスタートプロファイルにカーネルパラメータを追加した場合、キックスタートプロフィールの一覧を表示 を実行しようとすると以下のような内部サーバーのエラーが表示される場合があります。
'ascii' codec can't encode character u'\u2013'
このエラーは、プロファイル内の一部のテキストが適正に認識されていないために発生します。
この問題の解決方法
  1. root ユーザーとして Satellite サーバー に対して直接 ssh を実行します。
    # ssh root@satellite.fqdn.com
  2. 問題の原因となっているキックスタートプロファイルを特定するには、/var/lib/cobbler/config/profiles.d のファイルの日付を確認して、最近に編集されたファイルを見つけます。
    # ls -l /var/lib/cobbler/config/profiles.d/
  3. 希望のテキストエディタでプロファイルを開き、以下のようなテキストを探します。
    \u2013hostname
    エントリーを以下のように変更します。
    --hostname
  4. プロファイルへの変更を保存して、ファイルを閉じます。
  5. Red Hat Satellite サービスを再起動し、更新されたプロファイルを取得します。
    # rhn-satellite restart
    Shutting down rhn-satellite...
    Stopping RHN Taskomatic...
    Stopped RHN Taskomatic.
    Stopping cobbler daemon:                                   [  OK  ]
    Stopping rhn-search...
    Stopped rhn-search.
    Stopping MonitoringScout ...                               [  OK  ]
    Stopping Monitoring ...                                    [  OK  ]
    Stopping httpd:                                            [  OK  ]
    Stopping tomcat5:                                          [  OK  ]
    Shutting down osa-dispatcher:                              [  OK  ]
    Shutting down Oracle Net Listener ...                      [  OK  ]
    Shutting down Oracle DB instance "rhnsat" ...              [  OK  ]
    Shutting down Jabber router:                               [  OK  ]
    Done.
    Starting rhn-satellite...
    Starting Jabber services                                   [  OK  ]
    Starting Oracle Net Listener ...                           [  OK  ]
    Starting Oracle DB instance "rhnsat" ...                   [  OK  ]
    Starting osa-dispatcher:                                   [  OK  ]
    Starting tomcat5:                                          [  OK  ]
    Starting httpd:                                            [  OK  ]
    Starting Monitoring ...                                    [  OK  ]
    Starting MonitoringScout ...                               [  OK  ]
    Starting rhn-search...
    Starting cobbler daemon:                                   [  OK  ]
    Starting RHN Taskomatic...
    Done.
  6. Web インターフェースに戻ります。インターフェースがサービスを解決するのにしばらく時間がかかる場合がありますが、しばらくすると通常の状態に戻るはずです。
問:
「Host Not Found (ホストが見つかりません)」または「Could Not Determine FQDN (完全修飾ドメイン名を確定できませんでした)」のエラーが表示されます。どうしたらよいでしょうか?
答:
Red Hat Network の設定ファイルは、完全修飾ドメイン名 (FQDN) のみに依存しているため、主要なアプリケーションは必ず Red Hat Satellite の名前を IP アドレスに解決できなければなりません。Red Hat Update AgentRed Hat Network Registration Client、Apache Web serverでは、特にこの問題が発生する傾向があり、起動に失敗すると Red Hat Network のアプリケーションは「host not found (ホストが見つかりません)」のエラーを発行し、Web サーバーは「Could not determine the server's fully qualified domain name (サーバーの完全修飾ドメイン名を確定できませんでした)」のメッセージを出力します。
この問題は一般的に /etc/hosts ファイルが原因で生じます。ドメイン名解決の順序と方法を定義する /etc/nsswitch.conf を調べると確認できます。通常、/etc/hosts ファイルが最初にチェックされた後、NIS (Neetwork Information Service) を使用している場合はこのサービス、次に DNS の順でチェックされて行きます。Apache Web server が起動して Red Hat Network クライアントのアプリケーション群が動作するには、これらのいずれかが成功しなければなりません。
この問題を解決するには、/etc/hosts ファイルの内容を確認します。次のようになっています。
127.0.0.1 this_machine.example.com this_machine localhost.localdomain \ localhost
まず、以下のようにテキストエディタで問題となるマシン情報を削除します。
127.0.0.1 localhost.localdomain.com localhost
次に、ファイルを保存してから Red Hat Network クライアントのアプリケーションまたは Apache Web serverを再起動してみます。依然として失敗する場合は、次のようにこのファイル内で Satellite の IP アドレスを明示的に指定します。
127.0.0.1 localhost.localdomain.com localhost
123.45.67.8 this_machine.example.com this_machine
上記の値は実際の Satellite の IP アドレスに置き換えてください。これで問題は解決されるはずです。特定の IP アドレスが規定される場合には、マシンが新しいアドレスを取得した際にファイルを更新する必要があります。
問:
Red Hat Satellite サーバーを同期しようとすると「This server is not an entitled Satellite (このサーバーはエンタイトルメントを有する Satellite ではありません)」というメッセージが表示されます。どうしたら修復できますか?
答:
If cdn-sync reports that the server is not activated as a Red Hat Satellite, it isn't subscribed to the respective Red Hat Satellite channel. If this is a newly installed system, make sure that the satellite manifest is activated on the system. If it was activated earlier, then it has become deactivated.
システムの子チャンネルを表示させて Red Hat Network Red Hat Satellite チャンネルにサブスクライブさせているか確認してください。以下のコマンドでサブスクライブしているチャンネルを表示させます。
# yum repolist
Activate the same Satellite manifest again on your Satellite using this command as the root user:
# rhn-satellite-activate --manifest=manifest.zip --verbose

10.7. Web インターフェース

問:
Red Hat Satellite のユーザーインターフェースに不具合が生じました。どのログファイルをチェックしたらよいでしょうか。
答:
Red Hat Satellite のユーザーインターフェースのキックスタートで表示、スケジューリング、または操作のエラーが生じた場合には、/var/log/tomcat5/catalina.out ログファイルをチェックしてください。
その他すべてのインターフェースエラーの場合は、/var/log/httpd/error_log ログファイルをチェックします。

10.8. Anaconda

問:
Error downloading kickstart file (キックスタートファイルのダウンロードでエラーが発生しました) というエラーが表示されます。何が問題なのでしょうか。どのようにしたら修復できますか。
答:
このエラーは、通常ネットワークの問題が原因です。問題を究明するには、cobbler check のコマンドを実行して出力を確認します。以下のような出力が表示されるはずです。
# cobbler check
The following potential problems were detected:
#0: reposync is not installed, need for cobbler reposync, install/upgrade yum-utils?
#1: yumdownloader is not installed, needed for cobbler repo add with --rpm-list parameter, install/upgrade yum-utils?
#2: The default password used by the sample templates for newly installed machines (default_password_crypted in /etc/cobbler/settings) is still set to 'cobbler' and should be changed
#3: fencing tools were not found, and are required to use the (optional) power management features. install cman to use them
cobbler check で問題が究明できない場合には、以下の点を確認してください。
  • httpd が実行されているかを確認します。service httpd status
  • cobblerd が実行されているかを確認します。service cobblerd status
  • wget を使用して、異なるホストからキックスタートファイルを取得できることを確認します。
    wget http://satellite.example.com/cblr/svc/op/ks/profile/rhel5-i386-u3:1:Example-Org
問:
The file chkconfig-1.3.30.1-2.i386.rpm cannot be opened. (chkconfig-1.3.30.1-2.i386.rpm のファイルは開くことができません) というパッケージインストールエラーが表示されます。何が問題なのでしょうか。どのようにしたら修復できますか。
答:
クライアントは、キックスタート内の --url パラメータに基づいて Red Hat Satellite からコンテンツを取得します。例:
url --url http://satellite.example.com/ks/dist/ks-rhel-i386-server-5-u3
Anaconda から、イメージまたはパッケージが見つからないというエラーを受信した場合には、キックスタート内の URL が 200 OK の応答を生成することを確認します。これは、wget でその URL にあるファイルの取得を試みることによって行うことができます。
wget http://satellite.example.com/ks/dist/ks-rhel-i386-server-5-u3
--2011-08-19 15:06:55--  http://satellite.example.com/ks/dist/ks-rhel-i386-server-5-u3
Resolving satellite.example.com... 10.10.77.131
Connecting to satellite.example.com|10.10.77.131|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 0 [text/plain]
Saving to: `ks-rhel-i386-server-5-u3.1'
2011-08-19 15:06:55 (0.00 B/s) - `ks-rhel-i386-server-5-u3.1' saved [0/0]
200 OK 以外の応答が返された場合は、エラーログを確認して問題を究明します。また、access_log ファイルを検索することによって、Anaconda がダウンロードを試みた実際のファイルをチェックすることもできます。
# grep chkconfig /var/log/httpd/access_log
10.10.77.131 - - [19/Aug/2011:15:12:36 -0400] "GET /rhn/common/DownloadFile.do?url=/ks/dist/ks-rhel-i386-server-
5-u3/Server  /chkconfig-1.3.30.1-2.i386.rpm HTTP/1.1" 206 24744 "-" "urlgrabber/3.1.0 yum/3.2.19"
10.10.76.143 - - [19/Aug/2011:15:12:36 -0400] "GET /ks/dist/ks-rhel-i386-server-5-u3/Server/chkconfig-
1.3.30.1-2.i386.rpm HTTP/1.1" 206 24744 "-" "urlgrabber/3.1.0 yum/3.2.19"
10.10.76.143 - - [19/Aug/2011:15:14:20 -0400] "GET /ks/dist/ks-rhel-i386-server-5-u3/Server/chkconfig-
1.3.30.1-2.i386.rpm HTTP/1.1" 200 162580 "-" "urlgrabber/3.1.0 yum/3.2.19"
10.10.77.131 - - [19/Aug/2011:15:14:20 -0400] "GET /rhn/common/DownloadFile.do?url=/ks/dist/ks-rhel-i386-server-
5-u3/Server/chkconfig-1.3.30.1-2.i386.rpm HTTP/1.1" 200 162580 "-" "urlgrabber/3.1.0 yum/3.2.19"
これらの要求が access_log ファイル内に記載されていない場合は、システムのネットワーク設定に問題がある可能性があります。要求が記載されていてもエラーが生成される場合には、エラーログを確認してください。
手動でのファイルダウンロードを試みて、パッケージが入手可能かどうかを確認することもできます。
wget http://satellite.example.com/ks/dist/ks-rhel-i386-server-5-u3/Server/chkconfig-1.3.30.1-2.i386.rpm

10.9. トレースバック

問:
"WEB TRACEBACK" という表題の電子メールが送信されてきます。どう対処したらよいでしょうか。
答:
標準的なトレースバック電子メールは、以下のような内容となっています。
Subject: WEB TRACEBACK from satellite.example.com
Date: Wed, 19 Aug 2011 20:28:01 -0400
From:Red Hat Satellite <dev-null@redhat.com>
To: admin@example.com

java.lang.RuntimeException: XmlRpcException calling cobbler.
	at com.redhat.rhn.manager.kickstart.cobbler.CobblerXMLRPCHelper.invokeMethod(CobblerXMLRPCHelper.java:72)
	at com.redhat.rhn.taskomatic.task.CobblerSyncTask.execute(CobblerSyncTask.java:76)
	at com.redhat.rhn.taskomatic.task.SingleThreadedTestableTask.execute(SingleThreadedTestableTask.java:54)
	at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
Caused by: redstone.xmlrpc.XmlRpcException: The response could not be parsed.
	at redstone.xmlrpc.XmlRpcClient.handleResponse(XmlRpcClient.java:434)
	at redstone.xmlrpc.XmlRpcClient.endCall(XmlRpcClient.java:376)
	at redstone.xmlrpc.XmlRpcClient.invoke(XmlRpcClient.java:165)
	at com.redhat.rhn.manager.kickstart.cobbler.CobblerXMLRPCHelper.invokeMethod(CobblerXMLRPCHelper.java:69)
	... 4 more
Caused by: java.io.IOException: Server returned HTTP response code: 503 for URL: http://someserver.example.com:80/cobbler_api
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1236)
	at redstone.xmlrpc.XmlRpcClient.handleResponse(XmlRpcClient.java:420)
	... 7 more
これは、Cobbler とtaskomatic サービスとの通信において問題が生じたことを示しています。以下の点を確認してください。
  • httpd が実行されていることを確認します。# service httpd status
  • cobblerd が実行されていることを確認します。# service cobblerd status
  • localhost への接続を妨げるファイアウォールルールがないことを確認します。

10.10. 登録

問:
rhnreg_ks コマンドを実行すると、ERROR: unable to read system id (エラー: システム ID を読み取ることができません) というエラーメッセージが表示されて、失敗してしまいます。何が問題なのでしょうか。
答:
キックスタートファイルの末尾には、%post のセクションがあり、ここでマシンが Red Hat Satellite に登録されます。
# begin Red Hat management server registration
mkdir -p /usr/share/rhn/
wget http://satellite.example.com/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
perl -npe 's/RHNS-CA-CERT/RHN-ORG-TRUSTED-SSL-CERT/g' -i /etc/sysconfig/rhn/*
rhnreg_ks --serverUrl=https://satellite.example.com/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-c8d01e2f23c6bbaedd0f6507e9ac079d
# end Red Hat management server registration
追加された順番でこれを解釈すると、以下が実行されます。
  • Red Hat Satellite が使用するカスタム SSL 証明書を格納するディレクトリーを作成します。
  • 登録中に使用する SSL 証明書を取得します。
  • rhn_register 設定ファイルからの SSL 証明書の文字列を検索および置換し、SSL 証明書とアクティベーションキーを使用して Red Hat Satellite に登録します。各キックスタートプロファイルにはアクティベーションキーが含まれ、これによってシステムに正しいベースチャンネルと子チャンネルが確実に割り当てられ、正しいシステムのエンタイトルメントが取得されます。既存システムの再プロビジョニングの場合には、アクティベーションキーによって以前のシステムプロファイルに確実に関連付けられます。
rhnreg_ks コマンドが失敗した場合には、ks-post.log ログファイル内に以下のようなエラーが表示される場合があります。
ERROR: unable to read system id.
このようなエラーは、rhn_check の実行を試行した際にシステムが Red Hat Satellite に登録されていなかった場合にも発生します。
この問題に対処する最善のトラブルシューティングは、キックスタートが完了した後に、キックスタートファイルを確認して、上記の 4 つのステップをコピーし、コマンドプロンプトに直接貼り付ける方法です。これによって、問題の究明に役立つより詳細なエラーメッセージが生成されます。

10.11. キックスタートとスニペット

問:
キックスタートのディレクトリー構造はどのようになっていますか。
答:
キックスタートファイルが保管されるベースパスは、/var/lib/rhn/kickstarts/ です。このディレクトリー内において、raw キックスタートは upload サブディレクトリー内に格納され、ウィザードによって生成されたキックスタートは wizard サブディレクトリー内に格納されます。
Raw Kickstarts: /var/lib/rhn/kickstarts/upload/$profile_name--$org_id.cfg
Wizard Kickstarts: /var/lib/rhn/kickstarts/wizard/$profile_name--$org_id.cfg
問:
Cobbler スニペットのディレクトリー構造はどのようになっていますか。
答:
Cobbler スニペットは /var/lib/rhn/kickstarts/snippets に格納されます。Cobbler は、/var/lib/cobbler/snippets/spacewalk のシンボリックリンクを使用して、スニペットにアクセスします。
Snippets:  /var/lib/rhn/kickstarts/snippets/$org_id/$snippet_name

重要

Red Hat Satellite RPM は、Cobbler のキックスタートとスニペットのディレクトリーがデフォルトの場所にあることを想定しているので、これらの場所を変更しないでください。

10.12. 複数組織向けの Satellite と Satellite 証明書

問:
Satellite 証明書に十分なエンタイトルメント群がない場合は、システムの登録を複数組織向けの環境でどのように行えますか?
答:
エンタイトルメント群を開放する必要があってもそれを実行する時間がなかったリ、これを自分で実行するための各組織へのアクセスがなかったりする場合があります。複数組織の Satellite には Satellite 管理者によりある組織のエンタイトルメント数をその使用数以下に減らすことができるオプションがあります。この方法は管理組織にログインして実行する必要があります。
例えば、管理組織にログインしたとします。Satellite 上の全ての登録システムを対象とするには証明書にシステム管理エンタイトルメントが 5 つ足りない場合、その組織に最近登録された 5 システムのエンタイトルメントが外されます。このプロセスを以下に示します。
  1. /etc/rhn/rhn.conf ファイルで、web.force_unentitlement=1 を設定します。
  2. Satellite を再起動します。
  3. 各組織の サブスクリプション タブまたは個別エンタイトルメントの 組織 タブのいずれかで目的の組織に割り当てられたエンタイトルメント数を減らします。
  4. 組織内のいくつかのシステムが エンタイトルメントなし の状態になるはずです。組織内のエンタイトルメントなしのシステム数は、組織から削除したエンタイトルメントの合計数とシステムに適用していないエンタイトルメント数の差と同じになります。
    例えば、ステップ 3 で組織から 10 エンタイトルメントを削除して、その組織がシステムで使用されていなかった 4 エンタイトルメントを持っている場合は、その組織の 6 システムがエンタイトルメントを持たないことになります。
必要なエンタイトルメントの数を確保したら、新しい Satellite 証明書をアクティブにすることができるはずです。web.force_unentitlement 変数の変更が必要となるのは、組織が使用しているエンタイトルメントの数より少ない数を割り当てる場合のみになります。組織の所有しているエンタイトルメントの数が現在使用しているエンタイトルメントの数より多い場合、エンタイトルメントの削除にこの変数を設定する必要はありません。
問:
Satellite 証明書には、使用されていない追加のエンタイトルメントがあります。これらのエンタイトルメントはどうなりますか?
答:
新規に発行された Satellite 証明書のエンタイトルメントの数が、現在 Satellite で使用されているエンタイトルメントの数より多い場合、差分のエンタイトルメントは管理組織に割り当てられます。Web インターフェース に Satellite 管理者としてログインすると、差分のエンタイトルメントを他の組織に割り当てることができます。以前に他の組織に割り当てられたエンタイトルメントには影響はありません。

10.13. プロキシのインストールと設定

問:
Red Hat Network Package Manager の設定後に、ローカルパッケージがプライベート Red Hat Network チャンネルに正しく追加されたかどうかをどのように判別できますか?
答:
コマンド rhn_package_manager -l -c "name_of_private_channel" を使用して Satellite に対して既知のプライベートチャンネルパッケージを一覧表示します。または、Satellite インターフェースで確認します。
登録システムをプライベートチャンネルにサブスクライブしたら、登録システムでコマンド yum --disablerepo="*" --enablerepo="your_repo_name" list available を実行してプライベート Satellite チャンネルからパッケージを検索することもできます。
問:
クライアント群が Squid サーバーに接続しているかどうかは、どうしたら確認することができますか?
答:
/var/log/squid/access.log ファイルが Squid サーバーに対する接続をすべてログに記録しています。
問:
クライアントシステムの Red Hat Update Agent が Red Hat Satellite Proxy に接続されません。どうしたらこのエラーを解決できますか?
答:
Red Hat Update Agent の最新バージョンがクライアントシステムにインストールされているか確認してください。最新バージョンには、Red Hat Satellite Proxy への接続に必要な機能が含まれています。最新バージョンはコマンド yum update yum を root として実行して Red Hat Network から取得するか、または http://www.redhat.com/support/errata/ から取得できます。
Red Hat Satellite Proxy は Apache の拡張です。ログファイルの場所については、『Red Hat Satellite Proxy インストールガイド』 の 『ログファイル』 のセクションを参照してください。
問:
Red Hat Satellite Proxy 設定が動作しません。どこからトラブルシューティングを開始したらよいですか?
答:
/etc/sysconfig/rhn/systemid がパーミッション 0640 で root.apache によって所有されていることを確認してください。
ログファイルを確認します。リストについては、『Red Hat Satellite Proxy インストールガイド』 の 『ログファイル』のセクションを参照してください。
問:
Red Hat Satellite Proxy の全般的な問題はどのように調査/解決できますか?
答:
全般的な問題の調査/解決を開始するには、支障が生じているコンポーネントに関連するログファイルを調べます。
よくある問題はディスク領域が一杯になることです。この問題の最も顕著な兆候はログファイルへの書き込みが停止される状況です。単語の途中など、書き込み中にログ作業が停止された場合は、ハードディスクが一杯である可能性があります。これを確認するには、次のコマンドを実行して 使用% (Use%) の欄にある割合を確認します。
df -h
ログファイルの他にも、各種コンポーネントのステータスを読み出して貴重な情報を取得することができます。これは Apache Web server と Squid に対して実行することができます。
Apache Web server のステータスを読み出すには、次のコマンドを実行します。
service httpd status
Squid のステータスを読み出すには、次のコマンドを実行します。
service squid status
管理者側で Red Hat Satellite Proxy からのメールが受信できていない場合は、/etc/rhn/rhn.conf 内の traceback_mail に正しいアドレスが設定されていることを確認してください。
問:
Red Hat Satellite Proxy に「Host Not Found (ホストが見つかりません)」または「Could Not Determine FQDN (完全修飾ドメイン名を確定できませんでした)」のエラーが発生しました。どうしたらよいでしょうか?
答:
Red Hat Network の設定ファイルは完全修飾ドメイン名 (FQDN) のみに依存しているため、主要なアプリケーションは必ず Red Hat Satellite Proxy の名前を IP アドレスに解決できなければなりません。Red Hat Update AgentRed Hat Network Registration Client、および Apache Web server では、特にこの問題が発生する傾向があり、起動に失敗すると Red Hat Network のアプリケーションは「host not found (ホストが見つかりません)」のエラーを発行し、Web サーバーは「Could not determine the server's fully qualified domain name (サーバーの完全修飾ドメイン名を確定できませんでした)」のメッセージを出力します。
この問題は一般的に /etc/hosts ファイルが原因で生じます。ドメイン名解決の順序と方法を定義する /etc/nsswitch.conf を調べると確認できます。通常、/etc/hosts ファイルが最初にチェックされた後に、NIS (Neetwork Information Service) を使用している場合はこのサービス、次に DNS の順でチェックされます。Apache Web server が起動して Red Hat Network クライアントのアプリケーション群が動作するには、これらのいずれかが成功しなければなりません。
この問題を解決するには、/etc/hosts ファイルの内容を確認します。次のようになっています。
127.0.0.1 this_machine.example.com this_machine localhost.localdomain \ localhost
テキストエディターで、ファイルからマシンのホスト情報を削除します。以下のようになります。
127.0.0.1 localhost.localdomain.com localhost
次に、ファイルを保存してから Red Hat Network クライアントのアプリケーションまたは Apache Web server を再起動してみます。依然として失敗する場合は、次のようにこのファイル内で Proxy の IP アドレスを明示的に指定します。
127.0.0.1 localhost.localdomain.com localhost
123.45.67.8 this_machine.example.com this_machine
上記の値を実際のプロキシの IP アドレスに置き換えてください。これで問題が解決されるはずです。特定の IP アドレスを規定する場合には、マシンが新しいアドレスを取得した時点でそのファイルを更新する必要があります。
問:
Red Hat Satellite Proxy の不具合とネットワーク接続のエラーが生じました。どうしたらよいでしょうか?
答:
接続エラー関連と思われる問題が発生している場合は、次の手順を実行します。
  • 適切なパッケージを確認します。
     rhn-org-httpd-ssl-key-pair-MACHINE_NAME-VER-REL.noarch.rpm 
    上記のパッケージが Red Hat Satellite Proxy にインストールされ、また対応する rhn-org-trusted-ssl-cert-*.noarch.rpm または Raw 形式の CA SSL パブリック (クライアント) 証明書がすべてのクライアントシステムにインストールされていることを確認します。
  • クライアントシステムが適切な証明書を使用するよう設定されていることを確認します。
  • 1 つまたは複数の Red Hat Satellite Proxy を使用している場合は、各プロキシの SSL 証明書が正しく用意されていることを確認します。Red Hat Satellite と併用して Red Hat Satellite Proxy を使用している場合は、プロキシはサーバーとクライアントの両方の役割を担うため、自身のサーバー SSL キーペアと CA SSL パブリック (クライアント) 証明書の両方がインストールされていなければなりません。詳しい説明については 『Red Hat Satellite クライアント設定ガイド』 の SSL 証明書の章を参照してください。
  • Red Hat Satellite Proxy が HTTP Proxy 経由で接続している場合、表示されている URL が有効であることを確認します。例えば、HTTP Proxy URL フィールドには、http:// や https:// などのプロトコルへの参照が含まれていてはいけません。your-gateway.example.com:8080 などのように、hostname:port の形式でホスト名とポートのみを記載します。
  • Red Hat Satellite Proxy インストールガイド』 の 『その他の要件』 に示されるように、クライアントシステムが必要なポートを自らブロックしてしまうファイアウォールを使用していないことを確認します。
問:
パッケージ配信のエラーとオブジェクトの破損が生じました。何をチェックしたらよいですか?
答:
パッケージ配信が失敗するか、またはオブジェクトが破損しているように見えるが接続エラー関連ではない場合は、キャッシュの消去を検討してください。Red Hat Satellite Proxy には検討が必要なキャッシュが 2 つあります。1 つは Squid 用で、もう 1 つは認証用です。
Squid キャッシュは /var/spool/squid/ にあり、以下の手順で消去します。
  1. Apache Web server を停止します: service httpd stop
  2. Squid server を停止します: service squid stop
  3. 該当ディレクトリーの内容を削除します: rm -fv /var/spool/squid/*
  4. 両方のサービスを再起動します:
    service squid start
    service httpd start
ディレクトリーをクリアにして squid を再起動すると、このタスクをより迅速に行えますが、この方法では Red Hat Network トレースバックメッセージが複数出力される可能性が高くなります。
プロキシによって使用されている認証用の内部キャッシングのメカニズムにもキャッシュのクリアが必要になる場合があります。これを行うには、次のコマンドを発行します。
 rm -fv /var/spool/squid/* 

注記

上記のトラブルシューティングの手順をすべて試しても問題が解決できないか、または Red Hat Network の技術者に問題の解決を任せたい場合には、Red Hat Satellite で提供されている信頼性の高いサポートをご利用いただくことをお勧めします。サポートをご利用頂く場合は、ご使用の Satellite の設定パラメータ、ログファイル、およびデータベース情報を集めてそのパッケージを Red Hat に直接送信して頂くのが最も効率的な方法になります。
この作業を行うためのコマンドラインツールも Red Hat Network で提供しています。これは、satellite-debug コマンドでよく知られている Satellite Diagnostic Info Gatherer (Satellite 診断情報収集ツール) です。このツールを使用する際は root としてこのコマンドを発行してください。次のように、収集された情報が表示され tarball が 1 つ作成されます。
# satellite-debug
Collecting and packaging relevant diagnostic information.
Warning: this may take some time...
    * copying configuration information
    * copying logs
    * querying RPM database (versioning of Red Hat Satellite, etc.)
    * querying schema version and database character sets
    * get diskspace available
    * timestamping
    * creating tarball (may take some time): /tmp/satellite-debug.tar.bz2
    * removing temporary debug tree

Debug dump created, stored in /tmp/satellite-debug.tar.bz2
Deliver the generated tarball to your Red Hat Network contact or support channel.
完了後は /tmp/ ディレクトリーに生成された新しいファイルを Red Hat の担当者にメールで送信してください。迅速な診断が行われます。
また、Red Hat は SoS Report と呼ばれるコマンドラインツールを提供しており、これはそのコマンドである sosreport として知られています。このツールは Proxy の設定パラメータ、ログファイル、およびデータベース情報を収集し、Red Hat に直接送信します。
このツールを Red Hat Satellite の情報に使用する場合は、sos パッケージをインストールしておく必要があります。レポートを作成するには、Satellite サーバー上で root として sosreport -o satellite と入力します。例を以下に示します。
[root@satserver ~]# sosreport -o satellite

sosreport (version 3.2)

This command will collect diagnostic and configuration information from
this Red Hat Enterprise Linux system and installed applications.

An archive containing the collected information will be generated in
/tmp and may be provided to a Red Hat support representative.

Any information provided to Red Hat will be treated in accordance with
the published support policies at:

  https://access.redhat.com/support/

The generated archive may contain data considered sensitive and its
content should be reviewed by the originating organization before being
passed to any third party.

No changes will be made to system configuration.

Press ENTER to continue, or CTRL-C to quit.
次に、名前のイニシャルとラストネーム (姓)、サポートケース番号の入力が求められます。
ファイルの生成および圧縮ファイルへのアーカイブには数分かかる場合があります。完了後は、迅速な診断を行うために /tmp/ ディレクトリーにできた新しいファイルを Red Hat 担当者にメール送信してください。

付録A 改訂履歴

改訂履歴
改訂 1.1-0.1Mon Sep 4 2017Terry Chuang
翻訳ファイルを XML ソースバージョン 1.1-0 と同期
改訂 1.1-0Wed Feb 1 2017Satellite Documentation Team
Red Hat Satellite 5.8 リリース向けの初版。

法律上の通知

Copyright © 2017 Red Hat.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.