RHACS Cloud Service


Red Hat Advanced Cluster Security for Kubernetes 4.3

RHACS Cloud Service について

Red Hat OpenShift Documentation Team

概要

RHACS Cloud Service を理解するためのガイダンス。

第1章 RHACS Cloud Service のサービス説明

1.1. RHACS の概要

Red Hat Advanced Cluster Security for Kubernetes (RHACS) は、クラウドネイティブアプリケーションの構築、デプロイ、実行をより安全に行うのに役立つ、エンタープライズ対応の Kubernetes ネイティブコンテナーセキュリティーソリューションです。

Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) は、Kubernetes ネイティブのセキュリティーをサービスとして提供します。RHACS Cloud Service を使用して、Red Hat は Central サービスを維持、アップグレード、管理します。

Central サービスには、ユーザーインターフェイス (UI)、データストレージ、RHACS アプリケーションプログラミングインターフェイス (API)、およびイメージスキャン機能が含まれます。Central サービスは Red Hat Hybrid Cloud Console を通じてデプロイします。新しい ACS インスタンスを作成すると、Red Hat は RHACS 用の個別のコントロールプレーンを作成します。

RHACS Cloud Service を使用すると、Central インスタンスと通信する自己管理型クラスターを保護できます。保護されたクラスター (セキュアなクラスターと呼ばれます) は、Red Hat ではなく、お客様によって管理されます。セキュアなクラスターサービスには、オプションの脆弱性スキャンサービス、アドミッションコントロールサービス、実行時の監視とコンプライアンスに使用されるデータ収集サービスが含まれます。セキュアクラスターサービスは、保護対象の OpenShift または Kubernetes クラスターにインストールします。

1.2. 請求書

お客様は、Amazon Web Services (AWS) マーケットプレイスで RHACS Cloud Service サブスクリプションを購入できます。サービスコストは、保護対象のコア、またはセキュアクラスターに属するノードの vCPU ごとに時間単位で課金されます。

例1.1 サブスクリプションコストの例

8 つの vCPU を持つ 5 つの同一ノードを備えた 2 つのセキュアクラスター (Amazon EC2 m7g.2xlarge など) への接続を確立した場合、保護対象のコアの合計数は 80 (2 x 5 x 8 = 80) になります。

1.3. セキュリティーおよびコンプライアンス

Central インスタンス内のすべての Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) データは、転送中および保存中に暗号化されます。データは、定期的にスケジュールされたバックアップとともに、完全なレプリケーションと高可用性を備えたセキュアなストレージに保存されます。RHACS Cloud Service は、最適なパフォーマンスとデータ常駐要件を満たす機能を保証するクラウドデータセンターを通じて利用できます。

1.3.1. 認証プロバイダー

Red Hat Hybrid Cloud Console を使用して Central インスタンスを作成すると、クラスター管理者の認証がプロセスの一部として設定されます。お客様は、統合ソリューションの一部として Central インスタンスへのすべてのアクセスを管理する必要があります。使用可能な認証方法の詳細は、認証プロバイダーについて を参照してください。

RHACS Cloud Service のデフォルトの ID プロバイダーは Red Hat Single Sign-On (SSO) です。Red Hat SSO を使用した認証の詳細は、ACS コンソールへのデフォルトのアクセス を参照してください。

1.3.2. 規制コンプライアンス

最新のコンプライアンス情報については、OpenShift Dedicated のプロセスとセキュリティーについて を参照してください。

1.4. メトリクスとロギング

1.4.1. サービスメトリクス

サービスメトリクスは内部専用です。Red Hat は、合意されたレベルでサービスを提供および維持します。サービスメトリックには、承認された Red Hat 担当者のみがアクセスできます。詳細は、PRODUCT APPENDIX 4 RED HAT ONLINE SERVICES を参照してください。

1.4.2. カスタマーメトリクス

コアの使用量と容量のメトリクスを Subscription Watch または サブスクリプションページ から利用できます。

1.4.3. サービスロギング

Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) のすべてのコンポーネントのシステムログは内部にあり、Red Hat 担当者のみが利用できます。Red Hat は、コンポーネントログへのユーザーアクセスを提供しません。詳細は、PRODUCT APPENDIX 4 RED HAT ONLINE SERVICES を参照してください。

1.5. スケーラビリティとサービスレベル

Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) では、保護できるコアまたはクラスターの数に制限が設定されています。この制限は、セキュアなクラスターで使用可能なリソースとユーザービリティの制限に基づいています。

1.5.1. サービスレベルの目標と合意

サービスレベル目標 (SLO) およびサービスレベルアグリーメント (SLA) の詳細については、製品付録 4 RED HAT オンラインサービス を参照してください。

1.6. 更新およびアップグレード

Red Hat は、サービスに影響を与える更新やアップグレードを行う前に、お客様に通知する商業的に合理的な努力を行っています。Central インスタンスに対するサービス更新の必要性とそのタイミングに関する決定は、Red Hat が単独で責任を負います。

Central サービスの更新が発生するタイミングを制御できません。詳細については、製品付録 4 RED HAT オンラインサービス を参照してください。Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) のバージョンへのアップグレードは、サービス更新の一部とみなされます。

RHACS Cloud Service との互換性を維持するために必要な RHACS Secured Cluster サービスのアップグレードを適時に実施するのはお客様の責任です。

Red Hat では、RHACS Cloud Service に接続されている Secured Cluster の自動アップグレードを有効にすることを推奨しています。

アップグレードバージョンの詳細は、Red Hat Advanced Cluster Security for Kubernetes サポートマトリックス を参照してください。

1.7. 利用可能

可用性と災害回避は、セキュリティープラットフォームにとって非常に重要な側面です。Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) は、複数のレベルで障害に対する多数の保護を提供します。クラウドプロバイダーの障害の可能性を考慮して、Red Hat は複数のアベイラビリティゾーンを確立しました。

1.7.1. バックアップおよび災害復旧

すべての RHACS Cloud Service クラスターは、データベースバックアップを使用してバックアップされます。これは、Central データベースに保存されているカスタマーデータにも当てはまります。

すべてのスナップショットは、適切なクラウドプロバイダーのスナップショット API を使用して作成され、暗号化されてからセキュアなオブジェクトストレージ (Amazon Web Services (AWS) の場合は S3 バケット) にアップロードされます。

  • Red Hat は目標復旧ポイント (RPO) と目標復旧時間 (RTO) を約束しません。詳細については、製品付録 4 RED HAT オンラインサービス を参照してください。
  • Site Reliability Engineering は、予防措置としてのみバックアップを実行します。バックアップはクラスターと同じリージョンに保存されます。
  • Kubernetes のベストプラクティスに沿ったワークロードとともに、マルチアベイラビリティーゾーンのセキュアクラスターをデプロイして、リージョン内で高可用性を確保することを推奨します。

1.7.2. サポート

RHACS Cloud Service には Red Hat Standard および Premium サポートが含まれており、Red Hat Customer Portal を使用してアクセスできます。Red Hat Advanced Cluster Security Cloud Service 製品のサポートチケットをオープンできます。

Red Hat サポートは、可用性が制限されている顧客から送信されたサポートチケットに対応し、Red Hat サイト信頼性エンジニア (SRE) が Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) の健全性をプロアクティブに監視します。

さらに、Red Hat Business Unit Solution Architect (BU SA) は、顧客専門家、Red Hat サポート、Red Hat SRE の間の実践的な技術連絡役として機能し、可用性が限られている顧客をサポートします。

1.7.3. サービスの削除

Red Hat Hybrid Cloud Console からデフォルトの削除操作を使用して RHACS Cloud Service を削除できます。RHACS Cloud Service Central インスタンスを削除すると、すべての RHACS コンポーネントが自動的に削除されます。削除すると、元に戻すことはできません。

1.8. 価格

Red Hat は、可用性が制限されている間、Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) のサブスクリプション料金を請求します。詳細については、製品付録 4 RED HAT オンラインサービス を参照してください。

1.9. サービスレベルアグリーメント

Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) に対して提供されるサービスレベル契約 (SLA) の詳細については、製品付録 4 RED HAT オンラインサービス を参照してください。

1.10. タイムライン

限られた可用性

Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) の実稼働サポートは、限られた数のお客様に提供されます。詳細については、製品付録 4 RED HAT オンラインサービス を参照してください。

一般公開 (GA)

RHACS Cloud Service の実稼働サポートは、RHACS Cloud Service のすべてのお客様に提供されます。詳細は、PRODUCT APPENDIX 4 RED HAT ONLINE SERVICES を参照してください。

第2章 RHACS Cloud Service の概要

Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) は、Red Hat OpenShift および Kubernetes クラスターにセキュリティーサービスを提供します。セキュアなクラスターでサポートされるプラットフォームの詳細は、Red Hat Advanced Cluster Security for Kubernetes Support Matrix を参照してください。

前提条件

  • Red Hat Hybrid Cloud Console から Advanced Cluster Security メニューオプションにアクセスできることを確認する。

    注記

    RHACS Cloud Service コンソールにアクセスするには、Red Hat Single Sign-On (SSO) 認証情報、または別の ID プロバイダーが設定されている場合はその認証情報が必要です。ACS コンソールへのデフォルトのアクセス を参照してください。

2.1. インストール手順の概要

次のセクションでは、インストール手順の概要と関連ドキュメントへのリンクを示します。

2.1.1. Red Hat OpenShift クラスターの保護

Operator を使用して Red Hat OpenShift クラスターを保護するには、次の手順を実行します。

  1. セキュリティー保護するクラスターが 要件 を満たしていることを確認します。
  2. Red Hat Hybrid Cloud Console で、ACS インスタンス を作成 します。
  3. セキュリティー保護する各 Red Hat OpenShift クラスターで、stackrox という名前のプロジェクトを作成 します。このプロジェクトには、RHACS Cloud Service のセキュアなクラスターのリソースが含まれます。
  4. ACS コンソールで、init バンドルを作成 します。init バンドルには、RHACS Cloud Service のセキュアなクラスターと ACS コンソール間の通信を可能にするシークレットが含まれています。
  5. 各 Red Hat OpenShift クラスターで、init バンドルを使用し、リソースを作成して、init バンドルを適用 します。
  6. 各 Red Hat OpenShift クラスターで、RHACS Operator をインストール します。
  7. 各 Red Hat OpenShift クラスターで、Operator を使用して セキュアなクラスターリソースを stackrox プロジェクトにインストール します。
  8. セキュアなクラスターが ACS インスタンスと通信できることを確認して、インストールを検証 します。

Helm チャートまたは roxctl CLI を使用して Red Hat OpenShift クラスターを保護するには、次の手順を実行します。

  1. セキュリティー保護するクラスターが 要件 を満たしていることを確認します。
  2. Red Hat Hybrid Cloud Console で、ACS インスタンス を作成 します。
  3. セキュリティー保護する各 Red Hat OpenShift クラスターで、stackrox という名前のプロジェクトを作成 します。このプロジェクトには、RHACS Cloud Service のセキュアなクラスターのリソースが含まれます。
  4. ACS コンソールで、init バンドルを作成 します。init バンドルには、RHACS Cloud Service のセキュアなクラスターと ACS コンソール間の通信を可能にするシークレットが含まれています。
  5. 各 Red Hat OpenShift クラスターで、init バンドルを使用し、リソースを作成して、init バンドルを適用 します。
  6. 各 Red Hat OpenShift クラスターで、Helm チャート または roxctl CLI を使用して、セキュアなクラスターリソースを stackrox プロジェクトにインストールします。
  7. セキュアなクラスターが ACS インスタンスと通信できることを確認して、インストールを検証 します。

2.1.2. Kubernetes クラスターの保護

Kubernetes クラスターを保護するには、次の手順を実行します。

  1. セキュリティー保護するクラスターが 要件 を満たしていることを確認します。
  2. Red Hat Hybrid Cloud Console で、ACS インスタンス を作成 します。
  3. ACS コンソールで、init バンドルを作成 します。init バンドルには、RHACS Cloud Service のセキュアクラスターと ACS コンソール間の通信を可能にするシークレットが含まれています。
  4. 各 Kubernetes クラスターで、init バンドルを使用し、リソースを作成して、init バンドルを適用 します。
  5. 各 Kubernetes クラスターで、Helm チャートまたは roxctl CLI を使用して、セキュアクラスターのリソースをインストール します。
  6. セキュアクラスターが ACS インスタンスと通信できることを確認して、インストールを検証 します。

