第2章 Satellite Server のインストール

本章では、Red Hat Satellite Server のインストール、初期設定、マニフェストの作成およびインストール、および追加設定の実行について説明します。

Satellite Server は、以下の 2 つのインストール方法があります。

オンラインインストール

Satellite Server のインストールに必要なパッケージは、Red Hat コンテンツ配信ネットワーク (CDN) から直接取得できます。CDN を使用すると、システムは常に最新のアップデートを受信できます。

オフラインインストール

外部のコンピューターを使用してパッケージの ISO イメージをダウンロードして、それを Satellite Server のインストール先のシステムにコピーする必要があります。非接続環境が必要な場合にのみ、ISO イメージを使用してください。ISO イメージには最新のアップデートが含まれていない場合があります。

注記

Satellite Server をそれ自体に登録することはできません。

2.1. オンラインネットワークからの Satellite Server のインストール

オンラインネットワークから Satellite Server をインストールする場合には、Red Hat コンテンツ配信ネットワーク から直接パッケージとアップデートを取得できます。

Satellite 6 インストールスクリプトは Puppet をベースとしていることに留意してください。つまり、インストールスクリプトを複数回実行すると、手動での設定変更が上書きされることがあります。この問題を回避し、適用する変更を特定するには、インストールスクリプトを実行時に --noop 引数を使用します。この引数により、実際の変更は行われません。潜在的な変更は /var/log/foreman-installer.log に書き込まれます。

ファイルは常にバックアップされるため、不要な変更は復元することができます。たとえば、foreman-installer ログには、Filebucket に関する以下のようなエントリーが示されます。

/Stage[main]/Dhcp/File[/etc/dhcp/dhcpd.conf]: Filebucketed /etc/dhcp/dhcpd.conf to puppet with sum 622d9820b8e764ab124367c68f5fa3a1

以前のファイルは以下のように復元できます。

# puppet filebucket -l \
restore /etc/dhcp/dhcpd.conf 622d9820b8e764ab124367c68f5fa3a1

2.1.1. Red Hat サブスクリプション管理への登録

Red Hat サブスクリプション管理にホストを登録すると、ユーザーが利用可能なサブスクリプションにホストを登録して、サブスクリプションのコンテンツを使用できるようになります。これには、Red Hat Enterprise Linux、Red Hat Software Collection (RHSCL)、Red Hat Satellite などのコンテンツが含まれます。

Red Hat コンテンツ配信ネットワークにシステムを登録します。プロンプトが表示されたら、カスタマーポータルのユーザー名とパスワードを入力します。

# subscription-manager register

このコマンドを実行すると、以下のような出力が表示されます。

# subscription-manager register
Username: user_name
Password:
The system has been registered with ID: 541084ff2-44cab-4eb1-9fa1-7683431bcf9a

2.1.2. Satellite Infrastructure サブスクリプションのアタッチ

Satellite Server の登録後に、サブスクリプションプール ID を特定して、利用可能なサブスクリプションを割り当てる必要があります。Red Hat Satellite Infrastructure のサブスクリプションを使用すると、Red Hat Satellite、Red Hat Enterprise Linux および Red Hat Software Collections (RHSCL) のコンテンツにアクセスできるようになります。必要なサブスクリプションはこれだけです。

Red Hat Satellite Infrastructure は、Smart Management を提供するサブスクリプションすべてに含まれます。詳細は、Red Hat ナレッジベースソリューション「Satellite Infrastructure Subscriptions MCT3718 MCT3719」を参照してください。

サブスクリプションがシステムにアタッチされていない場合には、利用可能として分類されます。利用可能な Satellite サブスクリプションを見つけることができない場合は、Red Hat ナレッジベースソリューション 「How do I figure out which subscriptions have been consumed by clients registered under Red Hat Subscription Manager?」 を参照して、スクリプトを実行し、サブスクリプションが別のシステムで使用されているかどうかを確認できます。

手順

