4.4. Red Hat OpenShift に RHACS のセキュアクラスターサービスをインストールする
以下のいずれかの方法を使用して、セキュアクラスターに Red Hat Advanced Cluster Security for Kubernetes (RHACS) をインストールできます。
- Operator を使用してインストールする
- Helm チャートを使用してインストールする
roxctlCLI を使用してインストールする注記roxctl CLI を使用する必要があるという特別なインストール要件がない限り、
roxctlCLI は使用しないでください。
4.4.1. セキュアクラスターサービスのインストールの概要 リンクのコピーリンクがクリップボードにコピーされました!
クラスターを監視するには、環境内のすべてのクラスターにセキュアクラスターサービスをインストールする必要があります。セキュアクラスターサービスは、Red Hat Advanced Cluster Security for Kubernetes (RHACS) Operator を使用して SecuredCluster カスタムリソース (CR) を作成することでインストールできます。
- インストールの要件と依存関係
SecuredClusterCR をインストールする前に、以下の依存関係と配置ルールを理解しておく必要があります。- Central の依存関係
-
SecuredClusterCR をインストールする前に、CentralCR をインストールする必要があります。セキュアクラスターサービスのインストールには、Central によって生成された証明書が必要です。 - namespace の要件
- 併置
-
Central もホストしているクラスターに
SecuredClusterCR をインストールする場合は、Central と同じ namespace にインストールする必要があります。 - 分離
-
クラスターが Central をホストしていない場合は、
SecuredClusterCR を RHACS Operator がインストールされているプロジェクトとは別の、専用のプロジェクトにインストールする必要があります。 - インストールが禁止されている namespace
-
SecuredClusterCR を、istio-systemプロジェクト、またはkube、openshift、redhatというプレフィックスが付いたプロジェクトにインストールしないでください。
- Operator のアノテーションと実行時のデフォルト設定
RHACS Operator は、CR に割り当てられたアノテーションを使用して設定のデフォルト値を管理します。このアノテーションは、
feature-defaults.platform.stackrox.io/<identifier>の形式で表され、以下の目的で使用されます。- 実行時の決定
- Operator が実行時に環境に基づいて設定項目のデフォルト値を決定できるようにします。
- 永続性
- 更新時にも以前の設定内容が保持されるようにします。たとえば、Scanner V4 の有効化など、新しいバージョンでデフォルトの動作が変更された場合も、このアノテーションがあれば既存の設定が安定した状態を維持できます。
これらのアノテーションを変更したり削除したりしないでください。ただし、CR で値を明示的に設定した場合 (たとえば、フィールドを disable に設定した場合)、その明示的な設定は、アノテーションによって管理されるデフォルトの動作よりも優先されます。
4.4.1.1. インストール時に使用される Operator アノテーション リンクのコピーリンクがクリップボードにコピーされました!
RHACS は、カスタムリソース (CR) にアタッチされたアノテーションを使用します。これにより、Operator を使用して実行されるインストールでは、特定の設定項目のデフォルト値が現在の環境に基づいて Operator によって実行時に決定され、項目の以前に設定された値が保持されます。
一部の設定項目では、インストール時に静的なデフォルト値を使用することは理想的ではありません。RHACS バージョン 4.8 以降、Operator はクラスターに適用する CR にアタッチされるアノテーションを追加できます。これらのアノテーションにより、新規インストールのデフォルトの動作が変更された場合でも、Operator が以前に行ったデフォルトの決定が保持され、将来的に再適用されます。つまり、RHACS はアノテーションを使用して実行時のデフォルトを永続化します。これは、特定の設定のデフォルト値が実行時に Operator によって決定されることを意味します。
たとえば、リリース 4.8 以降では、Scanner V4 を有効にするための値が指定されていない場合、デフォルトの動作では Scanner V4 が有効になります。ただし、CR に disable などの値が設定されている場合、RHACS はその値を使用します。Scanner V4 の例では、バージョン 4.7 では Scanner V4 はデフォルトで無効になっています。Operator を使用してバージョン 4.8 に更新すると、その無効な設定が維持され、Scanner V4 は無効になります。
アノテーションの形式は feature-defaults.platform.stackrox.io/<identifier> です。たとえば、feature-defaults.platform.stackrox.io/scannerV4 は、Operator が RHACS バージョン 4.8 への更新中にデフォルトの Scanner V4 有効化トグルを安定した状態に保つことを可能にするアノテーションです。
これらのアノテーションを変更したり削除したりしないでください。
4.4.1.2. セキュアクラスターサービスのインストール リンクのコピーリンクがクリップボードにコピーされました!
Operator を使用してクラスターにセキュアクラスターサービスをインストールできます。これにより、SecuredCluster カスタムリソースが作成されます。セキュアクラスターサービスは、監視する環境内のすべてのクラスターにインストールする必要があります。
Red Hat Advanced Cluster Security for Kubernetes をインストールする場合:
-
RHACS を初めてインストールする場合は、
SecuredClusterカスタムリソースのインストールは Central が生成する証明書に依存しているため、最初にCentralカスタムリソースをインストールする必要があります。 -
名前が
kube、openshift、redhatで始まるプロジェクト、またはistio-systemプロジェクトにはSecuredClusterをインストールしないでください。 -
Central もホストしているクラスターに RHACS
SecuredClusterカスタムリソースをインストールする場合は、必ず Central と同じ namespace にインストールしてください。 -
Central をホストしていないクラスターに Red Hat Advanced Cluster Security for Kubernetes
SecuredClusterカスタムリソースをインストールする場合、Red Hat では、Red Hat Advanced Cluster Security for Kubernetes Operator をインストールしたプロジェクトではなく、独自のプロジェクトに Red Hat Advanced Cluster Security for KubernetesSecuredClusterカスタムリソースをインストールすることを推奨します。
前提条件
- OpenShift Container Platform を使用している場合は、バージョン 4.12 以降をインストールした。
- 保護対象のクラスター (セキュアクラスターと呼ばれます) に RHACS Operator をインストールした。
-
クラスター登録シークレット (CRS) または init バンドルを生成し、推奨される
stackroxnamespace 内のクラスターに適用した。
手順
-
セキュアクラスターの OpenShift Container Platform Web コンソールで、Ecosystem
Installed Operators ページに移動します。 - RHACS Operator をクリックします。
推奨される namespace に Operator をインストールした場合、OpenShift Container Platform はプロジェクトを
rhacs-operatorとしてリストします。注記-
Operator を別の namespace にインストールした場合、OpenShift Container Platform は
rhacs-operatorの代わりにその namespace の名前を表示します。
-
Operator を別の namespace にインストールした場合、OpenShift Container Platform は
- Installed Operators をクリックします。
-
CRS または init バンドルを適用した際に、
stackroxnamespace を作成したはずです。メニューで Project:stackrox が選択されていることを確認して、その namespace にいることを確認します。 - Provided APIs で、Secured Cluster をクリックします。
- Create SecuredCluster をクリックします。
Configure via フィールドで次のいずれかのオプションを選択します。
- Form view: 画面上のフィールドを使用してセキュアクラスターを設定する場合、および他のフィールドを変更する必要がない場合は、このオプションを使用します。
- YAML view: このビューは、YAML ファイルを使用してセキュアクラスターをセットアップするために使用します。YAML ファイルがウィンドウに表示され、その中のフィールドを編集できます。このオプションを選択した場合、ファイルの編集が終了したら、Create をクリックします。
- Form view を使用している場合は、デフォルトの名前を受け入れるか編集して、新しいプロジェクト名を入力します。デフォルト値は stackrox-secured-cluster-services です。
- オプション: クラスターのラベルを追加します。
-
SecuredClusterカスタムリソースの一意の名前を入力します。 Central Endpoint に、Central インスタンスのアドレスを入力します。たとえば、Central が
https://central.example.comで利用できる場合は、Central エンドポイントをcentral.example.comに指定します。-
Central がインストールされている同じクラスターにセキュアクラスターサービスをインストールする場合に のみ、デフォルト値
central.stackrox.svc:443を使用します。 - 複数のクラスターを設定する場合は、デフォルト値を使用しないでください。代わりに、各クラスターの Central Endpoint 値を設定するときにホスト名を使用します。
-
Central がインストールされている同じクラスターにセキュアクラスターサービスをインストールする場合に のみ、デフォルト値
- 残りのフィールドでは、デフォルト値を受け入れるか、必要に応じてカスタム値を設定します。たとえば、カスタム証明書または信頼されていない CA を使用している場合は、TLS の設定が必要になる場合があります。詳細は、「Operator を使用した RHACS のセキュアクラスターサービスオプションの設定」を参照してください。
ファイルアクティビティー監視を使用するには、SFA エージェントを有効にする必要があります。
- SFA を展開します。
- SFA Agent リストから Enabled を選択します。
- Create をクリックします。
少し待った後、SecuredClusters ページに
stackrox-secured-cluster-servicesのステータスが表示されます。次のような状態が表示される場合があります。- Conditions: Deployed, Initialized: セキュアクラスターサービスがインストールされており、セキュアクラスターが Central と通信しています。
- Conditions: Initialized, Irreconcilable: セキュアクラスターが Central と通信していません。RHACS Web ポータルで作成した CRS または init バンドルがセキュアクラスターに適用されていることを確認してください。
次のステップ
- 追加のセキュアクラスター設定を設定します (オプション)。
- インストールの検証