2.2. ACS コンソールへのデフォルトのアクセス

デフォルトでは、ユーザーが使用できる認証メカニズムは、Red Hat Single Sign-On (SSO) を使用した認証です。Red Hat SSO 認証プロバイダーを削除または変更することはできません。ただし、最小アクセスロールを変更してルールを追加したり、別の ID プロバイダーを追加したりすることはできます。

注記

ACS で認証プロバイダーがどのように機能するかについては、認証プロバイダーについて を参照してください。

sso.redhat.com の専用 OIDC クライアントが ACS コンソールごとに作成されます。すべての OIDC クライアントは同じ sso.redhat.com レルムを共有します。sso.redhat.com によって発行されたトークンからのクレームは、次のように ACS 発行のトークンにマッピングされます。

  • realm_access.roles から groups
  • org_id から rh_org_id
  • is_org_admin から rh_is_org_admin
  • sub から userid

組み込みの Red Hat SSO 認証プロバイダーには、RHACS Cloud Service インスタンスを作成したユーザーのアカウントに割り当てられた組織 ID に設定された必須属性 rh_org_id があります。これは、ユーザーが属している組織アカウントの ID です。これは、ユーザーが所属し、所有されているテナントと考えることができます。同じ組織アカウントを持つユーザーのみが、Red Hat SSO 認証プロバイダーを使用して ACS コンソールにアクセスできます。

注記

ACS コンソールへのアクセスをさらに制御するには、Red Hat SSO 認証プロバイダーに依存するのではなく、別の ID プロバイダーを設定します。詳細は、認証プロバイダーについて を参照してください。他の認証プロバイダーをログインページの最初の認証オプションとして設定するには、その名前を辞書編集的に Red Hat SSO より小さくする必要があります。

最小アクセスロールは None に設定されます。このフィールドに別の値を割り当てると、同じ組織アカウントを持つすべてのユーザーが RHACS Cloud Service インスタンスにアクセスできるようになります。

組み込みの Red Hat SSO 認証プロバイダーで設定されるその他のルールには次のものがあります。

  • useridAdmin にマッピングするルール
  • 組織の管理者を Admin にマッピングするルール

さらにルールを追加して、同じ組織アカウントを持つ他のユーザーに ACS コンソールへのアクセスを許可できます。たとえば、email をキーとして使用できます。

第3章 Red Hat Advanced Cluster Security Cloud Service のデフォルトのリソース要件

3.1. 一般要件

RHACS には、インストールする前に満たす必要のあるシステム要件がいくつかあります。

警告

次の場所に Red Hat Cluster Security for Kubernetes をインストールしないでください。

  • Amazon Elastic File System (Amazon EFS)。代わりに、デフォルトの gp2 ボリュームタイプで Amazon Elastic Block Store (Amazon EBS) を使用してください。
  • Streaming SIMD Extensions (SSE) 4.2 命令セットを備えていない古い CPU。たとえば、Sandy Bridge より古い Intel プロセッサー、および Bulldozer より古い AMD プロセッサー。(これらのプロセッサーは 2011 年にリリースされました。)

Red Hat Advanced Cluster Security for Kubernetes をインストールするには、以下のシステムのいずれかが必要です。

  • OpenShift Container Platform バージョン 4.11 以降、および Red Hat Enterprise Linux CoreOS (RHCOS) または Red Hat Enterprise Linux (RHEL) のサポートされているオペレーティングシステムを搭載したクラスターノード。
  • サポートされているマネージド Kubernetes プラットフォーム、および Amazon Linux、CentOS、Google の Container-Optimized OS、Red Hat Enterprise Linux CoreOS (RHCOS)、Debian、Red Hat Enterprise Linux (RHEL)、または Ubuntu のサポートされているオペレーティングシステムを搭載したクラスターノード。

    詳細は、Red Hat Advanced Cluster Security for Kubernetes Support Policy を参照してください。

クラスターノードの最小要件:

  • アーキテクチャー: amd64ppc64le、または s390x

    注記

    RHACS 4.3 以降、Central クラスターサービスとセキュアクラスターサービスの両方が、IBM Power (ppc64le)、IBM Z (s390x)、および IBM® LinuxONE (s390x) クラスターでサポートされます。

  • プロセッサー: 3 CPU コア
  • メモリー: 6 GiB メモリー

    注記

    各コンポーネントのデフォルトのメモリー要件と CPU 要件を確認し、ノードサイズがそれらをサポートできることを確認してください。

永続ボリューム要求 (PVC) を使用した永続ストレージ:

  • 最高のパフォーマンスを得るには、ソリッドステートドライブ (SSD) を使用してください。ただし、SSD を使用できない場合は、別のタイプのストレージを使用できます。

    重要

    Red Hat Advanced Cluster Security for Kubernetes で Ceph FS ストレージを使用しないでください。Red Hat は、Red Hat Advanced Cluster Security for Kubernetes に RBD ブロックモード PVC を使用することを推奨します。

Helm チャートを使用してインストールするには:

  • Helm チャートを使用して Red Hat Advanced Cluster Security for Kubernetes をインストールまたは設定する場合は、Helm コマンドラインインターフェイス (CLI) v3.2 以降が必要です。helm version コマンドを使用して、インストールされている Helm のバージョンを確認します。
  • Red Hat Container Registry へのアクセスがあること。registry.redhat.io からイメージをダウンロードする方法は、Red Hat Container Registry の認証 を参照してください。

3.2. セキュアクラスターサービス

セキュアクラスターサービスには、次のコンポーネントが含まれています。

  • Sensor
  • Admission コントローラー
  • Collector

3.2.1. Sensor

Sensor は、Kubernetes および OpenShift Container Platform クラスターをモニターします。これらのサービスは現在、単一のデプロイメントでデプロイされ、Kubernetes API とのインタラクションを処理し、Collector と連携しています。

メモリーと CPU の要件

次の表に、セキュアクラスターに Sensor をインストールして実行するために必要なメモリーとストレージの最小値を示します。

SensorCPUメモリー

要求

2 コア

4 GiB

制限

4 コア

8 GiB

3.2.2. Admission コントローラー

Admission コントローラーは、ユーザーが設定したポリシーに違反するワークロードを作成するのを防ぎます。

メモリーと CPU の要件

デフォルトでは、アドミッションコントロールサービスは 3 つのレプリカを実行します。次の表に、各レプリカのリクエストと制限を示します。

Admission コントローラーCPUメモリー

要求

0.05 コア

100 MiB

制限

0.5 コア

500 MiB

3.2.3. Collector

Collector は、セキュアクラスター内の各ノードのランタイムアクティビティーを監視します。Sensor に接続してこの情報をレポートします。コレクター Pod には 3 つのコンテナーがあります。最初のコンテナーはコレクターで、ノード上のランタイムアクティビティーを実際に監視して報告します。他の 2 つはコンプライアンスと node-inventory です。

コレクション要件

CORE_BPF 収集方法を使用するには、ベースカーネルが BTF をサポートし、BTF ファイルが Collector で使用できる必要があります。通常、カーネルのバージョンは 5.8 (RHEL ノードの場合は 4.18) 以降である必要があり、CONFIG_DEBUG_INFO_BTF 設定オプションを設定する必要があります。

Collector は、次の一覧に示されている標準の場所で BTF ファイルを検索します。

例3.1 BTF ファイルの場所

/sys/kernel/btf/vmlinux
/boot/vmlinux-<kernel-version>
/lib/modules/<kernel-version>/vmlinux-<kernel-version>
/lib/modules/<kernel-version>/build/vmlinux
/usr/lib/modules/<kernel-version>/kernel/vmlinux
/usr/lib/debug/boot/vmlinux-<kernel-version>
/usr/lib/debug/boot/vmlinux-<kernel-version>.debug
/usr/lib/debug/lib/modules/<kernel-version>/vmlinux
Copy to Clipboard

これらのファイルのいずれかが存在する場合は、カーネルに BTF サポートがあり、CORE_BPF が設定可能である可能性があります。

メモリーと CPU の要件

デフォルトでは、アドミッションコントロールサービスは 3 つのレプリカを実行します。次の表に、各レプリカのリクエストと制限を示します。

Collector CPUメモリー

Collector Container

要求

0.05 コア

320 MiB

制限

0.75 コア

1000 MiB

Compliance Container

要求

0.01 コア

10 MiB

制限

1 コア

2000 MiB

Node-Inventory Container

要求

0.01 コア

10 MiB

制限

1 コア

500 MiB

Total

要求

0.07 コア

340 MiB

制限

2.75 コア

3500 MiB

第5章 Red Hat OpenShift のセキュアクラスターを使用した RHACS Cloud Service のセットアップ

5.1. Red Hat Cloud 上での RHACS Cloud インスタンスの作成

Red Hat Hybrid Cloud Console でインスタンスを選択して、Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) にアクセスします。ACS インスタンス には、Red Hat が設定および管理する RHACS Cloud Service 管理インターフェイスとサービスが含まれています。管理インターフェイスは、セキュアクラスターに接続します。セキュアクラスターには、脆弱性をスキャンして情報を収集するサービスが含まれています。1 つのインスタンスが多くのクラスターに接続して監視できます。

5.1.1. コンソールでのインスタンスの作成

Red Hat Hybrid Cloud Console で、セキュアなクラスターに接続するための ACS インスタンス を作成します。

手順

ACS インスタンス を作成するには:

  1. Red Hat Hybrid Cloud Console にログインします。
  2. ナビゲーションメニューから、Advanced Cluster SecurityACS Instances を選択します。
  3. ACS インスタンスの作成 を選択し、表示されたフィールドに情報を入力するか、ドロップダウンリストから適切なオプションを選択します。

    • Name: ACS インスタンス の名前を入力します。ACS インスタンス には、Central とも呼ばれる RHACS Central コンポーネントが含まれています。これには、RHACS Cloud Service 管理インターフェイス、および Red Hat によって設定および管理されるサービスが含まれます。お客様は、Central と通信するセキュアクラスターを管理します。多くのセキュアクラスターを 1 つのインスタンスに接続できます。
    • クラウドプロバイダー: Central が配置されているクラウドプロバイダー。AWS を選択します。
    • クラウドリージョン: Central が配置されているクラウドプロバイダーのリージョン。次のいずれかのリージョンを選択します。

      • 米国東部、バージニア北部
      • ヨーロッパ、アイルランド
    • アベイラビリティーゾーン: デフォルト値 (Multi) を使用します。
  4. Create instance をクリックします。

5.1.2. 次のステップ

5.2. Red Hat OpenShift のセキュアなクラスターでのプロジェクトの作成

保護する各 Red Hat OpenShift クラスター上にプロジェクトを作成します。次に、このプロジェクトを使用して、Operator チャートまたは Helm チャートを使用して RHACS Cloud Service リソースをインストールします。

5.2.1. クラスター上にプロジェクトを作成する

手順

  • OpenShift Container Platform クラスターで、HomeProjects に移動し、RHACS Cloud Service のプロジェクトを作成する。プロジェクト として stackrox を使用します。

5.2.2. 次のステップ

  • ACS コンソールで、init バンドルを作成 します。init バンドルには、RHACS Cloud Service のセキュアクラスターと ACS コンソール間の通信を可能にするシークレットが含まれています。

5.3. セキュアクラスター用の init バンドルを生成する

SecuredCluster リソースをクラスターにインストールする前に、init バンドルを作成する必要があります。SecuredCluster がインストールおよび設定されているクラスターは、このバンドルを使用して Central で認証します。RHACS ポータルまたは roxctl CLI を使用して、init バンドルを作成できます。次に、それを使用してリソースを作成することにより、init バンドルを適用します。

注記

init バンドルを作成するには、Admin ユーザーロールが必要です。

5.3.1. init バンドルの生成

5.3.1.1. RHACS ポータルを使用した init バンドルの生成

