第3章 ホストの登録
Satellite Server または Capsule Server にホストを登録する方法は、主に 3 つあります。
Satellite から
curl
コマンドを生成し、ホスト (数に制限なし) からこのコマンドを実行して、これらのホストをグローバル登録テンプレートを使用して登録します。この方法は、新規インストールしたホストにも、Satellite 5 や別の Satellite 6 に登録済みのホストなどにも適しています。この方法を使うと、Satellite への登録時に Satellite SSH 鍵をホストにデプロイし、リモート実行ジョブのホストを有効にすることもできます。リモート実行ジョブの詳細は、リモートジョブの設定とセットアップ を参照してください。
この方法を使うと、Satellite への登録時に Red Hat Insights でホストを設定することもできます。Satellite ホストと Insights を使用する方法は、Satellite のホストでの Red Hat Insights の使用 を参照してください。
-
コンシューマー RPM (
server.example.com/pub/katello-ca-consumer-latest.noarch.rpm
) をダウンロードしてインストールしてから、Subscription Manager を実行します。この方法は、新規インストールしたホストに適しています。 - ブートストラップスクリプト (server.example.com/pub/bootstrap.py) をダウンロードして実行します。この方法は、新規インストールしたホストにも、Satellite 5 や別の Satellite 6 に登録済みのホストなどにも適しています。
Atomic Host を Satellite Server または Capsule Server に登録することもできます。
次のいずれかの手順を使用して、ホストを登録します。
以下の手順を使用して、ホストツールをインストールして設定します。
ホストでサポート対象のオペレーティングシステム
ホストは、以下の Red Hat Enterprise Linux バージョンのいずれかを使用している必要があります。
- 5.7 以降
- 6.1 以降*
- 7.0 以上
- 8.0 以降
Red Hat Enterprise Linux バージョン 6.1、6.2 および 6.3 では、subscription-manager
と関連のパッケージを手動で更新する必要があります。詳細は、https://access.redhat.com/solutions/1256763 を参照してください。
サポートされるアーキテクチャー
Red Hat Enterprise Linux のすべてのアーキテクチャーがサポートされます。
- i386
- x86_64
- s390x
- ppc_64
3.1. グローバル登録テンプレートを使ったホストの Red Hat Satellite への登録
以下の手順を使用して、ホストを Red Hat Satellite 6 に登録します。
この登録方法では、Satellite で curl
コマンドを生成し、ホストでこのコマンドを実行することでホストを Satellite に登録できます。この方法では、ホスト登録のプロセスを完全に制御できるグローバル登録テンプレートを使用します。
前提条件
-
curl
コマンドを生成する Satellite ユーザーには、create_hosts
パーミッションが必要。 - 登録するホストで root 権限がある。
- アクティベーションキーを作成している。
-
オプション: Red Hat Insights にホストを登録する場合は、
rhel-7-server-rpms
リポジトリーを同期して、使用するアクティベーションキーで利用できるようにする必要があります。これは、insights-client
パッケージをインストールするために必要です。
手順
- Satellite Web UI で、ホスト > プロビジョニングテンプレート に移動し、Linux 登録デフォルト テンプレートを検出してクリックします。
- 関連付け タブをクリックします。
- 登録するオペレーティングシステムが 選択項目 列にあることを確認します。
- 送信 をクリックします。
- ホスト > オペレーティングシステム に移動し、登録するオペレーティングシステムを選択します。
- テンプレート タブをクリックします。
- 登録テンプレート リストから、Linux 登録デフォルト が選択されていることを確認します。
- 送信 をクリックします。
- ホスト > すべてのホスト > ホストの登録 に移動します。
オプション: Capsule を使用してホストを登録する場合は、この Capsule で 登録 機能が有効になっていることを確認してください。
インフラストラクチャー > Capsules に移動して、使用する Capsule をクリックし、アクティブな機能 リストから 登録 機能を特定します。
オプション: 登録 機能が Capsule で有効になっていない場合は、Capsule で以下のコマンドを入力して有効にします。
# satellite-installer --foreman-proxy-registration \ --foreman-proxy-templates \ --foreman-proxy-template-url 'http://capsule.example.com'
- オプション: Host Groupリストから、ホストと関連付けるホストグループを選択します。
- オペレーティングシステム リストから、登録するホストのオペレーティングシステムを選択します。
- Capsule 一覧から、ホストの登録に使用する Capsule を選択します。外部 Capsule を使用しない場合は、内部の Capsule を選択する必要があります。
- Insights 一覧から、ホストを Insights に登録したいかどうかを選択します。
- Remote Execution リストから、Satellite SSH 鍵をホストにデプロイするかどうかを選択します。
オプション: Satellite は認証に JSON Web Tokens (JWT) を使用します。このトークンの期間は、生成された
curl
コマンドが機能する期間を定義します。トークンの期間を変更する場合は、トークンライフタイム (時間単位) フィールドに必要な期間を入力します。期間は、時間単位で設定できます。Satellite は、ホストの認証に
curl
コマンドを生成するユーザーのパーミッションを使用する点に注意してください。ユーザーが追加のパーミッションを失ったり取得したりすると、JWT のパーミッションも変わってきます。そのため、トークン期間中にユーザーのパーミッションを削除、ブロック、または変更しないでください。- オプション: リモート実行インターフェイス フィールドに、ホストが SSH 接続に使用する必要があるネットワークインターフェイスを入力します。このフィールドが空の場合、Satellite はデフォルトのネットワークインターフェイスを使用します。
- アクティベーションキー フィールドで、ホストに割り当てるアクティベーションキーを 1 つ以上入力します。
- コマンドの生成 をクリックします。
-
生成された
curl
コマンドをコピーして、ホストに入力します。 以下のいずれかの方法で、CA 証明書でホストを設定します。
--insecure
オプションをcurl
コマンドに追加します。これにより、初回呼び出しは安全ではなくなりますが、この初回呼び出し時に、ホストは Satellite から CA ファイルをダウンロードします。ホストは、この CA ファイルを使用して Satellite に接続し、今後のすべての呼び出しは安全になります。Satellite とホスト間のネットワークに存在する攻撃者が、初回の安全ではない呼び出しから CA ファイルをフェッチする場合、攻撃者は登録したホストと JWT 間の API 呼び出しの内容にアクセスできます。そのため、登録中の SSH 鍵のデプロイを選択した場合、攻撃者は SSH 鍵を使用してホストにアクセスできます。以下は、
--insecure
オプションを指定したcurl
コマンドの例です。curl -X GET --insecure https://satellite.example.com/register...
--insecure
オプションを指定してcurl
コマンドを呼び出す必要がない場合は、各ホストに CA ファイルを手動でコピーし、インストールできます。そのためには、管理 > 設定 > 認証 に移動し、SSL CA ファイル 設定を特定することで、Satellite が CA ファイルを保存する場所を検出します。
CA ファイルをホストの
/etc/pki/ca-trust/source/anchors/
ディレクトリーにコピーし、以下のコマンドを入力します。# update-ca-trust enable # update-ca-trust
-
登録するホストで、
curl
コマンドをroot
として入力します。
3.1.1. グローバル登録テンプレートおよびホスト登録テンプレートのカスタマイズ
登録プロセスをカスタマイズする場合は、本セクションの情報を使用します。
Satellite のデフォルトテンプレートはすべてロックされている点に注意してください。登録プロセスをカスタマイズする場合は、デフォルトのテンプレートのクローンを作成し、クローンを編集する必要があります。次に、管理 > 設定 > プロビジョニング の デフォルトグローバル登録テンプレート 設定を変更し、カスタムのグローバル登録 テンプレートにポイントするようにします。オペレーティングシステム設定の 登録テンプレート 設定を変更し、カスタムの Linux 登録デフォルト テンプレートにポイントするようにします。
テンプレート
登録プロセスでは、以下の登録テンプレートを使用します。
-
グローバル登録 テンプレートには、ホストを Satellite に登録するための手順が含まれています。このテンプレートは、ホストが
/register
エンドポイントにアクセスするとレンダリングされます。 - Linux 登録デフォルト テンプレートには、登録後にホストを設定する手順が含まれます。
グローバルパラメーター
以下のグローバルパラメーターを設定するには、設定 > グローバルパラメーター に移動します。
-
host_registration_remote_execution
パラメーターはremote_execution_ssh_keys
スニペットで使用されます。デフォルト値はtrue
です。 -
host_registration_insights
パラメーターはinsights
スニペットで使用され、デフォルト値はtrue
です。
スニペット
remote_execution_ssh_keys
スニペットは、Linux 登録デフォルト テンプレートで使用されます。これは、host_registration_remote_execution
パラメーターが true
に設定されている場合にのみ、ホストに SSH 鍵をデプロイします。
insights
スニペットは、Linux 登録デフォルト テンプレートで使用されます。これは、グローバルパラメーター host_registration_insights
が true に設定されている場合、Red Hat Insights クライアントをダウンロードおよびインストールします。
変数
この表は、Global Registration
テンプレートで使用される変数について説明しています。
変数 | コマンド引数 | 説明 |
---|---|---|
| none | 現在の認証ユーザーオブジェクト |
|
|
|
|
|
|
|
| ホストのホストグループです。 |
|
| ホストのオペレーティングシステム |
|
|
登録したホストの |
|
|
登録済みホストの |
|
| リモート実行用に、ホストのデフォルトインターフェイスを設定します。 |
|
| ホストのアクティベーションキー |
| none |
|