Satellite Infrastructure サブスクリプションをアタッチするには、以下の手順を実行します。

  1. Satellite Infrastructure サブスクリプションのプール ID を特定します。

    # subscription-manager list --all --available --matches 'Red Hat Satellite Infrastructure Subscription'

    このコマンドを実行すると、以下のような出力が表示されます。

    Subscription Name:   Red Hat Satellite Infrastructure Subscription
    Provides:            Red Hat Satellite
                          Red Hat Software Collections (for RHEL Server)
                          Red Hat CodeReady Linux Builder for x86_64
                          Red Hat Ansible Engine
                          Red Hat Enterprise Linux Load Balancer (for RHEL Server)
                          Red Hat
                          Red Hat Software Collections (for RHEL Server)
                          Red Hat Enterprise Linux Server
                          Red Hat Satellite Capsule
                          Red Hat Enterprise Linux for x86_64
                          Red Hat Enterprise Linux High Availability for x86_64
                          Red Hat Satellite
                          Red Hat Satellite 5 Managed DB
                          Red Hat Satellite 6
                          Red Hat Discovery
    SKU:                 MCT3719
    Contract:            11878983
    Pool ID:             8a85f99968b92c3701694ee998cf03b8
    Provides Management: No
    Available:           1
    Suggested:           1
    Service Level:       Premium
    Service Type:        L1-L3
    Subscription Type:   Standard
    Ends:                03/04/2020
    System Type:         Physical
  2. サブスクリプションプール IDを書き留めます。上記の例と、実際のサブスクリプションプール ID は異なります。
  3. Satellite Server の実行先のベースシステムに、Satellite Infrastructure サブスクリプションを割り当てます。

    # subscription-manager attach --pool=pool_id

    このコマンドを実行すると、以下のような出力が表示されます。

    サブスクリプションを正常に割り当てます: Red Hat Satellite Infrastructure サブスクリプション
  4. オプション: Satellite Infrastructure サブスクリプションが割り当てられていることを確認します。

    # subscription-manager list --consumed

2.1.3. リポジトリーの設定

この手順を使用して、Satellite Server のインストールに必要なリポジトリーを有効にします。

手順

必要なリポジトリーを設定するには、以下の手順を実行します。

  1. すべてのリポジトリーを無効にします。

    # subscription-manager repos --disable "*"
  2. 次のリポジトリーを有効にします。

    # subscription-manager repos --enable=rhel-7-server-rpms \
    --enable=rhel-7-server-satellite-6.6-rpms \
    --enable=rhel-7-server-satellite-maintenance-6-rpms \
    --enable=rhel-server-rhscl-7-rpms \
    --enable=rhel-7-server-ansible-2.8-rpms
    注記

    Red Hat Virtualization (RHV) がホストする仮想マシンとして、Satellite Server をインストールする場合は、Red Hat Common リポジトリーを有効にして、RHV ゲストエージェントとドライバーもインストールする必要があります。詳細は『仮想マシン管理ガイド』の「ゲストエージェントおよびドライバーのインストール」を参照してください。

  3. yum メタデータを消去します。

    # yum clean all
  4. オプション: 必要なリポジトリーが有効になっていることを確認します。

    # yum repolist enabled

2.1.4. Satellite Server パッケージのインストール

Satellite Server パッケージをインストールする前に、すべてのパッケージを更新する必要があります。インストール後に、サーバー証明書の設定、ユーザー名、パスワード、デフォルトの組織および場所の設定を含む Satellite Server の初期設定を実行する必要があります。

  1. すべてのパッケージを更新します。

    # yum update
  2. Satellite Server パッケージをインストールします。

    # yum install satellite

2.2. 初期設定の実行

本セクションでは、Red Hat Satellite Server インストール時のホストオペレーティングシステムの初期設定について説明します。時間の同期、sos パッケージのインストール、インストールオプションの指定などが含まれます。

作業を進める前に、使用している環境に適切なマニフェストまたはパッケージを確認します。マニフェストについての詳細は『Red Hat Satellite コンテンツ管理ガイド』の「サブスクリプションの管理」を参照してください。