RHACS ポータルを使用して、シークレットを含む init バンドルを作成できます。

注記

init バンドルを作成するには、Admin ユーザーロールが必要です。

手順

  1. 公開方法に基づいて RHACS ポータルのアドレスを見つけます。

    1. ルートの場合。

      $ oc get route central -n stackrox
      Copy to Clipboard
    2. ロードバランサーの場合。

      $ oc get service central-loadbalancer -n stackrox
      Copy to Clipboard
    3. port forward の場合:

      1. 以下のコマンドを実行します。

        $ oc port-forward svc/central 18443:443 -n stackrox
        Copy to Clipboard
      2. https://localhost:18443/ に移動します。
  2. RHACS ポータルで、Platform ConfigurationIntegrations に移動します。
  3. Authentication Tokens セクションに移動し、Cluster Init Bundle をクリックする。
  4. Generate bundle をクリックする。
  5. クラスター初期化バンドルの名前を入力し、Generate をクリックする。

    1. Helm チャートを使用してインストールする場合は、Download Helm Values File をクリックして、生成されたバンドルをダウンロードします。
    2. Operator を使用してインストールする場合は、Download Kubernetes Secret File をクリックして、生成されたバンドルをダウンロードします。
重要

このバンドルにはシークレットが含まれているため、セキュアに保管してください。同じバンドルを使用して、複数のセキュアなクラスターを作成できます。

次のステップ

  1. セキュアなクラスターでリソースを作成して、init バンドルを適用します。
  2. 各クラスターにセキュアなクラスターサービスをインストールします。
5.3.1.2. roxctl CLI を使用した init バンドルの生成

roxctl CLI を使用して、シークレットを含む init バンドルを作成できます。

注記

init バンドルを作成するには、Admin ユーザーロールが必要です。

前提条件

  • ROX_API_TOKEN および ROX_CENTRAL_ADDRESS 環境変数が設定されている。

    1. 次のコマンドを実行して ROX_API_TOKEN を設定します。

      $ export ROX_API_TOKEN=<api_token>
      Copy to Clipboard
    2. 次のコマンドを実行して、ROX_CENTRAL_ADDRESS 環境変数を設定します。

      $ export ROX_CENTRAL_ADDRESS=<address>:<port_number>
      Copy to Clipboard
重要

RHACS Cloud Service では、Central アドレスを必要とする roxctl コマンドを使用する場合は、Red Hat Hybrid Cloud Console の インスタンスの詳細 セクションに表示される Central インスタンスのアドレス を使用します。たとえば、acs-data-ABCD12345.acs.rhcloud.com の代わりに acs-ABCD12345.acs.rhcloud.com を使用します。

手順

  • Helm インストールのシークレットを含むクラスター初期化バンドルを生成するには、次のコマンドを実行します。

    $ roxctl -e "$ROX_CENTRAL_ADDRESS" \
      central init-bundles generate <cluster_init_bundle_name> \
      --output cluster_init_bundle.yaml
    Copy to Clipboard
  • Operator インストール用のシークレットを含むクラスター初期化バンドルを生成するには、次のコマンドを実行します。

    $ roxctl -e "$ROX_CENTRAL_ADDRESS" \
      central init-bundles generate <cluster_init_bundle_name> \
      --output-secrets cluster_init_bundle.yaml
    Copy to Clipboard
    重要

    このバンドルにはシークレットが含まれているため、安全に保管してください。同じバンドルを使用して、複数のセキュアクラスターを設定できます。

5.3.2. 次のステップ

5.4. セキュアクラスター用の init バンドルを適用する

init バンドルを使用してリソースを作成し、それを適用します。

注記

init バンドルを適用するには、Admin ユーザーロールが必要です。

5.4.1. init バンドルを使用したリソースの作成

セキュアなクラスターをインストールする前に、init バンドルを使用してクラスター上に必要なリソースを作成し、セキュアなクラスター上のサービスが RHACS Cloud Service と通信できるようにする必要があります。

注記

Helm チャートを使用してインストールする場合は、この手順を実行しないでください。Helm を使用してインストールを完了してください。関連情報セクションの「Helm チャートを使用したセキュアクラスターへの RHACS のインストール」を参照してください。

前提条件

  • シークレットを含む init バンドルを生成している必要があります。

手順

リソースを作成するには、次のいずれかの手順を実行します。

  • OpenShift Container Platform Web コンソールのトップメニューで + をクリックし、Import YAML ページを開きます。init バンドルファイルをドラッグするか、その内容をコピーしてエディターに貼り付け、Create をクリックします。
  • Red Hat OpenShift CLI を使用して、次のコマンドを実行してリソースを作成します。

    $ oc create -f <init_bundle>.yaml \ 
    1
    
      -n <stackrox> 
    2
    Copy to Clipboard
    1
    シークレットを含む init バンドルのファイル名を指定します。
    2
    Central サービスがインストールされているプロジェクトの名前を指定します。

検証

  • 新しい証明書を取得するには、センサーを再起動します。

    Sensor を再起動する方法の詳細は、関連情報の「Sensor コンテナーの再起動」を参照してください。

5.4.2. 次のステップ

  • 各 Red Hat OpenShift クラスターで、RHACS Operator をインストール します。
  • 監視するすべてのクラスターに RHACS のセキュアクラスターサービスをインストールします。

5.5. Operator のインストール

RHACS Operator をセキュアクラスターにインストールします。

5.5.1. RHACS Cloud Service 用の RHACS Operator のインストール

OpenShift Container Platform で提供される OperatorHub を使用するのが、RHACS Operator をインストールする最も簡単な方法です。

前提条件

  • Operator インストールパーミッションを持つアカウントを使用して OpenShift Container Platform クラスターにアクセスできる。
  • OpenShift Container Platform 4.11 以降を使用する必要があります。詳細は、Red Hat Advanced Cluster Security for Kubernetes Support Policy を参照してください。

手順

  1. Web コンソールで、OperatorsOperatorHub ページに移動します。
  2. Red Hat Advanced Cluster Security for Kubernetes が表示されない場合は、Filter by keyword ボックスに Advanced Cluster Security と入力して、Red Hat Advanced Cluster Security for Kubernetes Operator を検索します。
  3. 詳細ページを表示するには、Red Hat Advanced Cluster Security for Kubernetes Operator を 選択します。
  4. Operator に関する情報を読み、Install をクリックします。
  5. Install Operator ページで以下を行います。

    • Installation mode のデフォルト値を All namespaces on the cluster として保持します。
    • Installed namespace フィールドで、Operator をインストールする特定の namespace を選択します。Red Hat Advanced Cluster Security for Kubernetes Operator を rhacs-operator namespace にインストールします。
    • Update approval には、自動更新または手動更新を選択します。

      自動更新を選択した場合、Operator の新しいバージョンが利用可能になると、Operator Lifecycle Manager (OLM) が Operator の実行中のインスタンスを自動的にアップグレードします。

      手動更新を選択した場合、新しいバージョンの Operator が利用可能になると、OLM は更新リクエストを作成します。クラスター管理者は、更新リクエストを手動で承認して、Operator を最新バージョンに更新する必要があります。

      Red Hat は、RHACS Cloud Service で Operator の自動アップグレードを有効にすることを推奨します。詳細は、Red Hat Advanced Cluster Security for Kubernetes Support Matrix を参照してください。

  6. Install をクリックします。

検証

  • インストールが完了したら、OperatorsInstalled Operators に移動して、Red Hat Advanced Cluster Security for Kubernetes Operator が Succeeded のステータスでリスト表示されていることを確認します。

5.5.2. 次のステップ

5.6. RHACS Cloud Service からのセキュアなクラスターリソースのインストール

Operator チャートまたは Helm チャートを使用して、セキュアクラスターに RHACS Cloud Service をインストールできます。roxctl CLI を使用してインストールすることもできますが、この方法を使用する必要がある特定のインストールニーズがないかぎり、この方法は使用しないでください。

前提条件

  • Red Hat OpenShift クラスターを作成し、そこに Operator をインストールしました。
  • RHACS Cloud Service の ACS コンソールで、init バンドルを作成してダウンロードした。
  • oc create コマンドを使用して init バンドルを適用した。
  • インストール中に、アドレスとポート番号を含む Central API Endpoint をメモした。この情報を表示するには、クラウドコンソールのナビゲーションメニューから Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックします。

5.6.1. Operator を使用したセキュアクラスターへの RHACS のインストール

5.6.1.1. セキュアクラスターサービスのインストール

SecuredCluster カスタムリソースを使用して、セキュアなクラスターサービスをクラスターにインストールできます。モニターする環境内のすべてのクラスターに、セキュリティーでセキュアなクラスターサービスをインストールする必要があります。

注意

セキュアクラスターサービスをインストールすると、コレクターもインストールされます。Unified Extensible Firmware Interface (UEFI) があり、Secure Boot が有効になっているシステムに Collector をインストールするには、カーネルモジュールが署名されておらず、UEFI ファームウェアが署名されていないパッケージをロードできないため、eBPF プローブを使用する必要があります。Collector は、開始時に Secure Boot ステータスを識別し、必要に応じて eBPF プローブに切り替えます。

前提条件

  • OpenShift Container Platform を使用している場合は、バージョン 4.11 以降をインストールする必要があります。
  • RHACS Operator をインストールしました。
  • init バンドルを生成し、クラスターに適用しました。

手順

  1. OpenShift Container Platform Web コンソールで、OperatorsInstalled Operators ページに移動します。
  2. RHACS Operator をクリックします。
  3. Operator details ページの central ナビゲーションメニューから Secured Cluster をクリックします。
  4. Create SecuredCluster をクリックします。
  5. Configure via フィールドで次のいずれかのオプションを選択します。

    • Form view: 画面上のフィールドを使用してセキュアなクラスターを設定し、他のフィールドを変更する必要がない場合は、このオプションを使用します。
    • YAML view: このビューを使用して、YAML ファイルを使用してセキュアなクラスターをセットアップします。YAML ファイルがウィンドウに表示され、その中のフィールドを編集できます。このオプションを選択した場合、ファイルの編集が終了したら、Create をクリックします。
  6. Form view を使用している場合は、デフォルトの名前を受け入れるか編集して、新しいプロジェクト名を入力します。デフォルト値は stackrox-secured-cluster-services です。
  7. オプション: クラスターのラベルを追加します。
  8. SecuredCluster カスタムリソースの一意の名前を入力します。
  9. Central Endpoint には、Central インスタンスのアドレスとポート番号を入力します。たとえば、Central が https://central.example.com で利用できる場合は、central エンドポイントを central.example.com:443 として指定します。デフォルト値の central.stackrox.svc:443 は、セキュアなクラスターサービスと Central を同じクラスターにインストールした場合にのみ機能します。複数のクラスターを設定する場合は、デフォルト値を使用しないでください。代わりに、各クラスターの Central Endpoint 値を設定するときにホスト名を使用します。

    • RHACS Cloud Service の場合、アドレスとポート番号を含む Central API Endpoint を使用します。この情報を表示するには、クラウドコンソールのナビゲーションメニューから Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックします。
    • セキュアなクラスターサービスと Central を同じクラスターにインストールする場合のみ、central.stackrox.svc:443 を使用します。
  10. デフォルト値を受け入れるか、必要に応じてカスタム値を設定します。たとえば、カスタム証明書または信頼されていない CA を使用している場合は、TLS を設定する必要がある場合があります。
  11. Create をクリックします。

次のステップ

  1. オプション: 追加のセキュアなクラスター設定を設定します。
  2. インストールの検証

5.6.2. Helm チャートを使用したセキュアクラスターへの RHACS Cloud Service のインストール

Helm チャートをカスタマイズせずに使用するか、デフォルト値を使用するか、設定パラメーターをカスタマイズして、セキュアクラスターに RHACS をインストールできます。

最初に、Helm チャートリポジトリーを追加していることを確認します。

5.6.2.1. Helm チャートリポジトリーの追加

手順

  • RHACS チャートリポジトリーを追加します。

    $ helm repo add rhacs https://mirror.openshift.com/pub/rhacs/charts/
    Copy to Clipboard

