3.3. 他のプラットフォームでの RHACS のセントラルサービスのインストール
Central は、RHACS アプリケーション管理インターフェイスとサービスを含むリソースです。データの永続性、API インタラクション、および RHACS ポータルアクセスを処理します。同じ Central インスタンスを使用して、複数の OpenShift Container Platform または Kubernetes クラスターをセキュリティー保護できます。
次のいずれかの方法を使用して、Central をインストールできます。
- Helm チャートを使用してインストールする
-
roxctl
CLI を使用してインストールします (この方法を使用する必要がある特定のインストールが必要でない限り、この方法は使用しないでください)。
3.3.1. Helm チャートを使用して Central をインストールする
カスタマイズせずに Helm チャートを使用するか、デフォルト値を使用するか、設定パラメーターをさらにカスタマイズして Helm チャートを使用することにより、Central をインストールできます。
3.3.1.1. カスタマイズせずに Helm チャートを使用して Central をインストールする
RHACS は、カスタマイズなしで Red Hat OpenShift クラスターにインストールできます。Helm チャートリポジトリーを追加し、Central-Services
Helm チャートをインストールして、Central と Scanner の一元化されたコンポーネントをインストールする必要があります。
3.3.1.1.1. Helm チャートリポジトリーの追加
手順
RHACS チャートリポジトリーを追加します。
$ helm repo add rhacs https://mirror.openshift.com/pub/rhacs/charts/
Red Hat Advanced Cluster Security for Kubernetes の Helm リポジトリーには、異なるコンポーネントをインストールするための Helm チャートが含まれています。
集中型コンポーネント (Central および Scanner) をインストールするためのセントラルサービス Helm チャート (
central-services
)。注記一元化されたコンポーネントを 1 回だけデプロイし、同じインストールを使用して複数の個別のクラスターをモニターできます。
クラスターごと (Sensor および Admission Controller) およびノードごと (Collector) のコンポーネントをインストールするための Secured Cluster Services Helm チャート (
secured-cluster-services
)。注記モニターする各クラスターにクラスターごとのコンポーネントをデプロイし、モニターするすべてのノードにノードごとのコンポーネントをデプロイします。
検証
次のコマンドを実行して、追加されたチャートリポジトリーを確認します。
$ helm search repo -l rhacs/
3.3.1.1.2. カスタマイズせずにセントラルサービス Helm チャートをインストールする
次の手順を使用して、Central-Services
Helm チャートをインストールし、集中型コンポーネント (Central および Scanner) をデプロイします。
前提条件
-
Red Hat Container Registry へのアクセスがあること。
registry.redhat.io
からイメージをダウンロードする方法は、Red Hat コンテナーレジストリーの認証 を参照してください。
手順
次のコマンドを実行して Central services をインストールし、ルートを使用して Central を公開します。
$ helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password> \ --set central.exposure.route.enabled=true
または、次のコマンドを実行して Central services をインストールし、ロードバランサーを使用して Central を公開します。
$ helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password> \ --set central.exposure.loadBalancer.enabled=true
または、次のコマンドを実行して Central services をインストールし、port forward を使用して Central を公開します。
$ helm install -n stackrox \ --create-namespace stackrox-central-services rhacs/central-services \ --set imagePullSecrets.username=<username> \ --set imagePullSecrets.password=<password>
外部サービスに接続するためにプロキシーが必要なクラスターに Red Hat Cluster Security for Kubernetes をインストールする場合は、
proxyConfig
パラメーターを使用してプロキシー設定を指定する必要があります。以下に例を示します。env: proxyConfig: | url: http://proxy.name:port username: username password: password excludes: - some.domain
-
インストール先の namespace に 1 つ以上のイメージプルシークレットをすでに作成している場合は、ユーザー名とパスワードを使用する代わりに、
--set imagePullSecrets.useExisting="<pull-secret-1;pull-secret-2>"
を使用できます。 イメージプルシークレットは使用しないでください。
-
quay.io/stackrox-io
または認証を必要としないプライベートネットワークのレジストリーからイメージを取得する場合。ユーザー名とパスワードを指定する代わりに、--set imagePullSecrets.allowNone=true
を使用します。 -
インストールする namespace のデフォルトサービスアカウントでイメージプルシークレットをすでに設定している場合。ユーザー名とパスワードを指定する代わりに、
--set imagePullSecrets.useFromDefaultServiceAccount=true
を使用します。
-
インストールコマンドの出力は次のとおりです。
- 自動的に生成された管理者パスワード。
- すべての設定値を保存するための手順。
- Helm が生成する警告。
3.3.1.2. カスタマイズされた Helm チャートを使用して Central をインストールする
helm install
および helm upgrade
コマンドで Helm チャート設定パラメーターを使用することにより、Red Hat OpenShift クラスターに RHACS をカスタマイズしてインストールできます。これらのパラメーターは、--set
オプションを使用するか、YAML 設定ファイルを作成することで指定できます。
以下のファイルを作成して、Red Hat Advanced Cluster Security for Kubernetes をインストールするための Helm チャートを設定します。
-
パブリック設定ファイル
values-public.yaml
: このファイルを使用して、機密性の低いすべての設定オプションを保存します。 -
プライベート設定ファイル
values-private.yaml
: このファイルを使用して、機密性の高いすべての設定オプションを保存します。このファイルを安全に保管してください。
3.3.1.2.1. プライベート設定ファイル
このセクションでは、values-private.yaml
ファイルの設定可能なパラメーターをリストします。これらのパラメーターのデフォルト値はありません。
3.3.1.2.1.1. イメージプルのシークレット
レジストリーからイメージをプルするために必要な認証情報は、以下の要素によって異なります。
カスタムレジストリーを使用している場合、以下のパラメーターを指定する必要があります。
-
imagePullSecrets.username
-
imagePullSecrets.password
-
image.registry
-
カスタムレジストリーへのログインにユーザー名とパスワードを使用しない場合は、以下のいずれかのパラメーターを指定する必要があります。
-
imagePullSecrets.allowNone
-
imagePullSecrets.useExisting
-
imagePullSecrets.useFromDefaultServiceAccount
-
パラメーター | 説明 |
---|---|
| レジストリーへのログインに使用されるアカウントのユーザー名。 |
| レジストリーへのログインに使用されるアカウントのパスワード |
|
カスタムレジストリーを使用していて、クレデンシャルなしでイメージをプルできる場合は、 |
|
値としてのシークレットのコンマ区切りリスト。たとえば、 |
|
十分なスコープのイメージプルシークレットを使用してターゲット namespace にデフォルトのサービスアカウントをすでに設定している場合は、 |
3.3.1.2.1.2. プロキシー設定
外部サービスに接続するためにプロキシーが必要なクラスターに Red Hat Cluster Security for Kubernetes をインストールする場合は、proxyConfig
パラメーターを使用してプロキシー設定を指定する必要があります。以下に例を示します。
env: proxyConfig: | url: http://proxy.name:port username: username password: password excludes: - some.domain
パラメーター | 説明 |
---|---|
| プロキシー設定。 |
3.3.1.2.1.3. Central
Central の設定可能なパラメーター。
新規インストールの場合、次のパラメーターをスキップできます。
-
central.jwtSigner.key
-
central.serviceTLS.cert
-
central.serviceTLS.key
-
central.adminPassword.value
-
central.adminPassword.htpasswd
-
central.db.serviceTLS.cert
-
central.db.serviceTLS.key
-
central.db.password.value
- これらのパラメーターの値を指定しない場合、Helm チャートはそれらの値を自動生成します。
-
これらの値を変更する場合は、
helm upgrade
コマンドを使用し、--set
オプションを使用して値を指定できます。
管理者パスワードの設定には、central.adminPassword.value
または central.adminPassword.htpasswd
のいずれかのみを使用できますが、両方を使用することはできません。
パラメーター | 説明 |
---|---|
| Red Hat Advanced Cluster Security for Kubernetes が認証用の JSON Web トークン (JWT) に署名するために使用する必要がある秘密鍵。 |
| セントラルサービスが Central をデプロイするために使用する必要がある内部証明書。 |
| セントラルサービスが使用する必要がある内部証明書の秘密鍵。 |
| Central が使用する必要のあるユーザー向けの証明書。Red Hat Advanced Cluster Security for Kubernetes は、RHACS ポータルにこの証明書を使用します。
|
| Central が使用する必要のあるユーザー向け証明書の秘密鍵。
|
| Central DB の接続パスワード。 |
| Red Hat Advanced Cluster Security for Kubernetes にログインするための管理者パスワード。 |
| Red Hat Advanced Cluster Security for Kubernetes にログインするための管理者パスワード。このパスワードは、bcrypt を使用してハッシュ形式で保存されます。 |
| Central DB サービスが Central DB をデプロイするために使用する内部証明書。 |
| Central DB サービスが使用する内部証明書の秘密キー。 |
| Central DB への接続に使用されるパスワード。 |
Central.adminPassword.htpasswd
パラメーターを使用している場合は、bcrypt でエンコードされたパスワードハッシュを使用する必要があります。コマンド htpasswd -nB admin
を実行して、パスワードハッシュを生成できます。以下に例を示します。
htpasswd: | admin:<bcrypt-hash>
3.3.1.2.1.4. Scanner
Scanner の設定可能なパラメーター。
新規インストールの場合、次のパラメーターをスキップでき、Helm チャートがそれらの値を自動生成します。それ以外の場合、新しいバージョンにアップグレードする場合は、以下のパラメーターの値を指定してください。
-
scanner.dbPassword.value
-
scanner.serviceTLS.cert
-
scanner.serviceTLS.key
-
scanner.dbServiceTLS.cert
-
scanner.dbServiceTLS.key
パラメーター | 説明 |
---|---|
| Scanner データベースでの認証に使用するパスワード。Red Hat Advanced Cluster Security for Kubernetes はその値を内部で自動的に作成して使用するため、このパラメーターは変更しないでください。 |
| Scanner サービスが Scanner のデプロイに使用する必要がある内部証明書。 |
| Scanner サービスが使用する必要がある内部証明書の秘密鍵。 |
| Scanner-db サービスが Scanner データベースをデプロイするために使用する必要がある内部証明書。 |
| Scanner-db サービスが使用する必要がある内部証明書の秘密鍵。 |
3.3.1.2.2. パブリック設定ファイル
このセクションでは、values-public.yaml
ファイルの設定可能なパラメーターをリストします。
3.3.1.2.2.1. イメージプルのシークレット
イメージプルシークレットは、レジストリーからイメージをプルするために必要なクレデンシャルです。
パラメーター | 説明 |
---|---|
|
カスタムレジストリーを使用していて、クレデンシャルなしでイメージをプルできる場合は、 |
|
値としてのシークレットのコンマ区切りリスト。たとえば、 |
|
十分なスコープのイメージプルシークレットを使用してターゲット namespace にデフォルトのサービスアカウントをすでに設定している場合は、 |
3.3.1.2.2.2. Image
Image は、Helm チャートが central.image
、scanner.image
、および scanner.dbImage
パラメーターのイメージを解決するために使用するメインレジストリーをセットアップするための設定を宣言します。
パラメーター | 説明 |
---|---|
|
イメージレジストリーのアドレス。 |
3.3.1.2.2.3. 環境変数
Red Hat Advanced Cluster Security for Kubernetes は、クラスター環境を自動的に検出し、env.openshift
、env.istio
、および env.platform
の値を設定します。クラスター環境の自動検出をオーバーライドするには、これらの値のみを設定してください。
パラメーター | 説明 |
---|---|
|
OpenShift Container Platform クラスターにインストールし、クラスター環境の自動検出をオーバーライドする場合は、 |
|
|
|
Red Hat Advanced Cluster Security for Kubernetes をインストールするプラットフォーム。その値を |
|
オフラインモードで Red Hat Advanced Cluster Security for Kubernetes を使用するには、 |
3.3.1.2.2.4. 追加の信頼された認証局
Red Hat Advanced Cluster Security for Kubernetes は、信頼するシステムルート証明書を自動的に参照します。Central または Scanner が、組織内の機関またはグローバルに信頼されているパートナー組織によって発行された証明書を使用するサービスに到達する必要がある場合、次のパラメーターを使用して信頼するルート認証局を指定することにより、これらのサービスの信頼を追加できます。
パラメーター | 説明 |
---|---|
| 信頼するルート認証局の PEM エンコード証明書を指定します。 |
3.3.1.2.2.5. Central
Central の設定可能なパラメーター。
-
hostPath
またはPersistentVolumeClaim
のいずれかとして永続ストレージオプションを指定する必要があります。 -
外部アクセス用の Central のデプロイメントを公開するため。1 つのパラメーター、
central.exposure.loadBalancer
、central.exposure.nodePort
、またはcentral.exposure.route
のいずれかを指定する必要があります。これらのパラメーターに値を指定しない場合は、手動で Central を公開するか、ポート転送を使用して Central にアクセスする必要があります。
次の表には、外部 PostgreSQL データベース (テクノロジープレビュー) の設定が含まれています。
外部 PostgreSQL サポートはテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
パラメーター | 説明 |
---|---|
| Central のエンドポイント設定オプションです。 |
| ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Central の taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。 |
| ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Central の taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。 |
|
ポート番号 |
|
Central イメージのグローバル |
|
デフォルトの Central イメージ名 ( |
|
Central イメージのデフォルトタグをオーバーライドするカスタムイメージタグです。新規インストール時に独自のイメージタグを指定した場合は、 |
|
Central イメージのレジストリーアドレス、イメージ名、およびイメージタグを含む完全なリファレンスです。このパラメーターの値を設定すると、 |
| Central がデフォルト値をオーバーライドするためのメモリーリクエストです。 |
| Central がデフォルト値をオーバーライドするための CPU リクエストです。 |
| Central がデフォルト値をオーバーライドためのメモリー制限です。 |
| Central がデフォルト値をオーバーライドための CPU 制限です。 |
| RHACS がデータベースボリュームを作成するノード上のパス。Red Hat はこのオプションの使用を推奨していません。 |
| 使用している永続ボリューム要求 (PVC) の名前です。 |
|
新しい PVC を作成するには |
| 指定された要求による管理対象の永続ボリュームのサイズ (GiB 単位) です。 |
|
ロードバランサーを使用して Central を公開するには、 |
| Central を公開するポート番号です。デフォルトのポート番号は 443 です。 |
|
|
| Central を公開するポート番号です。このパラメーターをスキップすると、OpenShift Container Platform は自動的にポート番号を割り当てます。Red Hat では、ノードポートを使用して Red Hat Advanced Cluster Security for Kubernetes を公開する場合、ポート番号を指定しないことを推奨しています。 |
|
ルートを使用して Central を公開するには、 |
|
(テクノロジープレビュー) Central DB をデプロイメントせず、外部データベースを使用することを指定するには、 |
|
(テクノロジープレビュー) Central がデータベースへの接続に使用する接続文字列。これは、
|
| 確立されるデータベースへの接続の最小数。 |
| 確立されるデータベースへの接続の最大数。 |
| 単一のクエリーまたはトランザクションがデータベースに対してアクティブにできるミリ秒数。 |
| PostgreSQL ドキュメントの「追加リソース」で説明されているように、Central DB に使用される postgresql.conf。 |
| PostgreSQL ドキュメントの「追加リソース」で説明されているように、Central DB に使用される pg_hba.conf。 |
|
ノードセレクターのラベルを |
|
Central DB イメージのグローバル |
|
デフォルトの Central DB イメージ名 ( |
|
Central DB イメージのデフォルトのタグをオーバーライドするカスタムイメージタグ。新規インストール時に独自のイメージタグを指定した場合は、 |
|
Central DB イメージのレジストリーアドレス、イメージ名、イメージタグを含む完全なリファレンス。このパラメーターの値を設定すると、 |
| Central DB がデフォルト値をオーバーライドするためのメモリー要求。 |
| Central DB がデフォルト値をオーバーライドするための CPU 要求。 |
| Central DB がデフォルト値をオーバーライドするためのメモリー制限。 |
| Central DB がデフォルト値をオーバーライドするための CPU 制限。 |
| RHACS がデータベースボリュームを作成するノード上のパス。Red Hat はこのオプションの使用を推奨していません。 |
| 使用している永続ボリューム要求 (PVC) の名前です。 |
|
|
| 指定された要求による管理対象の永続ボリュームのサイズ (GiB 単位) です。 |
3.3.1.2.2.6. Scanner
Scanner の設定可能なパラメーター。
パラメーター | 説明 |
---|---|
|
Scanner を使用せずに Red Hat Advanced Cluster Security for Kubernetes をインストールする場合は |
|
|
|
Scanner のデプロイメント用に作成するレプリカの数です。 |
|
Scanner のログレベルを設定します。Red Hat では、ログレベルのデフォルト値 ( |
|
ノードセレクターラベルを |
| ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner の taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。 |
|
|
| 自動スケーリングのレプリカの最小数です。 |
| 自動スケーリングのレプリカの最大数です。 |
| Scanner がデフォルト値をオーバーライドするためのメモリーリクエストです。 |
| Scanner がデフォルト値をオーバーライドするための CPU リクエストです。 |
| Scanner がデフォルト値をオーバーライドするためのメモリー制限です。 |
| Scanner がデフォルト値をオーバーライドするための CPU 制限です。 |
| Scanner データベースのデプロイメントがデフォルト値をオーバーライドするためのメモリーリクエストです。 |
| Scanner データベースのデプロイメントがデフォルト値をオーバーライドするための CPU リクエストです。 |
| Scanner データベースのデプロイメントがデフォルト値をオーバーライドするためのメモリー制限です。 |
| Scanner データベースのデプロイメントがデフォルト値をオーバーライドするための CPU 制限です。 |
| Scanner イメージのカスタムレジストリーです。 |
|
デフォルトの Scanner イメージ名 ( |
| Scanner DB イメージのカスタムレジストリーです。 |
|
デフォルトの Scanner DB イメージ名 ( |
|
ノードセレクターラベルを |
| ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner DB の taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。 |
3.3.1.2.2.7. カスタマイズ
これらのパラメーターを使用して、Red Hat Advanced Cluster Security for Kubernetes が作成するすべてのオブジェクトの追加の属性を指定します。
パラメーター | 説明 |
---|---|
| すべてのオブジェクトにアタッチするカスタムラベルです。 |
| すべてのオブジェクトにアタッチするカスタムアノテーションです。 |
| すべてのデプロイメントにアタッチするカスタムラベルです。 |
| すべてのデプロイメントにアタッチするカスタムアノテーションです。 |
| すべてのオブジェクトのすべてのコンテナーのカスタム環境変数です。 |
| Central が作成するすべてのオブジェクトにアタッチするカスタムラベルです。 |
| Central が作成するすべてのオブジェクトにアタッチするカスタムアノテーションです。 |
| すべての Central のデプロイメントにアタッチするカスタムラベルです。 |
| すべての Central のデプロイメントにアタッチするカスタムアノテーションです。 |
| すべての Central コンテナーのカスタム環境変数です。 |
| Scanner が作成するすべてのオブジェクトにアタッチするカスタムラベルです。 |
| Scanner が作成するすべてのオブジェクトにアタッチするカスタムアノテーションです。 |
| すべての Scanner のデプロイメントにアタッチするカスタムラベルです。 |
| すべての Scanner のデプロイメントにアタッチするカスタムアノテーションです。 |
| すべての Scanner コンテナーのカスタム環境変数です。 |
| Scanner DB が作成するすべてのオブジェクトにアタッチするカスタムラベルです。 |
| Scanner DB が作成するすべてのオブジェクトにアタッチするカスタムアノテーションです。 |
| すべての Scanner DB のデプロイメントにアタッチするカスタムラベルです。 |
| すべての Scanner DB のデプロイメントにアタッチするカスタムアノテーションです。 |
| すべての Scanner DB コンテナーのカスタム環境変数です。 |
以下のように使用することもできます。
-
すべてのオブジェクトのラベルとアノテーションを指定するための
customize.other.service/*.labels
およびcustomize.other.service/*.annotations
パラメーターです。 -
または、特定のサービス名を指定します。たとえば、
customize.other.service/central-loadbalancer.labels
とcustomize.other.service/central-loadbalancer.annotations
をパラメーターとして指定し、それらの値を設定します。
3.3.1.2.2.8. 高度なカスタマイズ
このセクションで指定されているパラメーターは、情報提供のみを目的としています。Red Hat は、namespace とリリース名が変更された Red Hat Advanced Cluster Security for Kubernetes インスタンスをサポートしていません。
パラメーター | 説明 |
---|---|
|
|
|
|
3.3.1.2.3. セントラルサービス Helm チャートのインストール
values-public.yaml
ファイルと values-private.yaml
ファイルを設定した後、central-services
Helm チャートをインストールして、集中型コンポーネント (Central と Scanner) をデプロイします。
手順
以下のコマンドを実行します。
$ helm install -n stackrox --create-namespace \ stackrox-central-services rhacs/central-services \ -f <path_to_values_public.yaml> -f <path_to_values_private.yaml> 1
- 1
-f
オプションを使用して、YAML 設定ファイルのパスを指定します。
3.3.1.3. central-services Helm チャートをデプロイした後の設定オプションの変更
central-services
Helm チャートをデプロイした後、任意の設定オプションに変更を加えることができます。
手順
-
values-public.yaml
およびvalues-private.yaml
設定ファイルを新しい値で更新します。 helm upgrade
コマンドを実行し、-f
オプションを使用して設定ファイルを指定します。$ helm upgrade -n stackrox \ stackrox-central-services rhacs/central-services \ -f <path_to_values_public.yaml> \ -f <path_to_values_private.yaml>
注記--set
または--set-file
パラメーターを使用して設定値を指定することもできます。ただし、これらのオプションは保存されないため、変更を加えるたびにすべてのオプションを手動で再度指定する必要があります。
3.3.2. roxctl CLI を使用して Central をインストールする
実稼働環境では、Red Hat は Operator または Helm チャートを使用して RHACS をインストールすることを推奨しています。この方法を使用する必要がある特定のインストールがない限り、roxctl
のインストール手法を使用しないでください。
3.3.2.1. roxctl CLI のインストール
Red Hat Advanced Cluster Security for Kubernetes をインストールするには、バイナリーをダウンロードして roxctl
CLI をインストールする必要があります。roxctl
は、Linux、Windows、または macOS にインストールできます。
3.3.2.1.1. Linux への roxctl CLI のインストール
次の手順を使用して、Linux に roxctl
CLI バイナリーをインストールできます。
手順
roxctl
CLI の最新バージョンをダウンロードします。$ curl -O https://mirror.openshift.com/pub/rhacs/assets/4.0.5/bin/Linux/roxctl
roxctl
バイナリーを実行可能にします。$ chmod +x roxctl
PATH
上にあるディレクトリーにroxctl
バイナリーを配置します。PATH
を確認するには、以下のコマンドを実行します。$ echo $PATH
検証
インストールした
roxctl
のバージョンを確認します。$ roxctl version
3.3.2.1.2. macOS への roxctl CLI のインストール
次の手順を使用して、roxctl
CLI バイナリーを macOS にインストールできます。
手順
roxctl
CLI の最新バージョンをダウンロードします。$ curl -O https://mirror.openshift.com/pub/rhacs/assets/4.0.5/bin/Darwin/roxctl
バイナリーからすべての拡張属性を削除します。
$ xattr -c roxctl
roxctl
バイナリーを実行可能にします。$ chmod +x roxctl
PATH
上にあるディレクトリーにroxctl
バイナリーを配置します。PATH
を確認するには、以下のコマンドを実行します。$ echo $PATH
検証
インストールした
roxctl
のバージョンを確認します。$ roxctl version
3.3.2.1.3. Windows への roxctl CLI のインストール
次の手順を使用して、roxctl
CLI バイナリーを Windows にインストールできます。
手順
roxctl
CLI の最新バージョンをダウンロードします。$ curl -O https://mirror.openshift.com/pub/rhacs/assets/4.0.5/bin/Windows/roxctl.exe
検証
インストールした
roxctl
のバージョンを確認します。$ roxctl version
3.3.2.2. 対話型インストーラーの使用
対話型インストーラーを使用して、お使いの環境に必要なシークレット、デプロイメント設定、およびデプロイメントスクリプトを生成します。
手順
対話型インストールコマンドを実行します。
$ roxctl central generate interactive
重要roxctl
CLI を使用して Red Hat Advanced Cluster Security for Kubernetes をインストールすると、下位互換性のためにデフォルトで PodSecurityPolicy (PSP) オブジェクトが作成されます。RHACS を Kubernetes バージョン 1.25 以降または OpenShift Container Platform バージョン 4.12 以降にインストールする場合、PSP オブジェクトの作成を無効にする必要があります。これを行うには、roxctl central generate
コマンドとroxctl sensor generate
コマンドで--enable-pod-security-policies
オプションをfalse
に指定します。Enter を押してプロンプトのデフォルト値を受け入れるか、必要に応じてカスタム値を入力します。
Enter path to the backup bundle from which to restore keys and certificates (optional): Enter PEM cert bundle file (optional): 1 Enter administrator password (default: autogenerated): Enter orchestrator (k8s, openshift): openshift Enter the directory to output the deployment bundle to (default: "central-bundle"): Enter the OpenShift major version (3 or 4) to deploy on (default: "0"): 4 Enter Istio version when deploying into an Istio-enabled cluster (leave empty when not running Istio) (optional): Enter the method of exposing Central (route, lb, np, none) (default: "none"): route 2 Enter main image to use (default: "stackrox.io/main:3.0.61.1"): Enter whether to run StackRox in offline mode, which avoids reaching out to the Internet (default: "false"): Enter whether to enable telemetry (default: "true"): Enter the deployment tool to use (kubectl, helm, helm-values) (default: "kubectl"): Enter Scanner DB image to use (default: "stackrox.io/scanner-db:2.15.2"): Enter Scanner image to use (default: "stackrox.io/scanner:2.15.2"): Enter Central volume type (hostpath, pvc): pvc 3 Enter external volume name (default: "stackrox-db"): Enter external volume size in Gi (default: "100"): Enter storage class name (optional if you have a default StorageClass configured):
- 1
- カスタム TLS 証明書を追加する場合は、PEM でエンコードされた証明書のファイルパスを指定します。カスタム証明書を指定すると、対話型インストーラーは、使用しているカスタム証明書の PEM 秘密鍵を提供するように要求します。
- 2
- RHACS ポータルを使用するには、ルート、ロードバランサー、またはノードポートを使用して Central を公開する必要があります。
- 3
- hostPath ボリュームを使用して OpenShift Container Platform に Red Hat Cluster Security for Kubernetes をインストールする場合は、SELinux ポリシーを変更する必要があります。
警告OpenShift Container Platform で、hostPath ボリュームを使用するには、SELinux ポリシーを変更して、ホストとコンテナーが共有するディレクトリーへのアクセスを許可する必要があります。これは、SELinux がデフォルトでディレクトリー共有をブロックしているためです。SELinux ポリシーを変更するには、次のコマンドを実行します。
$ sudo chcon -Rt svirt_sandbox_file_t <full_volume_path>
ただし、Red Hat は SELinux ポリシーの変更を推奨していません。代わりに、OpenShift Container Platform にインストールするときに PVC を使用してください。
完了すると、インストーラーは central-bundle という名前のフォルダーを作成します。このフォルダーには、Central をデプロイするために必要な YAML マニフェストとスクリプトが含まれています。さらに、信頼できる認証局である Central と Scanner をデプロイするために実行する必要があるスクリプトの画面上の説明と、RHACS ポータルにログインするための認証手順、プロンプトに答える際にパスワードを入力しなかった場合は自動生成されたパスワードも表示されます。
3.3.2.3. Central インストールスクリプトの実行
対話型インストーラーを実行したら、setup.sh
スクリプトを実行して Central をインストールできます。
手順
setup.sh
スクリプトを実行して、イメージレジストリーアクセスを設定します。$ ./central-bundle/central/scripts/setup.sh
必要なリソースを作成します。
$ oc create -R -f central-bundle/central
デプロイメントの進行状況を確認します。
$ oc get pod -n stackrox -w
Central の実行後、RHACS ポータルの IP アドレスを見つけて、ブラウザーで開きます。プロンプトに応答するときに選択した公開方法に応じて、次のいずれかの方法を使用して IP アドレスを取得します。
公開方法 コマンド アドレス 例 ルート
oc -n stackrox get route central
出力の
HOST/PORT
列の下のアドレスhttps://central-stackrox.example.route
ノードポート
oc get node -owide && oc -n stackrox get svc central-loadbalancer
サービス用に表示されたポート上の任意のノードの IP またはホスト名
https://198.51.100.0:31489
ロードバランサー
oc -n stackrox get svc central-loadbalancer
EXTERNAL-IP、またはポート 443 でサービスに表示されるホスト名
https://192.0.2.0
なし
central-bundle/central/scripts/port-forward.sh 8443
https://localhost:8443
https://localhost:8443
対話型インストール中に自動生成されたパスワードを選択した場合は、次のコマンドを実行して、Central にログインするためのパスワードを確認できます。
$ cat central-bundle/password