2.2.1. chronyd とシステムクロックの同期

時間のずれを最小限に抑えるには、Satellite Server をインストールするベースシステムのシステムクロックを Network Time Protocol (NTP) サーバーと同期する必要があります。ベースシステムのクロックが正しく設定されていない場合には、証明書の検証に失敗する可能性があります。

chrony スイートに関する詳細は、『Red Hat Enterprise Linux 7 システム管理者ガイド』の「chrony スイートを使用した NTP の設定」を参照してください。

手順

システムクロックを同期するには、以下の手順を実行します。

  1. chrony パッケージをインストールします。

    # yum install chrony
  2. chronyd サービスを起動して、有効にします。

    # systemctl start chronyd
    # systemctl enable chronyd

2.2.2. ホストオペレーティングシステムへの SOS パッケージのインストール

ホストオペレーティングシステムには sos パッケージをインストールする必要があります。sos パッケージを使用すると、Red Hat Enterprise Linux システムから設定と診断情報を収集できるだけでなく、Red Hat テクニカルサポートへのサービスリクエストの起票時に必要な初期システム分析を提示できます。sos の使用方法に関する詳細は、カスタマーポータルのナレッジベースソリューション「What is a sosreport and how to create one in Red Hat Enterprise Linux 4.6 and later?」を参照してください。

sos パッケージをインストールします。

# yum install sos

2.2.3. インストールオプションの指定

Satellite Server は satellite-installer インストールスクリプトを使用してインストールし、初期設定の一部として自動または手動で Satellite を設定します。

以下のいずれかの設定方法を選択します。

  • 自動設定: この方法は、インストールスクリプトの実行時に応答ファイルを使用して設定プロセスを自動化することで実行します。応答ファイルとは、コマンドやスクリプトによって読み込まれるパラメーター一覧が含まれているファイルです。デフォルトの Satellite 応答ファイルは、/etc/foreman-installer/scenarios.d/satellite-answers.yaml です。使用する応答ファイルは、/etc/foreman-installer/scenarios.d/satellite.yaml 設定ファイル内の answer_file ディレクティブで設定します。

    応答ファイルを使用したインストールスクリプトによる初期設定の実行方法は「応答ファイルを使用した初期設定の自動実行」を参照してください。

  • 手動設定: 1 つ以上のコマンドオプションが含まれるインストールスクリプトを実行します。コマンドオプションは、対応するデフォルトの初期設定オプションを上書きし、Satellite 応答ファイルに記録されます。必要なオプションを設定するために、スクリプトは何回でも実行することができます。

    コマンドラインオプションのあるインストールスクリプトによる初期設定の実行方法は「手動による初期設定」を参照してください。

注記

Satellite インストーラーの実行時に使用するオプションによっては、設定が完了するのに数分かかることがあります。管理者は、応答ファイルを見ることで、両方の方法でこれまでに使用されたオプションを確認できます。

2.2.3.1. 手動による初期設定

初期設定では、組織、場所、ユーザー名、およびパスワードが作成されます。初期設定後に、必要に応じて追加の組織と場所を作成できます。初期設定では、MongoDB および PostgreSQL データベースも同じサーバーにインストールします。デプロイメントによっては、外部のデータベースを使用する方がパフォーマンスが向上する可能性があります。詳細は、「Satellite での外部データベースの使用」 を参照してください。

インストールプロセスの完了には、数十分かかることがあります。システムにリモートで接続する場合は、リモートシステムから切断された場合にインストールの進捗を確認できるよう、通信セッションの一時中断または再接続を許可できる screen などのユーティリティーの使用を検討してください。Red Hat ナレッジベースの記事「How to use the screen command」には screen のインストールについて記載されています。詳細はscreen の man ページを参照してください。インストールコマンドを実行しているシェルへの接続が切断された場合は、/var/log/foreman-installer/satellite.log のログを参照してプロセスが正常に完了したかどうかを確認します。