Red Hat Advanced Cluster Security for Kubernetes の Helm リポジトリーには、異なるコンポーネントをインストールするための Helm チャートが含まれています。

  • クラスターおよびノードごとのコンポーネント (Sensor、Admission Controller、Collector、および Scanner-slim) をインストールするためのセキュリティー保護された Cluster Services Helm チャート (secure-cluster-services)。

    注記

    モニターする各クラスターにクラスターごとのコンポーネントをデプロイし、モニターするすべてのノードにノードごとのコンポーネントをデプロイします。

検証

  • 次のコマンドを実行して、追加されたチャートリポジトリーを確認します。

    $ helm search repo -l rhacs/
    Copy to Clipboard
5.6.2.2. カスタマイズせずに Helm チャートを使用してセキュアクラスターに RHACS Cloud Service をインストールする
5.6.2.2.1. カスタマイズせずに secured-cluster-services Helm チャートをインストールする

次の手順に従って、secure-cluster-services Helm チャートをインストールし、クラスターおよびノードごとのコンポーネント (Sensor、Admission controller、Collector、および Scanner-slim) をデプロイします。

注意

Unified Extensible Firmware Interface (UEFI) があり、Secure Boot が有効になっているシステムに Collector をインストールするには、カーネルモジュールが署名されておらず、UEFI ファームウェアが署名されていないパッケージをロードできないため、eBPF プローブを使用する必要があります。Collector は、開始時に Secure Boot ステータスを識別し、必要に応じて eBPF プローブに切り替えます。

前提条件

  • クラスターの RHACS init バンドルを生成しておく必要があります。
  • Red Hat Container Registry へのアクセス権と、認証用のプルシークレットが必要です。registry.redhat.io からイメージをダウンロードする方法は、Red Hat コンテナーレジストリーの認証 を参照してください。
  • アドレスとポート番号を含む Central API Endpoint が必要です。この情報を表示するには、クラウドコンソールのナビゲーションメニューから Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックします。

手順

  • Kubernetes ベースのクラスターで次のコマンドを実行します。

    $ helm install -n stackrox --create-namespace \
        stackrox-secured-cluster-services rhacs/secured-cluster-services \
        -f <path_to_cluster_init_bundle.yaml> \ 
    1
    
        -f <path_to_pull_secret.yaml> \ 
    2
    
        --set clusterName=<name_of_the_secured_cluster> \
        --set centralEndpoint=<endpoint_of_central_service> 
    3
    
        --set imagePullSecrets.username=<your redhat.com username> \
    4
    
        --set imagePullSecrets.password=<your redhat.com password>
    5
    Copy to Clipboard
    1
    -f オプションを使用して、init バンドルのパスを指定します。
    2
    -f オプションを使用して、Red Hat Container Registry 認証のプルシークレットのパスを指定します。
    3
    アドレスとポート番号を含む Central API エンドポイントを入力します。Advanced Cluster Security → ACS Instances を選択し、作成した ACS インスタンスをクリックすると、Red Hat Hybrid Cloud Console コンソールでこの情報を再度表示できます。
    4
    Red Hat Container Registry 認証のプルシークレットのユーザー名を含めます。
    5
    Red Hat Container Registry 認証のプルシークレットのパスワードを含めます。
5.6.2.3. カスタマイズした secured-cluster-services Helm チャートの設定

helm install および helm upgrade コマンドで Helm チャート設定パラメーターを使用できます。これらのパラメーターは、--set オプションを使用するか、YAML 設定ファイルを作成することで指定します。

以下のファイルを作成して、Red Hat Advanced Cluster Security for Kubernetes をインストールするための Helm チャートを設定します。

  • パブリック設定ファイル values-public.yaml: このファイルを使用して、機密性の低いすべての設定オプションを保存します。
  • プライベート設定ファイル values-private.yaml: このファイルを使用して、機密性の高いすべての設定オプションを保存します。このファイルは安全に保管してください。
重要

secured-cluster-services Helm チャートを使用する場合、チャートの一部である values.yaml ファイルを変更しないでください。

5.6.2.3.1. 設定パラメーター
パラメーター説明

clusterName

クラスターの名前です。

centralEndpoint

Central エンドポイントのアドレス (ポート番号を含む)。gRPC に対応していないロードバランサーを使用している場合は、エンドポイントアドレスの前に wss:// を付けて、WebSocket プロトコルを使用します。複数のクラスターを設定する場合は、アドレスにホスト名を使用します (例: central.example.com:443)。

sensor.endpoint

ポート番号を含む Sensor エンドポイントのアドレスです。

sensor.imagePullPolicy

Sensor コンテナーのイメージプルポリシーです。

sensor.serviceTLS.cert

Sensor が使用する内部サービス間の TLS 証明書です。

sensor.serviceTLS.key

Sensor が使用する内部サービス間 TLS 証明書キーです。

sensor.resources.requests.memory

Sensor コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.resources.requests.cpu

Sensor コンテナーの CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.resources.limits.memory

Sensor コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.resources.limits.cpu

Sensor コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.nodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Sensor をスケジュールするように強制します。

sensor.tolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Sensor の taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。

image.main.name

main イメージの名前です。

image.collector.name

Collector イメージの名前です。

image.main.registry

main イメージに使用しているレジストリーのアドレスです。

image.collector.registry

Collector イメージに使用しているレジストリーのアドレスです。

image.main.pullPolicy

main イメージのイメージプルポリシーです。

image.collector.pullPolicy

Collector イメージのイメージプルポリシーです。

image.main.tag

使用する main イメージのタグです。

image.collector.tag

使用する collector イメージのタグです。

collector.collectionMethod

EBPFCORE_BPF、または NO_COLLECTION のいずれかです。

collector.imagePullPolicy

Collector コンテナーのイメージプルポリシーです。

collector.complianceImagePullPolicy

Compliance コンテナーのイメージプルポリシーです。

collector.disableTaintTolerations

false を指定すると、許容値が Collector に適用され、Collector Pod は taint のあるすべてのノードにスケジュールできます。true として指定すると、許容値は適用されず、Collector Pod は taint のあるノードにスケジュールされません。

collector.resources.requests.memory

Collector コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.resources.requests.cpu

Collector コンテナーの CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.resources.limits.memory

Collector コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.resources.limits.cpu

Collector コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.requests.memory

Compliance コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.requests.cpu

Compliance の CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.limits.memory

Compliance コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.limits.cpu

Compliance コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.serviceTLS.cert

Collector が使用する内部サービス間 TLS 証明書です。

collector.serviceTLS.key

Collector が使用する内部サービス間 TLS 証明書キーです。

admissionControl.listenOnCreates

この設定は、Kubernetes がワークロード作成イベントの AdmissionReview リクエストで Red Hat Advanced Cluster Security for Kubernetes に接続するように設定されているかどうかを制御します。

admissionControl.listenOnUpdates

このパラメーターを false に設定すると、Red Hat Advanced Cluster Security for Kubernetes は、Kubernetes API サーバーがオブジェクト更新イベントを送信しないように ValidatingWebhookConfiguration を作成します。オブジェクトの更新ボリュームは通常、オブジェクトが作成するボリュームよりも多いため、これを false のままにしておくと、アドミッションコントロールサービスのロードが制限され、アドミッションコントロールサービスが誤動作する可能性が低くなります。

admissionControl.listenOnEvents

この設定は、クラスターが Kubernetes exec および portforward イベントの AdmissionReview リクエストで Red Hat Advanced Cluster Security for Kubernetes に接続するように設定されているかどうかを制御します。Red Hat Advanced Cluster Security for Kubernetes は、OpenShift Container Platform 3.11 でこの機能をサポートしていません。詳細は、Red Hat Advanced Cluster Security for Kubernetes Support Policy を参照してください。

admissionControl.dynamic.enforceOnCreates

この設定は、Red Hat Advanced Cluster Security for Kubernetes がポリシーを評価するかどうかを制御します。無効にすると、すべての AdmissionReview リクエストが自動的に受け入れられます。

admissionControl.dynamic.enforceOnUpdates

この設定は、アドミッションコントロールサービスの動作を制御します。これを機能させるには、listenOnUpdatestrue として指定する必要があります。

admissionControl.dynamic.scanInline

このオプションを true に設定すると、アドミッションコントロールサービスは、アドミッションデシジョンを行う前にイメージスキャンをリクエストします。イメージスキャンには数秒かかるため、このオプションを有効にするのは、クラスターで使用されるすべてのイメージがデプロイ前にスキャンされることを確認できる場合のみです (たとえば、イメージビルド中の CI 統合によって)。このオプションは、RHACS ポータルの Contact image scanners オプションに対応しています。

admissionControl.dynamic.disableBypass

Admission コントローラーのバイパスを無効にするには、true に設定します。

admissionControl.dynamic.timeout

アドミッションレビューリクエストを評価する間、Red Hat Advanced Cluster Security for Kubernetes が待機する最大時間 (秒単位) です。これを使用して、イメージスキャンを有効にするときにリクエストのタイムアウトを設定します。イメージスキャンが指定された時間より長く実行される場合、Red Hat Advanced Cluster Security for Kubernetes はリクエストを受け入れます。

admissionControl.resources.requests.memory

Admission Control コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.resources.requests.cpu

Admission Control コンテナーの CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.resources.limits.memory

Admission Control コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.resources.limits.cpu

Admission Control コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.nodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Admission Control をスケジュールするように強制します。

admissionControl.tolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、アドミッションコントロールの taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。

admissionControl.serviceTLS.cert

Admission Control が使用する内部サービス間 TLS 証明書です。

admissionControl.serviceTLS.key

Admission Control が使用する内部サービス間 TLS 証明書キーです。

registryOverride

このパラメーターを使用して、デフォルトの docker.io レジストリーをオーバーライドします。他のレジストリーを使用している場合は、レジストリーの名前を指定してください。

collector.disableTaintTolerations

false を指定すると、許容値が Collector に適用され、Collector Pod は taint のあるすべてのノードにスケジュールできます。true として指定した場合、許容値は適用されず、Collector Pod は taint のあるノードにスケジュールされません。

createUpgraderServiceAccount

sensor-upgrader アカウントを作成するには、true を指定します。デフォルトでは、Red Hat Advanced Cluster Security for Kubernetes は、各セキュアクラスターに sensor-upgrader という名前のサービスアカウントを作成します。このアカウントは高い権限を持ちますが、アップグレードの時のみ使用されます。このアカウントを作成しない場合、Sensor に十分な権限がない場合は、将来のアップグレードを手動で完了する必要があります。

createSecrets

false を指定すると、Sensor、Collector、および Admission コントローラーのオーケストレーターシークレットの作成がスキップされます。

collector.slimMode

Collector のデプロイに slim Collector イメージを使用する場合は、true を指定します。slim Collector イメージを使用するには、一致する eBPF プローブまたはカーネルモジュールを提供する必要があります。Red Hat Advanced Cluster Security for Kubernetes をオフラインモードで実行している場合、slim Collector を機能させるために、stackrox.io からカーネルサポートパッケージをダウンロードして Central にアップロードする必要があります。それ以外の場合は、Central が https://collector-modules.stackrox.io/ でホストされているオンラインプローブリポジトリーにアクセスできることを確認する必要があります。

sensor.resources

Sensor のリソース仕様です。

admissionControl.resources

Admission コントローラーのリソース仕様です。

collector.resources

Collector のリソース仕様です。

collector.complianceResources

Collector の Compliance コンテナーのリソース仕様です。

exposeMonitoring

このオプションを true に設定すると、Red Hat Advanced Cluster Security for Kubernetes がポート番号 9090 で Sensor、Collector、および Admission controller の Prometheus メトリクスエンドポイントを公開します。

auditLogs.disableCollection

このオプションを true に設定すると、Red Hat Advanced Cluster Security for Kubernetes は、設定マップとシークレットへのアクセスと変更を検出するために使用される監査ログ検出機能を無効にします。

scanner.disable

このオプションを false に設定すると、Red Hat Advanced Cluster Security for Kubernetes がセキュアクラスターに Scanner-slim と Scanner DB をデプロイし、OpenShift Container Registry 上のイメージをスキャンできるようにします。Scanner-slim の有効化は、OpenShift Container Platform および Kubernetes セキュアクラスターでサポートされています。デフォルトは true です。

