C.4. ホストの登録
登録テンプレートを使用してホストを登録し、登録プロセス中にさまざまなインテグレーション機能とホストツールを設定できます。
前提条件
-
ユーザーアカウントに
create_hosts
権限を持つロールが割り当てられている。 - 登録するホストで root 権限がある。
- 登録用のホストが設定されている。詳細は、「ホスト登録の設定」 を参照してください。
- ホストのアクティベーションキーがある。詳細は、コンテンツの管理 の アクティベーションキーの管理 を参照してください。
-
オプション: ホストを Red Hat Insights に登録する場合は、
rhel-8-for-x86_64-baseos-rpms
リポジトリーとrhel-8-for-x86_64-appstream-rpms
リポジトリーを同期し、アクティベーションキーで使用できるようにする必要があります。これは、insights-client
パッケージをインストールするために必要です。 - ホストのオペレーティングシステムバージョン用の Red Hat Satellite Client 6 リポジトリーが、Satellite Server 上で同期され、使用するアクティベーションキーで有効になっている。詳細は、コンテンツの管理 の コンテンツのインポート を参照してください。このリポジトリーは、リモート実行プルクライアント、Puppet エージェント、Tracer、およびその他のツールに必要です。
- Satellite Server の代わりに Capsule Server を使用する場合は、Capsule Server が適切に設定されていることを確認してください。詳細は、Capsule Server のインストール の ホストの登録とプロビジョニングのための Capsule の設定 を参照してください。
- Satellite Server または Capsule Server が HTTP プロキシーの背後にある場合は、接続に HTTP プロキシーを使用するようにホストでサブスクリプションマネージャーを設定します。詳細は、Red Hat ナレッジベース の How to access Red Hat Subscription Manager (RHSM) through a firewall or proxy を参照してください。
手順
- Satellite Web UI で、Hosts > Register Host に移動します。
- 登録ホストの設定方法を入力します。
- General タブの Activation Keys フィールドに、ホストに割り当てるアクティベーションキーを 1 つ以上入力します。
-
Generate をクリックして
curl
コマンドを生成します。 -
登録するホストで、
curl
コマンドをroot
として実行します。登録が完了すると、登録テンプレートの設定時に指定したホストグループに割り当てられた Ansible ロールがホスト上で実行されます。
指定できる登録の詳細は次のとおりです。
- General タブの Capsule フィールドで、ホストの登録に使用する Capsule を選択します。ロードバランサーの背後にある Capsule は、Satellite Web UI でホストのコンテンツソースとして選択された Capsule よりも優先されます。
General タブで Insecure オプションを選択すると、最初の呼び出しを insecure にします。この最初の呼び出し中に、ホストは Satellite から CA ファイルをダウンロードします。ホストは、この CA ファイルを使用して Satellite に接続し、今後のすべての呼び出しは安全になります。
Red Hat は、セキュアでない呼び出しを回避することを推奨します。
Satellite とホスト間のネットワークに存在する攻撃者が、初回の安全ではない呼び出しから CA ファイルをフェッチする場合、攻撃者は登録したホストと JSON Web Tokens (JWT) 間の API 呼び出しの内容にアクセスできます。そのため、登録中の SSH キーのデプロイを選択した場合、攻撃者は SSH キーを使用してホストにアクセスできます。
- Advanced タブの Repositories フィールドでは、登録を実行する前に追加するリポジトリーをリスト表示できます。アクティベーションキーでリポジトリーを指定する場合は、リポジトリーを指定する必要はありません。
Advanced タブの Token lifetime (hours) フィールドで、Satellite が認証に使用する JSON Web Token (JWT) の有効期間を変更できます。このトークンの期間は、生成された
curl
コマンドが機能する期間を定義します。Satellite は、ホストの認証に
curl
コマンドを生成するユーザーのパーミッションを適用する点に注意してください。ユーザーが追加のパーミッションを失ったり取得したりすると、JWT のパーミッションも変わってきます。そのため、トークン期間中にユーザーのパーミッションを削除、ブロック、または変更しないでください。JWT の範囲は登録エンドポイントのみに制限されているため、その他の場所では使用できません。
CLI 手順
-
hammer host-registration generate-command
を使用して、curl
コマンドを生成し、ホストを登録します。 -
登録するホストで、
curl
コマンドをroot
として実行します。
詳細は、Hammer CLI のヘルプ hammer host-registration generate-command --help
を参照してください。
Ansible の手順
-
redhat.satellite.registration_command
モジュールを使用します。
詳細は、ansible-doc redhat.satellite.registration_command
の Ansible モジュールのドキュメントを参照してください。
API の手順
-
POST /api/registration_commands
リソースを使用します。
詳細は、https://satellite.example.com/apidoc/v2.html
にある完全な API リファレンスを参照してください。