手動設定に関する考慮事項

satellite-installer --scenario satellite --help コマンドを使用して、利用可能なオプションとすべてのデフォルト値を表示します。値を指定しない場合は、デフォルト値が使用されます。

--foreman-initial-organization オプションに、意味を持つ値を指定します。たとえば、会社名を指定できます。値に一致する内部ラベルが作成されますが、このラベルは後で変更できません。値を指定しない場合は、ラベルが Default_OrganizationDefault Organization という名前の組織が作成されます。組織名は変更できますが、ラベルは変更できません。

デフォルトでは、インストーラーが設定するすべての設定ファイルが Puppet によって管理されます。satellite-installer を実行すると、Puppet が管理するファイルに手動で加えられた変更が初期値で上書きされます。Satellite Server は、デフォルトでは、サービスとして実行している Puppet エージェントを使用してインストールされます。必要に応じて、--puppet-runmode=none オプションを使用して、Satellite Server で Puppet エージェントを無効にできます。

DNS ファイルと DHCP ファイルを手動で管理する場合には、--foreman-proxy-dns-managed=false オプションと --foreman-proxy-dhcp-managed=false オプションを使用して、各サービスに関連するファイルが Puppet で管理されないようにします。他のサービスにカスタム設定を適用する方法は「付録A Red Hat Satellite へのカスタム設定の適用」を参照してください。

Multihomed DHCP の詳細の追加

Multihomed DHCP を使用する場合は、ネットワークインターフェースファイルの更新が必要です。

  1. /etc/systemd/system/dhcpd.service.d/interfaces.conf ファイルで、以下の行を編集して Multihomed DHCP を追加します。

    [Service]
    ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0 eth1 eth2
  2. 以下のコマンドを入力して、デーモンのリロードを実行します。

    # systemctl --system daemon-reload
  3. 以下のコマンドを入力して、dhcpd サービスを再起動します。

    # systemctl restart dhcpd.service

Satellite Server の手動設定

初期設定を手動で実行するには、使用する追加オプションを指定し、以下のコマンドを入力します。

# satellite-installer --scenario satellite \
--foreman-initial-organization "initial_organization_name" \
--foreman-initial-location "initial_location_name" \
--foreman-initial-admin-username admin_user_name \
--foreman-initial-admin-password admin_password

このスクリプトは、進捗を表示し、/var/log/foreman-installer/satellite.log にログを記録します。

2.2.3.2. 応答ファイルを使用した初期設定の自動実行

応答ファイルを使用すると、カスタマイズされたオプションでインストールを自動化できます。最初の応答ファイルには、部分的に情報が入力されます。応答ファイルには、satellite-installer スクリプトの初回実行後に、インストール向けの標準的なパラメーター値が入力されます。いつでも Satellite Server の設定は変更できます。

ネットワークの変更の場合は、可能な限り、IP アドレスの代わりに FQDN を使用する必要があります。

応答ファイルを使用した Satellite Server の自動設定

  1. デフォルトの応答ファイル /etc/foreman-installer/scenarios.d/satellite-answers.yaml をローカルファイルシステムの場所にコピーします。

    # cp /etc/foreman-installer/scenarios.d/satellite-answers.yaml \
    /etc/foreman-installer/scenarios.d/my-answer-file.yaml
  2. 設定可能なすべてのオプションを表示するには、satellite-installer --scenario satellite --help コマンドを実行します。
  3. 応答ファイルのコピーを開き、ご使用の環境に適した値を編集し、ファイルを保存します。
  4. /etc/foreman-installer/scenarios.d/satellite.yaml ファイルを開き、カスタム応答ファイルを参照する応答ファイルエントリーを編集します。

    :answer_file: /etc/foreman-installer/scenarios.d/my-answer-file.yaml
  5. satellite-installer スクリプトを実行します。

    # satellite-installer --scenario satellite
  6. 切断環境でインストールしている場合は、ISO イメージをアンマウントします。

    # umount /media/sat6
    # umount /media/rhel7-server