scanner.dbTolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner DB の taint toleration キー、値、および effect を指定します。

scanner.replicas

Collector の Compliance コンテナーのリソース仕様です。

scanner.logLevel

このパラメーターを設定すると、Scanner のログレベルを変更できます。このオプションは、トラブルシューティングの目的でのみ使用してください。

scanner.autoscaling.disable

このオプションを true に設定すると、Red Hat Advanced Cluster Security for Kubernetes は Scanner のデプロイメントでの自動スケーリングを無効にします。

scanner.autoscaling.minReplicas

自動スケーリングのレプリカの最小数です。デフォルトは 2 です。

scanner.autoscaling.maxReplicas

自動スケーリングのレプリカの最大数です。デフォルトは 5 です。

scanner.nodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Scanner をスケジュールするように強制します。

scanner.tolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner の taint toleration キー、値、および effect を指定します。

scanner.dbNodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Scanner DB をスケジュールするように強制します。

scanner.dbTolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner DB の taint toleration キー、値、および effect を指定します。

scanner.resources.requests.memory

Scanner コンテナーのメモリー要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.resources.requests.cpu

Scanner コンテナーの CPU 要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.resources.limits.memory

Scanner コンテナーのメモリー制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.resources.limits.cpu

Scanner コンテナーの CPU 制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.requests.memory

Scanner DB コンテナーのメモリー要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.requests.cpu

Scanner DB コンテナーの CPU 要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.limits.memory

Scanner DB コンテナーのメモリー制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.limits.cpu

Scanner DB コンテナーの CPU 制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

monitoring.openshift.enabled

このオプションを false に設定すると、Red Hat Advanced Cluster Security for Kubernetes で Red Hat OpenShift モニタリングは設定されません。Red Hat OpenShift 4 では、デフォルトで true に設定されます。

5.6.2.3.1.1. 環境変数

Sensor および Admission コントローラーの環境変数は、次の形式で指定できます。

customize:
  envVars:
    ENV_VAR1: "value1"
    ENV_VAR2: "value2"
Copy to Clipboard

customize 設定を使用すると、この Helm チャートによって作成されたすべてのオブジェクトのカスタム Kubernetes メタデータ (ラベルとアノテーション) と、ワークロードの追加の Pod ラベル、Pod アノテーション、コンテナー環境変数を指定できます。

より一般的なスコープ (たとえば、すべてのオブジェクト) で定義されたメタデータを、より狭いスコープ (たとえば、Sensor デプロイメントのみ) で定義されたメタデータでオーバーライドできるという意味で、設定は階層的です。

5.6.2.3.2. secured-cluster-services Helm チャートのインストール

value-public.yaml ファイルと values-private.yaml ファイルを設定した後、secure-cluster-services Helm チャートをインストールして、クラスターごとおよびノードごとのコンポーネント (Sensor、Admission controller、Collector、および Scanner-slim) をデプロイします。

注意

Unified Extensible Firmware Interface (UEFI) があり、Secure Boot が有効になっているシステムに Collector をインストールするには、カーネルモジュールが署名されておらず、UEFI ファームウェアが署名されていないパッケージをロードできないため、eBPF プローブを使用する必要があります。Collector は、開始時に Secure Boot ステータスを識別し、必要に応じて eBPF プローブに切り替えます。

前提条件

  • クラスターの RHACS init バンドルを生成しておく必要があります。
  • Red Hat Container Registry へのアクセス権と、認証用のプルシークレットが必要です。registry.redhat.io からイメージをダウンロードする方法は、Red Hat コンテナーレジストリーの認証 を参照してください。
  • アドレスとポート番号を含む Central API Endpoint が必要です。この情報を表示するには、クラウドコンソールのナビゲーションメニューから Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックします。

手順

  • 以下のコマンドを実行します。

    $ helm install -n stackrox \
      --create-namespace stackrox-secured-cluster-services rhacs/secured-cluster-services \
      -f <name_of_cluster_init_bundle.yaml> \
      -f <path_to_values_public.yaml> -f <path_to_values_private.yaml> \ 
    1
    
      --set imagePullSecrets.username=<username> \ 
    2
    
      --set imagePullSecrets.password=<password> 
    3
    Copy to Clipboard
    1
    -f オプションを使用して、YAML 設定ファイルのパスを指定します。
    2
    Red Hat Container Registry 認証のプルシークレットのユーザー名を含めます。
    3
    Red Hat Container Registry 認証のプルシークレットのパスワードを含めます。
注記

継続的インテグレーション (CI) システムを使用して secured-cluster-services Helm チャートをデプロイするには、init バンドル YAML ファイルを環境変数として helm install コマンドに渡します。

$ helm install ... -f <(echo "$INIT_BUNDLE_YAML_SECRET") 
1
Copy to Clipboard
1
base64 でエンコードされた変数を使用している場合は、代わりに helm install …​ -f <(echo "$INIT_BUNDLE_YAML_SECRET" | base64 --decode) コマンドを使用してください。
5.6.2.4. secured-cluster-services Helm チャートをデプロイした後の設定オプションの変更

secure-cluster-services Helm チャートをデプロイした後、任意の設定オプションに変更を加えることができます。

手順

  1. values-public.yaml および values-private.yaml 設定ファイルを新しい値で更新します。
  2. helm upgrade コマンドを実行し、-f オプションを使用して設定ファイルを指定します。

    $ helm upgrade -n stackrox \
      stackrox-secured-cluster-services rhacs/secured-cluster-services \
      --reuse-values \ 
    1
    
      -f <path_to_values_public.yaml> \
      -f <path_to_values_private.yaml>
    Copy to Clipboard
    1
    --reuse-values パラメーターを指定する必要があります。指定しない場合、Helm upgrade コマンドは以前に設定されたすべての設定をリセットします。
    注記

    --set または --set-file パラメーターを使用して設定値を指定することもできます。ただし、これらのオプションは保存されないため、変更を加えるたびにすべてのオプションを手動で再度指定する必要があります。

5.6.3. roxctl CLI を使用したセキュアなクラスターへの RHACS のインストール

CLI を使用してセキュアクラスターに RHACS をインストールするには、次の手順を実行します。

  1. roxctl CLI をインストールします。
  2. Sensor を取り付けます。
5.6.3.1. roxctl CLI のインストール

最初にバイナリーをダウンロードする必要があります。roxctl は、Linux、Windows、または macOS にインストールできます。

5.6.3.1.1. Linux への roxctl CLI のインストール

次の手順を使用して、Linux に roxctl CLI バイナリーをインストールできます。

注記

Linux 用の roxctl CLI は、amd64ppcl64le、および s390x アーキテクチャーで使用できます。

手順

  1. ターゲットのオペレーティングシステムの roxctl アーキテクチャーを確認します。

    $ arch="$(uname -m | sed "s/x86_64//")"; arch="${arch:+-$arch}"
    Copy to Clipboard
  2. roxctl CLI をダウンロードします。

    $ curl -f -o roxctl "https://mirror.openshift.com/pub/rhacs/assets/4.3.8/bin/Linux/roxctl${arch}"
    Copy to Clipboard
  3. roxctl バイナリーを実行可能にします。

    $ chmod +x roxctl
    Copy to Clipboard
  4. PATH 上にあるディレクトリーに roxctl バイナリーを配置します。

    PATH を確認するには、以下のコマンドを実行します。

    $ echo $PATH
    Copy to Clipboard

検証

  • インストールした roxctl のバージョンを確認します。

    $ roxctl version
    Copy to Clipboard
5.6.3.1.2. macOS への roxctl CLI のインストール

次の手順を使用して、roxctl CLI バイナリーを macOS にインストールできます。

注記

macOS 用の roxctl CLI は、amd64 アーキテクチャーで利用できます。

手順

  1. roxctl CLI をダウンロードします。

    $ curl -f -O https://mirror.openshift.com/pub/rhacs/assets/4.3.8/bin/Darwin/roxctl
    Copy to Clipboard
  2. バイナリーからすべての拡張属性を削除します。

    $ xattr -c roxctl
    Copy to Clipboard
  3. roxctl バイナリーを実行可能にします。

    $ chmod +x roxctl
    Copy to Clipboard
  4. PATH 上にあるディレクトリーに roxctl バイナリーを配置します。

    PATH を確認するには、以下のコマンドを実行します。

    $ echo $PATH
    Copy to Clipboard

検証

  • インストールした roxctl のバージョンを確認します。

    $ roxctl version
    Copy to Clipboard
5.6.3.1.3. Windows への roxctl CLI のインストール

次の手順を使用して、roxctl CLI バイナリーを Windows にインストールできます。

注記

Windows 用の roxctl CLI は、amd64 アーキテクチャーで使用できます。

手順

  • roxctl CLI をダウンロードします。

    $ curl -f -O https://mirror.openshift.com/pub/rhacs/assets/4.3.8/bin/Windows/roxctl.exe
    Copy to Clipboard

検証

  • インストールした roxctl のバージョンを確認します。

    $ roxctl version
    Copy to Clipboard
5.6.3.2. Sensor のインストール

クラスターをモニターするには、Sensor をデプロイする必要があります。モニターする各クラスターに Sensor をデプロイする必要があります。次の手順では、RHACS ポータルを使用して Sensor を追加する方法について説明します。

前提条件

  • Central サービスをすでにインストールしている必要があります。または、Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) で ACS インスタンス を選択して Central サービスにアクセスできます。

手順

  1. セキュアなクラスターの RHACS ポータルで、Platform ConfigurationClusters に移動します。
  2. +NewCluster を選択します。
  3. クラスターの名前を指定します。
  4. Sensor をデプロイする場所に基づいて、フィールドに適切な値を入力します。

    • アドレスとポート番号を含む Central API エンドポイントを入力します。Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックすると、Red Hat Hybrid Cloud Console でこの情報を再度表示できます。
  5. Next をクリックして、Sensor のセットアップを続行します。
  6. Download YAML File and Keys をクリックして、クラスターバンドル (zip アーカイブ) をダウンロードします。

    重要

    クラスターバンドルの zip アーカイブには、クラスターごとに固有の設定とキーが含まれています。同じファイルを別のクラスターで再利用しないでください。

  7. モニター対象クラスターにアクセスできるシステムから、クラスターバンドルから sensor スクリプトを解凍して実行します。

    $ unzip -d sensor sensor-<cluster_name>.zip
    Copy to Clipboard
    $ ./sensor/sensor.sh
    Copy to Clipboard

    Sensor をデプロイするために必要な権限がないという警告が表示された場合は、画面の指示に従うか、クラスター管理者に連絡して支援を求めてください。

Sensor はデプロイされた後、Central に接続し、クラスター情報を提供します。

検証

  1. RHACS ポータルに戻り、デプロイメントが成功したかどうかを確認します。成功した場合、Platform ConfigurationClusters でクラスターのリストを表示すると、クラスターのステータスに緑色のチェックマークと Healthy ステータスが表示されます。緑色のチェックマークが表示されない場合は、次のコマンドを使用して問題を確認してください。

    • OpenShift Container Platform で、次のコマンドを入力します。

      $ oc get pod -n stackrox -w
      Copy to Clipboard
    • Kubernetes で、次のコマンドを入力します。

      $ kubectl get pod -n stackrox -w
      Copy to Clipboard
  2. Finish をクリックしてウィンドウを閉じます。

インストール後、Sensor はセキュリティー情報の RHACS へのレポートを開始し、RHACS ポータルダッシュボードは、Sensor をインストールしたクラスターからのデプロイメント、イメージ、およびポリシー違反を表示し始めます。

5.6.4. 次のステップ

  • セキュアクラスターが ACS インスタンスと通信できることを確認して、インストールを検証 します。

5.7. RHACS Cloud Service でのセキュアなクラスターサービスのプロキシーの設定

セキュアクラスターと指定されたプロキシーサーバー間の接続を確立するには、Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) 環境内でセキュアクラスターサービスのプロキシー設定を設定する必要があります。これにより、信頼性の高いデータ収集と送信が保証されます。

5.7.1. SecuredCluster CR での環境変数の指定

egress プロキシーを設定するには、クラスター全体の Red Hat OpenShift プロキシーを使用するか、SecuredCluster Custom Resource (CR) 設定ファイル内に HTTP_PROXYHTTPS_PROXY、および NO_PROXY 環境変数を指定して、プロキシーを適切に使用し、指定されたドメイン内の内部要求を回避します。

プロキシー設定は、実行中のすべてのサービス (Sensor、Collector、Admission Controller、Scanner) に適用されます。

手順

  • SecuredCluster CR 設定ファイルのカスタマイズ仕様で、HTTP_PROXYHTTPS_PROXY、および NO_PROXY 環境変数を指定します。

    以下に例を示します。

    # proxy collector
    customize:
      envVars:
        - name: HTTP_PROXY
          value: http://egress-proxy.stackrox.svc:xxxx 
    1
    
        - name: HTTPS_PROXY
          value: http://egress-proxy.stackrox.svc:xxxx 
    2
    
        - name: NO_PROXY
          value: .stackrox.svc 
    3
    Copy to Clipboard
    1
    変数 HTTP_PROXYhttp://egress-proxy.stackrox.svc:xxxx の値に設定されます。これは、HTTP 接続に使用されるプロキシーサーバーです。
    2
    変数 HTTPS_PROXY は、http://egress-proxy.stackrox.svc:xxxx 値に設定されます。これは、HTTPS 接続に使用されるプロキシーサーバーです。
    3
    変数 NO _PROXY.stackrox.svc に設定されます。この変数は、プロキシーサーバー経由でアクセスすべきではないホスト名または IP アドレスを定義するために使用されます。

5.8. セキュアクラスターのインストールの検証

RHACS Cloud Service をインストールした後、いくつかの手順を実行して、インストールが成功したことを確認できます。

インストールを確認するには、Red Hat Hybrid Cloud Console から ACS コンソールにアクセスします。ダッシュボードには、ノード、デプロイメント、イメージ、および違反に関する情報とともに、RHACS Cloud Service がモニタリングしているクラスターの数が表示されます。

ACS コンソールにデータが表示されない場合:

  • 1 つ以上のセキュアクラスターが RHACS Cloud Service インスタンスに接続されていることを確認します。詳細は、RHACS Cloud Service からの保護されたクラスターリソースのインストール を参照してください。
  • Sensor Pod のログを調べて、RHACS Cloud Service インスタンスへの接続が成功していることを確認します。
  • Red Hat OpenShift クラスターで、Platform ConfigurationClusters に移動して、コンポーネントが正常であることを確認し、追加の動作情報を表示します。
  • ローカルクラスターの Operator で SecuredCluster API の値を調べて、Central API エンドポイント が正しく入力されていることを確認します。この値は、Red Hat Hybrid Cloud Console の ACS インスタンス の詳細に表示される値と同じである必要があります。

第6章 Kubernetes で保護されたクラスターを使用した RHACS Cloud Service のセットアップ

6.1. Kubernetes クラスター用の RHACS Cloud Service インスタンスを作成する

Red Hat Hybrid Cloud Console でインスタンスを選択して、Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) にアクセスします。ACS インスタンス には、Red Hat が設定および管理する RHACS Cloud Service 管理インターフェイスとサービスが含まれています。管理インターフェイスは、セキュアクラスターに接続します。セキュアクラスターには、脆弱性をスキャンして情報を収集するサービスが含まれています。1 つのインスタンスが多くのクラスターに接続して監視できます。

6.1.1. コンソールでのインスタンスの作成

Red Hat Hybrid Cloud Console で、セキュアなクラスターに接続するための ACS インスタンス を作成します。

手順

ACS インスタンス を作成するには:

  1. Red Hat Hybrid Cloud Console にログインします。
  2. ナビゲーションメニューから、Advanced Cluster SecurityACS Instances を選択します。
  3. ACS インスタンスの作成 を選択し、表示されたフィールドに情報を入力するか、ドロップダウンリストから適切なオプションを選択します。

    • Name: ACS インスタンス の名前を入力します。ACS インスタンス には、Central とも呼ばれる RHACS Central コンポーネントが含まれています。これには、RHACS Cloud Service 管理インターフェイス、および Red Hat によって設定および管理されるサービスが含まれます。お客様は、Central と通信するセキュアクラスターを管理します。多くのセキュアクラスターを 1 つのインスタンスに接続できます。
    • クラウドプロバイダー: Central が配置されているクラウドプロバイダー。AWS を選択します。
    • クラウドリージョン: Central が配置されているクラウドプロバイダーのリージョン。次のいずれかのリージョンを選択します。

      • 米国東部、バージニア北部
      • ヨーロッパ、アイルランド
    • アベイラビリティーゾーン: デフォルト値 (Multi) を使用します。
  4. Create instance をクリックします。

6.1.2. 次のステップ

6.2. Kubernetes のセキュアクラスター用の init バンドルを生成する

SecuredCluster リソースをクラスターにインストールする前に、init バンドルを作成する必要があります。SecuredCluster がインストールおよび設定されているクラスターは、このバンドルを使用して ACS コンソールで認証します。RHACS ポータルまたは roxctl CLI を使用して、init バンドルを作成できます。次に、それを使用してリソースを作成することにより、init バンドルを適用します。

6.2.1. RHACS ポータルを使用した init バンドルの生成

ACS コンソールとも呼ばれる RHACS ポータルを使用して、シークレットを含む init バンドルを作成できます。

注記

init バンドルを作成するには、Admin ユーザーロールが必要です。

手順

  1. RHACS ポータルで、Platform ConfigurationIntegrations に移動します。
  2. Authentication Tokens セクションに移動し、Cluster Init Bundle をクリックする。
  3. Generate bundle をクリックする。
  4. クラスター初期化バンドルの名前を入力し、Generate をクリックする。

    1. Helm チャートを使用してインストールする場合は、Download Helm Values File をクリックして、生成されたバンドルをダウンロードします。
    2. Operator を使用してインストールする場合は、Download Kubernetes Secret File をクリックして、生成されたバンドルをダウンロードします。
重要

このバンドルにはシークレットが含まれているため、セキュアに保管してください。同じバンドルを使用して、複数のセキュアなクラスターを作成できます。

次のステップ

  1. セキュアなクラスターでリソースを作成して、init バンドルを適用します。
  2. 各クラスターにセキュアなクラスターサービスをインストールします。

6.2.2. roxctl CLI を使用した init バンドルの生成

roxctl CLI を使用して、シークレットを含む init バンドルを作成できます。

注記

init バンドルを作成するには、Admin ユーザーロールが必要です。

前提条件

  • ROX_API_TOKEN および ROX_CENTRAL_ADDRESS 環境変数が設定されている。

    1. 次のコマンドを実行して ROX_API_TOKEN を設定します。

      $ export ROX_API_TOKEN=<api_token>
      Copy to Clipboard
    2. 次のコマンドを実行して、ROX_CENTRAL_ADDRESS 環境変数を設定します。

      $ export ROX_CENTRAL_ADDRESS=<address>:<port_number>
      Copy to Clipboard
重要

RHACS Cloud Service では、Central アドレスを必要とする roxctl コマンドを使用する場合は、Red Hat Hybrid Cloud Console の インスタンスの詳細 セクションに表示される Central インスタンスのアドレス を使用します。たとえば、acs-data-ABCD12345.acs.rhcloud.com の代わりに acs-ABCD12345.acs.rhcloud.com を使用します。

手順

  • Helm インストールのシークレットを含むクラスター初期化バンドルを生成するには、次のコマンドを実行します。

    $ roxctl -e "$ROX_CENTRAL_ADDRESS" \
      central init-bundles generate <cluster_init_bundle_name> \
      --output cluster_init_bundle.yaml
    Copy to Clipboard
  • Operator インストール用のシークレットを含むクラスター初期化バンドルを生成するには、次のコマンドを実行します。

    $ roxctl -e "$ROX_CENTRAL_ADDRESS" \
      central init-bundles generate <cluster_init_bundle_name> \
      --output-secrets cluster_init_bundle.yaml
    Copy to Clipboard
    重要

    このバンドルにはシークレットが含まれているため、安全に保管してください。同じバンドルを使用して、複数のセキュアクラスターを設定できます。

6.2.3. 次のステップ

6.3. Kubernetes のセキュアクラスター用の init バンドルを適用する

init バンドルを使用してリソースを作成し、それを適用します。

6.3.1. init バンドルを使用したリソースの作成

セキュアなクラスターをインストールする前に、init バンドルを使用してクラスター上に必要なリソースを作成し、セキュアなクラスター上のサービスが RHACS Cloud Service と通信できるようにする必要があります。

注記

Helm チャートを使用してインストールする場合は、この手順を実行しないでください。Helm を使用してインストールを完了してください。関連情報セクションの「Helm チャートを使用したセキュアクラスターへの RHACS のインストール」を参照してください。

前提条件

  • シークレットを含む init バンドルを生成している必要があります。

手順

  • kubectl CLI を使用して、次のコマンドを実行してリソースを作成します。

    $ kubectl create namespace stackrox 
    1
    
    $ kubectl create -f <init_bundle>.yaml \ 
    2
    
      -n <stackrox> 
    3
    Copy to Clipboard
    1
    セキュアクラスターのリソースをインストールするプロジェクトを作成します。この例では stackrox を使用します。
    2
    シークレットを含む init バンドルのファイル名を指定します。
    3
    作成したプロジェクト名を指定します。この例では stackrox を使用します。

検証

  • 新しい証明書を取得するには、センサーを再起動します。

    Sensor を再起動する方法の詳細は、関連情報の「Sensor コンテナーの再起動」を参照してください。

6.3.2. 次のステップ

  • 監視するすべてのクラスターに RHACS のセキュアクラスターサービスをインストールします。

6.4. RHACS Cloud Service から Kubernetes クラスターに安全なクラスターサービスをインストールする

次のいずれかの方法を使用して、セキュアクラスターに RHACS Cloud Service をインストールできます。

  • Helm チャートを使用する
  • roxctl CLI を使用する (この方法を使用する必要がある特定のインストールが必要でない限り、この方法は使用しないでください)

6.4.1. Helm チャートを使用したセキュアクラスターへの RHACS Cloud Service のインストール

カスタマイズなしの Helm チャート、デフォルト値の Helm チャート、または設定パラメーターをカスタマイズした Helm チャートを使用して、セキュアクラスターにに RHACS をインストールできます。

最初に、Helm チャートリポジトリーを追加していることを確認します。

6.4.1.1. Helm チャートリポジトリーの追加

手順

  • RHACS チャートリポジトリーを追加します。

    $ helm repo add rhacs https://mirror.openshift.com/pub/rhacs/charts/
    Copy to Clipboard

Red Hat Advanced Cluster Security for Kubernetes の Helm リポジトリーには、異なるコンポーネントをインストールするための Helm チャートが含まれています。

  • クラスターおよびノードごとのコンポーネント (Sensor、Admission Controller、Collector、および Scanner-slim) をインストールするためのセキュリティー保護された Cluster Services Helm チャート (secure-cluster-services)。

    注記

    モニターする各クラスターにクラスターごとのコンポーネントをデプロイし、モニターするすべてのノードにノードごとのコンポーネントをデプロイします。

検証

  • 次のコマンドを実行して、追加されたチャートリポジトリーを確認します。

    $ helm search repo -l rhacs/
    Copy to Clipboard
6.4.1.2. カスタマイズせずに Helm チャートを使用してセキュアクラスターに RHACS Cloud Service をインストールする
6.4.1.2.1. カスタマイズせずに secured-cluster-services Helm チャートをインストールする

次の手順に従って、secure-cluster-services Helm チャートをインストールし、クラスターおよびノードごとのコンポーネント (Sensor、Admission controller、Collector、および Scanner-slim) をデプロイします。

注意