2.2.4. カスタマーポータルでサブスクリプションの割り当ての作成

サブスクリプション情報は、Red Hat カスタマーポータルでアクセスできます。そこでサブスクリプション割り当てを使用して、Red Hat Satellite Server などのオンプレミス管理アプリケーションで使用するサブスクリプションを割り当てることができます。

  1. ブラウザーで https://access.redhat.com/ を開き、Red Hat サブスクリプション管理にシステムを登録する時に使用したアカウントにログインします。
  2. カスタマーポータルの左上にある サブスクリプション に移動します。
  3. サブスクリプション割り当て に移動します。
  4. 新規サブスクリプションの割り当てを作成 をクリックします。
  5. 名前 フィールドに名前を入力します。
  6. タイプ の一覧から、お使いの Satellite Server に一致するタイプとバージョンを選択します。
  7. 作成 をクリックします。

2.2.5. 割り当てへのサブスクリプションの追加

以下の手順では、サブスクリプションを割り当てに追加する方法について説明します。

  1. ブラウザーで https://access.redhat.com/ を開き、Red Hat サブスクリプション管理にシステムを登録する時に使用したアカウントにログインします。
  2. カスタマーポータルの左上にある サブスクリプション に移動します。
  3. サブスクリプション割り当て に移動します。
  4. 更新する割り当てをクリックします。
  5. サブスクリプション タブをクリックします。
  6. サブスクリプションの追加 をクリックします。
  7. Red Hat 製品サブスクリプションの一覧が表示されます。各製品に対するエンタイトルメントの数量 を入力します。
  8. 送信 をクリックして割り当てを完了します。

割り当てにサブスクリプションを追加したら、マニフェストファイルをエクスポートします。

2.2.6. カスタマーポータルからのサブスクリプションマニフェストのエクスポート

1 つ以上のサブスクリプションがあるサブスクリプション割り当てを表示し、以下のいずれかからマニフェストをエクスポートできます。

  • サブスクリプション セクションの 詳細 タブから マニフェストのエクスポート ボタンをクリックします。
  • サブスクリプション タブから マニフェストのエクスポート ボタンをクリックします。

マニフェストをエクスポートすると、カスタマーポータルにより、選択したサブスクリプション証明書がエンコードされ、.zip アーカイブが作成されます。作成した .zip アーカイブはサブスクリプションのマニフェストで、Satellite Server にアップロードできます。

2.2.7. Satellite Server へのサブスクリプションマニフェストのインポート

Red Hat Satellite 6 Web UI と CLI は、マニフェストをインポートする手段を提供します。

Web UI をご利用の場合

  1. コンテキストが、使用する組織に設定されていることを確認します。
  2. コンテンツ > サブスクリプション に移動します。
  3. マニフェストの管理 をクリックして、組織のマニフェストページを表示します。
  4. ファイルの選択 をクリックしてサブスクリプションマニフェストを選択し、アップロード をクリックします。
  5. ファイルの選択 をクリックして、カスタマーポータルからエクスポートした .zip 形式のマニフェストアーカイブを選択します。

CLI をご利用の場合

Red Hat Satellite 6 CLI を使用するには、マニフェストが Satellite Server 上にある必要があります。ローカルクライアントシステムで、マニフェストを Satellite Server にコピーします。

[user@client ~]$ scp ~/manifest_file.zip root@satellite.example.com:~/.

次に、以下のコマンドを使用してインポートします。

[root@satellite ~]# hammer subscription upload \
--file ~/manifest_file.zip \
--organization "organization_name"

数分後、CLI により、マニフェストのインポートに成功したことが報告されます。

上記の手順を完了すると、リポジトリーを有効にして Red Hat コンテンツをインポートできるようになります。これは、後に続くいくつかの手順での前提条件になります。詳細は、『Red Hat Satellite コンテンツ管理ガイド』の「Red Hat コンテンツのインポート」を参照してください。