Unified Extensible Firmware Interface (UEFI) があり、Secure Boot が有効になっているシステムに Collector をインストールするには、カーネルモジュールが署名されておらず、UEFI ファームウェアが署名されていないパッケージをロードできないため、eBPF プローブを使用する必要があります。Collector は、開始時に Secure Boot ステータスを識別し、必要に応じて eBPF プローブに切り替えます。

前提条件

  • クラスターの RHACS init バンドルを生成しておく必要があります。
  • Red Hat Container Registry へのアクセス権と、認証用のプルシークレットが必要です。registry.redhat.io からイメージをダウンロードする方法は、Red Hat コンテナーレジストリーの認証 を参照してください。
  • アドレスとポート番号を含む Central API Endpoint が必要です。この情報を表示するには、クラウドコンソールのナビゲーションメニューから Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックします。

手順

  • Kubernetes ベースのクラスターで次のコマンドを実行します。

    $ helm install -n stackrox --create-namespace \
        stackrox-secured-cluster-services rhacs/secured-cluster-services \
        -f <path_to_cluster_init_bundle.yaml> \ 
    1
    
        -f <path_to_pull_secret.yaml> \ 
    2
    
        --set clusterName=<name_of_the_secured_cluster> \
        --set centralEndpoint=<endpoint_of_central_service> 
    3
    
        --set imagePullSecrets.username=<your redhat.com username> \
    4
    
        --set imagePullSecrets.password=<your redhat.com password>
    5
    Copy to Clipboard
    1
    -f オプションを使用して、init バンドルのパスを指定します。
    2
    -f オプションを使用して、Red Hat Container Registry 認証のプルシークレットのパスを指定します。
    3
    アドレスとポート番号を含む Central API エンドポイントを入力します。Advanced Cluster Security → ACS Instances を選択し、作成した ACS インスタンスをクリックすると、Red Hat Hybrid Cloud Console コンソールでこの情報を再度表示できます。
    4
    Red Hat Container Registry 認証のプルシークレットのユーザー名を含めます。
    5
    Red Hat Container Registry 認証のプルシークレットのパスワードを含めます。
6.4.1.3. カスタマイズした secured-cluster-services Helm チャートの設定

このセクションでは、helm install および helm upgrade コマンドで使用できる Helm チャート設定パラメーターについて説明します。これらのパラメーターは、--set オプションを使用するか、YAML 設定ファイルを作成することで指定できます。

以下のファイルを作成して、Red Hat Advanced Cluster Security for Kubernetes をインストールするための Helm チャートを設定します。

  • パブリック設定ファイル values-public.yaml: このファイルを使用して、機密性の低いすべての設定オプションを保存します。
  • プライベート設定ファイル values-private.yaml: このファイルを使用して、機密性の高いすべての設定オプションを保存します。このファイルは安全に保管してください。
重要

secured-cluster-services Helm チャートを使用している間は、チャートの一部である values.yaml ファイルを変更しないでください。

6.4.1.3.1. 設定パラメーター
パラメーター説明

clusterName

クラスターの名前です。

centralEndpoint

Central エンドポイントのアドレス (ポート番号を含む)。gRPC に対応していないロードバランサーを使用している場合は、エンドポイントアドレスの前に wss:// を付けて、WebSocket プロトコルを使用します。複数のクラスターを設定する場合は、アドレスにホスト名を使用します (例: central.example.com:443)。

sensor.endpoint

ポート番号を含む Sensor エンドポイントのアドレスです。

sensor.imagePullPolicy

Sensor コンテナーのイメージプルポリシーです。

sensor.serviceTLS.cert

Sensor が使用する内部サービス間の TLS 証明書です。

sensor.serviceTLS.key

Sensor が使用する内部サービス間 TLS 証明書キーです。

sensor.resources.requests.memory

Sensor コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.resources.requests.cpu

Sensor コンテナーの CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.resources.limits.memory

Sensor コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.resources.limits.cpu

Sensor コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

sensor.nodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Sensor をスケジュールするように強制します。

sensor.tolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Sensor の taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。

image.main.name

main イメージの名前です。

image.collector.name

Collector イメージの名前です。

image.main.registry

main イメージに使用しているレジストリーのアドレスです。

image.collector.registry

Collector イメージに使用しているレジストリーのアドレスです。

image.main.pullPolicy

main イメージのイメージプルポリシーです。

image.collector.pullPolicy

Collector イメージのイメージプルポリシーです。

image.main.tag

使用する main イメージのタグです。

image.collector.tag

使用する collector イメージのタグです。

collector.collectionMethod

EBPFCORE_BPF、または NO_COLLECTION のいずれかです。

collector.imagePullPolicy

Collector コンテナーのイメージプルポリシーです。

collector.complianceImagePullPolicy

Compliance コンテナーのイメージプルポリシーです。

collector.disableTaintTolerations

false を指定すると、許容値が Collector に適用され、Collector Pod は taint のあるすべてのノードにスケジュールできます。true として指定すると、許容値は適用されず、Collector Pod は taint のあるノードにスケジュールされません。

collector.resources.requests.memory

Collector コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.resources.requests.cpu

Collector コンテナーの CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.resources.limits.memory

Collector コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.resources.limits.cpu

Collector コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.requests.memory

Compliance コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.requests.cpu

Compliance の CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.limits.memory

Compliance コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.complianceResources.limits.cpu

Compliance コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

collector.serviceTLS.cert

Collector が使用する内部サービス間 TLS 証明書です。

collector.serviceTLS.key

Collector が使用する内部サービス間 TLS 証明書キーです。

admissionControl.listenOnCreates

この設定は、Kubernetes がワークロード作成イベントの AdmissionReview リクエストで Red Hat Advanced Cluster Security for Kubernetes に接続するように設定されているかどうかを制御します。

admissionControl.listenOnUpdates

このパラメーターを false に設定すると、Red Hat Advanced Cluster Security for Kubernetes は、Kubernetes API サーバーがオブジェクト更新イベントを送信しないように ValidatingWebhookConfiguration を作成します。オブジェクトの更新ボリュームは通常、オブジェクトが作成するボリュームよりも多いため、これを false のままにしておくと、アドミッションコントロールサービスのロードが制限され、アドミッションコントロールサービスが誤動作する可能性が低くなります。

admissionControl.listenOnEvents

この設定は、クラスターが Kubernetes exec および portforward イベントの AdmissionReview リクエストで Red Hat Advanced Cluster Security for Kubernetes に接続するように設定されているかどうかを制御します。Red Hat Advanced Cluster Security for Kubernetes は、OpenShift Container Platform 3.11 でこの機能をサポートしていません。詳細は、Red Hat Advanced Cluster Security for Kubernetes Support Policy を参照してください。

admissionControl.dynamic.enforceOnCreates

この設定は、Red Hat Advanced Cluster Security for Kubernetes がポリシーを評価するかどうかを制御します。無効にすると、すべての AdmissionReview リクエストが自動的に受け入れられます。

admissionControl.dynamic.enforceOnUpdates

この設定は、アドミッションコントロールサービスの動作を制御します。これを機能させるには、listenOnUpdatestrue として指定する必要があります。

admissionControl.dynamic.scanInline

このオプションを true に設定すると、アドミッションコントロールサービスは、アドミッションデシジョンを行う前にイメージスキャンをリクエストします。イメージスキャンには数秒かかるため、このオプションを有効にするのは、クラスターで使用されるすべてのイメージがデプロイ前にスキャンされることを確認できる場合のみです (たとえば、イメージビルド中の CI 統合によって)。このオプションは、RHACS ポータルの Contact image scanners オプションに対応しています。

admissionControl.dynamic.disableBypass

Admission コントローラーのバイパスを無効にするには、true に設定します。

admissionControl.dynamic.timeout

アドミッションレビューリクエストを評価する間、Red Hat Advanced Cluster Security for Kubernetes が待機する最大時間 (秒単位) です。これを使用して、イメージスキャンを有効にするときにリクエストのタイムアウトを設定します。イメージスキャンが指定された時間より長く実行される場合、Red Hat Advanced Cluster Security for Kubernetes はリクエストを受け入れます。

admissionControl.resources.requests.memory

Admission Control コンテナーのメモリーリクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.resources.requests.cpu

Admission Control コンテナーの CPU リクエストです。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.resources.limits.memory

Admission Control コンテナーのメモリー制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.resources.limits.cpu

Admission Control コンテナーの CPU 制限です。このパラメーターを使用して、デフォルト値をオーバーライドします。

admissionControl.nodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Admission Control をスケジュールするように強制します。

admissionControl.tolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、アドミッションコントロールの taint toleration キー、値、および effect を指定します。このパラメーターは、主にインフラストラクチャーノードに使用されます。

admissionControl.serviceTLS.cert

Admission Control が使用する内部サービス間 TLS 証明書です。

admissionControl.serviceTLS.key

Admission Control が使用する内部サービス間 TLS 証明書キーです。

registryOverride

このパラメーターを使用して、デフォルトの docker.io レジストリーをオーバーライドします。他のレジストリーを使用している場合は、レジストリーの名前を指定してください。

collector.disableTaintTolerations

false を指定すると、許容値が Collector に適用され、Collector Pod は taint のあるすべてのノードにスケジュールできます。true として指定した場合、許容値は適用されず、Collector Pod は taint のあるノードにスケジュールされません。

createUpgraderServiceAccount

sensor-upgrader アカウントを作成するには、true を指定します。デフォルトでは、Red Hat Advanced Cluster Security for Kubernetes は、各セキュアクラスターに sensor-upgrader という名前のサービスアカウントを作成します。このアカウントは高い権限を持ちますが、アップグレードの時のみ使用されます。このアカウントを作成しない場合、Sensor に十分な権限がない場合は、将来のアップグレードを手動で完了する必要があります。

createSecrets

false を指定すると、Sensor、Collector、および Admission コントローラーのオーケストレーターシークレットの作成がスキップされます。

collector.slimMode

Collector のデプロイに slim Collector イメージを使用する場合は、true を指定します。slim Collector イメージを使用するには、一致する eBPF プローブまたはカーネルモジュールを提供する必要があります。Red Hat Advanced Cluster Security for Kubernetes をオフラインモードで実行している場合、slim Collector を機能させるために、stackrox.io からカーネルサポートパッケージをダウンロードして Central にアップロードする必要があります。それ以外の場合は、Central が https://collector-modules.stackrox.io/ でホストされているオンラインプローブリポジトリーにアクセスできることを確認する必要があります。

sensor.resources

Sensor のリソース仕様です。

admissionControl.resources

Admission コントローラーのリソース仕様です。

collector.resources

Collector のリソース仕様です。

collector.complianceResources

Collector の Compliance コンテナーのリソース仕様です。

exposeMonitoring

このオプションを true に設定すると、Red Hat Advanced Cluster Security for Kubernetes がポート番号 9090 で Sensor、Collector、および Admission controller の Prometheus メトリクスエンドポイントを公開します。

auditLogs.disableCollection

このオプションを true に設定すると、Red Hat Advanced Cluster Security for Kubernetes は、設定マップとシークレットへのアクセスと変更を検出するために使用される監査ログ検出機能を無効にします。

scanner.disable

このオプションを false に設定すると、Red Hat Advanced Cluster Security for Kubernetes がセキュアクラスターに Scanner-slim と Scanner DB をデプロイし、OpenShift Container Registry 上のイメージをスキャンできるようにします。Scanner-slim の有効化は、OpenShift Container Platform および Kubernetes セキュアクラスターでサポートされています。デフォルトは true です。

scanner.dbTolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner DB の taint toleration キー、値、および effect を指定します。

scanner.replicas

Collector の Compliance コンテナーのリソース仕様です。

scanner.logLevel

このパラメーターを設定すると、Scanner のログレベルを変更できます。このオプションは、トラブルシューティングの目的でのみ使用してください。

scanner.autoscaling.disable

このオプションを true に設定すると、Red Hat Advanced Cluster Security for Kubernetes は Scanner のデプロイメントでの自動スケーリングを無効にします。

scanner.autoscaling.minReplicas

自動スケーリングのレプリカの最小数です。デフォルトは 2 です。

scanner.autoscaling.maxReplicas

自動スケーリングのレプリカの最大数です。デフォルトは 5 です。

scanner.nodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Scanner をスケジュールするように強制します。

scanner.tolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner の taint toleration キー、値、および effect を指定します。

scanner.dbNodeSelector

ノードセレクターのラベルを label-key: label-value の形式で指定して、指定したラベルを持つノードでのみ Scanner DB をスケジュールするように強制します。

scanner.dbTolerations

ノードセレクターが taint されたノードを選択する場合は、このパラメーターを使用して、Scanner DB の taint toleration キー、値、および effect を指定します。

scanner.resources.requests.memory

Scanner コンテナーのメモリー要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.resources.requests.cpu

Scanner コンテナーの CPU 要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.resources.limits.memory

Scanner コンテナーのメモリー制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.resources.limits.cpu

Scanner コンテナーの CPU 制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.requests.memory

Scanner DB コンテナーのメモリー要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.requests.cpu

Scanner DB コンテナーの CPU 要求。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.limits.memory

Scanner DB コンテナーのメモリー制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

scanner.dbResources.limits.cpu

Scanner DB コンテナーの CPU 制限。このパラメーターを使用して、デフォルト値をオーバーライドします。

monitoring.openshift.enabled

このオプションを false に設定すると、Red Hat Advanced Cluster Security for Kubernetes で Red Hat OpenShift モニタリングは設定されません。Red Hat OpenShift 4 では、デフォルトで true に設定されます。

6.4.1.3.1.1. 環境変数

Sensor および Admission コントローラーの環境変数は、次の形式で指定できます。

customize:
  envVars:
    ENV_VAR1: "value1"
    ENV_VAR2: "value2"
Copy to Clipboard

customize 設定を使用すると、この Helm チャートによって作成されたすべてのオブジェクトのカスタム Kubernetes メタデータ (ラベルとアノテーション) と、ワークロードの追加の Pod ラベル、Pod アノテーション、コンテナー環境変数を指定できます。

より一般的なスコープ (たとえば、すべてのオブジェクト) で定義されたメタデータを、より狭いスコープ (たとえば、Sensor デプロイメントのみ) で定義されたメタデータでオーバーライドできるという意味で、設定は階層的です。

6.4.1.3.2. secured-cluster-services Helm チャートのインストール

value-public.yaml ファイルと values-private.yaml ファイルを設定した後、secure-cluster-services Helm チャートをインストールして、クラスターごとおよびノードごとのコンポーネント (Sensor、Admission controller、Collector、および Scanner-slim) をデプロイします。

注意

Unified Extensible Firmware Interface (UEFI) があり、Secure Boot が有効になっているシステムに Collector をインストールするには、カーネルモジュールが署名されておらず、UEFI ファームウェアが署名されていないパッケージをロードできないため、eBPF プローブを使用する必要があります。Collector は、開始時に Secure Boot ステータスを識別し、必要に応じて eBPF プローブに切り替えます。

前提条件

  • クラスターの RHACS init バンドルを生成しておく必要があります。
  • Red Hat Container Registry へのアクセス権と、認証用のプルシークレットが必要です。registry.redhat.io からイメージをダウンロードする方法は、Red Hat コンテナーレジストリーの認証 を参照してください。
  • アドレスとポート番号を含む Central API Endpoint が必要です。この情報を表示するには、クラウドコンソールのナビゲーションメニューから Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックします。

手順

  • 以下のコマンドを実行します。

    $ helm install -n stackrox \
      --create-namespace stackrox-secured-cluster-services rhacs/secured-cluster-services \
      -f <name_of_cluster_init_bundle.yaml> \
      -f <path_to_values_public.yaml> -f <path_to_values_private.yaml> \ 
    1
    
      --set imagePullSecrets.username=<username> \ 
    2
    
      --set imagePullSecrets.password=<password> 
    3
    Copy to Clipboard
    1
    -f オプションを使用して、YAML 設定ファイルのパスを指定します。
    2
    Red Hat Container Registry 認証のプルシークレットのユーザー名を含めます。
    3
    Red Hat Container Registry 認証のプルシークレットのパスワードを含めます。
注記

継続的インテグレーション (CI) システムを使用して secured-cluster-services Helm チャートをデプロイするには、init バンドル YAML ファイルを環境変数として helm install コマンドに渡します。

$ helm install ... -f <(echo "$INIT_BUNDLE_YAML_SECRET") 
1
Copy to Clipboard
1
base64 でエンコードされた変数を使用している場合は、代わりに helm install …​ -f <(echo "$INIT_BUNDLE_YAML_SECRET" | base64 --decode) コマンドを使用してください。
6.4.1.4. secured-cluster-services Helm チャートをデプロイした後の設定オプションの変更

secure-cluster-services Helm チャートをデプロイした後、任意の設定オプションに変更を加えることができます。

手順

  1. values-public.yaml および values-private.yaml 設定ファイルを新しい値で更新します。
  2. helm upgrade コマンドを実行し、-f オプションを使用して設定ファイルを指定します。

    $ helm upgrade -n stackrox \
      stackrox-secured-cluster-services rhacs/secured-cluster-services \
      --reuse-values \ 
    1
    
      -f <path_to_values_public.yaml> \
      -f <path_to_values_private.yaml>
    Copy to Clipboard
    1
    --reuse-values パラメーターを指定する必要があります。指定しない場合、Helm upgrade コマンドは以前に設定されたすべての設定をリセットします。
    注記

    --set または --set-file パラメーターを使用して設定値を指定することもできます。ただし、これらのオプションは保存されないため、変更を加えるたびにすべてのオプションを手動で再度指定する必要があります。

6.4.2. roxctl CLI を使用したセキュアなクラスターへの RHACS のインストール

CLI を使用してセキュアクラスターに RHACS をインストールするには、次の手順を実行します。

  1. roxctl CLI をインストールします。
  2. Sensor を取り付けます。
6.4.2.1. roxctl CLI のインストール

最初にバイナリーをダウンロードする必要があります。roxctl は、Linux、Windows、または macOS にインストールできます。

6.4.2.1.1. Linux への roxctl CLI のインストール

次の手順を使用して、Linux に roxctl CLI バイナリーをインストールできます。

注記

Linux 用の roxctl CLI は、amd64ppcl64le、および s390x アーキテクチャーで使用できます。

手順

  1. ターゲットのオペレーティングシステムの roxctl アーキテクチャーを確認します。

    $ arch="$(uname -m | sed "s/x86_64//")"; arch="${arch:+-$arch}"
    Copy to Clipboard
  2. roxctl CLI をダウンロードします。

    $ curl -f -o roxctl "https://mirror.openshift.com/pub/rhacs/assets/4.3.8/bin/Linux/roxctl${arch}"
    Copy to Clipboard
  3. roxctl バイナリーを実行可能にします。

    $ chmod +x roxctl
    Copy to Clipboard
  4. PATH 上にあるディレクトリーに roxctl バイナリーを配置します。

    PATH を確認するには、以下のコマンドを実行します。

    $ echo $PATH
    Copy to Clipboard

検証

  • インストールした roxctl のバージョンを確認します。

    $ roxctl version
    Copy to Clipboard
6.4.2.1.2. macOS への roxctl CLI のインストール

次の手順を使用して、roxctl CLI バイナリーを macOS にインストールできます。

注記

macOS 用の roxctl CLI は、amd64 アーキテクチャーで利用できます。

手順

  1. roxctl CLI をダウンロードします。

    $ curl -f -O https://mirror.openshift.com/pub/rhacs/assets/4.3.8/bin/Darwin/roxctl
    Copy to Clipboard
  2. バイナリーからすべての拡張属性を削除します。

    $ xattr -c roxctl
    Copy to Clipboard
  3. roxctl バイナリーを実行可能にします。

    $ chmod +x roxctl
    Copy to Clipboard
  4. PATH 上にあるディレクトリーに roxctl バイナリーを配置します。

    PATH を確認するには、以下のコマンドを実行します。

    $ echo $PATH
    Copy to Clipboard

検証

  • インストールした roxctl のバージョンを確認します。

    $ roxctl version
    Copy to Clipboard
6.4.2.1.3. Windows への roxctl CLI のインストール

次の手順を使用して、roxctl CLI バイナリーを Windows にインストールできます。

注記

Windows 用の roxctl CLI は、amd64 アーキテクチャーで使用できます。

手順

  • roxctl CLI をダウンロードします。

    $ curl -f -O https://mirror.openshift.com/pub/rhacs/assets/4.3.8/bin/Windows/roxctl.exe
    Copy to Clipboard

検証

  • インストールした roxctl のバージョンを確認します。

    $ roxctl version
    Copy to Clipboard
6.4.2.2. Sensor のインストール

クラスターをモニターするには、Sensor をデプロイする必要があります。モニターする各クラスターに Sensor をデプロイする必要があります。次の手順では、RHACS ポータルを使用して Sensor を追加する方法について説明します。

前提条件

  • Central サービスをすでにインストールしている必要があります。または、Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) で ACS インスタンス を選択して Central サービスにアクセスできます。

手順

  1. セキュアなクラスターの RHACS ポータルで、Platform ConfigurationClusters に移動します。
  2. +NewCluster を選択します。
  3. クラスターの名前を指定します。
  4. Sensor をデプロイする場所に基づいて、フィールドに適切な値を入力します。

    • アドレスとポート番号を含む Central API エンドポイントを入力します。Advanced Cluster SecurityACS Instances を選択し、作成した ACS インスタンスをクリックすると、Red Hat Hybrid Cloud Console でこの情報を再度表示できます。
  5. Next をクリックして、Sensor のセットアップを続行します。
  6. Download YAML File and Keys をクリックして、クラスターバンドル (zip アーカイブ) をダウンロードします。

    重要

    クラスターバンドルの zip アーカイブには、クラスターごとに固有の設定とキーが含まれています。同じファイルを別のクラスターで再利用しないでください。

  7. モニター対象クラスターにアクセスできるシステムから、クラスターバンドルから sensor スクリプトを解凍して実行します。

    $ unzip -d sensor sensor-<cluster_name>.zip
    Copy to Clipboard
    $ ./sensor/sensor.sh
    Copy to Clipboard

    Sensor をデプロイするために必要な権限がないという警告が表示された場合は、画面の指示に従うか、クラスター管理者に連絡して支援を求めてください。

Sensor はデプロイされた後、Central に接続し、クラスター情報を提供します。

検証

  1. RHACS ポータルに戻り、デプロイメントが成功したかどうかを確認します。成功した場合、Platform ConfigurationClusters でクラスターのリストを表示すると、クラスターのステータスに緑色のチェックマークと Healthy ステータスが表示されます。緑色のチェックマークが表示されない場合は、次のコマンドを使用して問題を確認してください。

    • Kubernetes で、次のコマンドを入力します。

      $ kubectl get pod -n stackrox -w
      Copy to Clipboard
  2. Finish をクリックしてウィンドウを閉じます。

インストール後、Sensor はセキュリティー情報の RHACS へのレポートを開始し、RHACS ポータルダッシュボードは、Sensor をインストールしたクラスターからのデプロイメント、イメージ、およびポリシー違反を表示し始めます。

6.5. セキュアクラスターのインストールの検証

RHACS Cloud Service をインストールした後、いくつかの手順を実行して、インストールが成功したことを確認できます。

インストールを確認するには、Red Hat Hybrid Cloud Console から ACS コンソールにアクセスします。ダッシュボードには、ノード、デプロイメント、イメージ、および違反に関する情報とともに、RHACS Cloud Service がモニタリングしているクラスターの数が表示されます。

ACS コンソールにデータが表示されない場合:

  • 1 つ以上のセキュアクラスターが RHACS Cloud Service インスタンスに接続されていることを確認します。詳細は、Helm チャート または roxctl CLI を使用して、インストール手順を参照してください。
  • Sensor Pod のログを調べて、RHACS Cloud Service インスタンスへの接続が成功していることを確認します。
  • ローカルクラスターの Operator で SecuredCluster API の値を調べて、Central API エンドポイント が正しく入力されていることを確認します。この値は、Red Hat Hybrid Cloud Console の ACS インスタンス の詳細に表示される値と同じである必要があります。

法律上の通知

Copyright © 2024 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat