アーキテクチャー
システムアーキテクチャー
概要
第1章 Red Hat Advanced Cluster Security for Kubernetes アーキテクチャー
ここでは、Red Hat Advanced Cluster Security for Kubernetes のアーキテクチャーと概念を説明します。
1.1. Red Hat Advanced Cluster Security for Kubernetes アーキテクチャーの概要
Red Hat Advanced Cluster Security for Kubernetes (RHACS) は、大規模なデプロイメントに対応した分散アーキテクチャーを使用しており、基盤となる OpenShift Container Platform ノードまたは Kubernetes ノードへの影響を最小限に抑えるように最適化されています。
図1.1 Red Hat Advanced Cluster Security for Kubernetes の Kubernetes 向けアーキテクチャー

RHACS を Kubernetes 上と OpenShift Container 上にインストールする場合のアーキテクチャーはわずかに異なります。ただし、基盤となるコンポーネントとそれらの間のインタラクションは同じままです。
OpenShift Container Platform または Kubernetes クラスターにコンテナーセットとして RHACS をインストールします。RHACS には以下が含まれます。
- 1 つのクラスターにインストールする Central サービス。
- RHACS でセキュリティーを保護する各クラスターにインストールするセキュアなクラスターサービス。
これらの主要サービスに加え、RHACS は他の外部コンポーネントとも対話して、クラスターのセキュリティーを強化します。
1.2. Central サービス
単一のクラスターに Central サービスをインストールします。これらのサービスには、Central、Central DB、および Scanner の 3 つの主要コンポーネントが含まれます。
- Central: RHACS アプリケーション管理インターフェイスおよびサービスです。API 対話とユーザーインターフェイス (RHACS ポータル) アクセスを処理します。同じ Central インスタンスを使用して、複数の OpenShift Container Platform または Kubernetes クラスターをセキュリティー保護できます。
- Central DB: Central DB は RHACS のデータベースで、すべてのデータ永続性を処理します。現在、PostgreSQL 13 をベースにしています。
Scanner: Red Hat が開発および認定した、コンテナーイメージをスキャンするための脆弱性スキャナーです。Scanner は次の機能を実行します。
- すべてのイメージレイヤーを分析して、Common Vulnerabilities and Exposures (CVE) リストから既知の脆弱性をチェックします。
- インストールされているパッケージの脆弱性と、複数のプログラミング言語の依存関係を特定します。コンテナーイメージのスキャンに加え、ノードのオペレーティングシステムとオーケストレーターの脆弱性を特定します。たとえば、ノードをスキャンして、Kubernetes、OpenShift Container Platform、Istio の脆弱性を特定します。
1.3. セキュアなクラスターサービス
RHACS クラウドサービスを使用して、セキュリティー保護する各クラスターに、セキュアなクラスターサービスをインストールします。セキュリティー保護されたクラスターサービスには、次のコンポーネントが含まれます。
- Sensor: クラスターの分析と監視を行うサービスです。OpenShift Container Platform または Kubernetes API および Collector イベントをリッスンして、クラスターの現在の状態を報告します。RHACS Cloud Service ポリシーに基づき、デプロイタイムおよびランタイムの違反もトリガーします。さらに、ネットワークポリシーの適用、RHACS Cloud Service ポリシーの再処理の開始、Admission Controller との対話など、すべてのクラスターの対話も担当します。
- Admission Controller: ユーザーが RHACS Cloud Service のセキュリティーポリシーに違反するワークロードを作成するのを防ぎます。
- Collector: クラスターノード上のコンテナーアクティビティーを分析および監視します。コンテナーのランタイムとネットワークアクティビティーの情報を収集し、収集したデータを Sensor に送信します。
- Scanner: Kubernetes では、セキュアなクラスターサービスには、オプションのコンポーネントとして Scanner-slim が含まれています。ただし、OpenShift Container Platform では、RHACS Cloud Service は、セキュアなクラスターごとにスキャナースリムバージョンをインストールして、OpenShift Container Platform 統合レジストリーおよびオプションで他のレジストリー内のイメージをスキャンします。
1.4. 外部コンポーネント
Red Hat Advanced Cluster Security for Kubernetes (RHACS) は、以下の外部コンポーネントと対話します。
- サードパーティーシステム: RHACS を、CI/CD パイプライン、イベント管理 (SIEM) システム、ロギング、電子メールなどの他のシステムと統合できます。
-
roxctl
:roxctl
は、RHACS でコマンドを実行するためのコマンドラインインターフェイス (CLI) です。 - イメージレジストリー: RHACS をさまざまなイメージレジストリーと統合し、RHACS を使用してイメージをスキャンおよび表示できます。RHACS は、セキュアなクラスターで検出されたイメージプルシークレットを使用して、アクティブなイメージのレジストリー統合を自動的に設定します。ただし、非アクティブなイメージをスキャンするには、レジストリー統合を手動で設定する必要があります。
-
definitions.stackrox.io
: RHACS は、definitions.stackrox.io
エンドポイントでさまざまな脆弱性フィードからのデータを集約し、この情報を Central に渡します。フィードには、一般的な National Vulnerability Database (NVD) データと、Alpine、Debian、Ubuntu などのディストリビューション固有のデータが含まれます。 -
collector-modules.stackrox.io
: Central は、collector-modules.stackrox.io
にアクセスして、サポートされているカーネルモジュールを取得し、これらのモジュールを Collector に渡します。
1.5. OpenShift Container Platform と Kubernetes にインストールした場合のアーキテクチャーの違い
RHACS を OpenShift Container Platform にインストールする場合、アーキテクチャー上の違いは 2 つだけです。
- Operator または Helm インストール方法を使用して OpenShift Container Platform に RHACS をインストールすると、RHACS はすべてのセキュアなクラスターに Scanner の軽量バージョンをインストールします。軽量 Scanner は、統合された OpenShift Container Registry (OCR) 内のイメージのスキャンを可能にします。
- Sensor は、Central をインストールしたクラスター内の Scanner と通信します。この接続により、クラスターに接続されている内部レジストリーにアクセスできます。
図1.2 Red Hat Advanced Cluster Security for Kubernetes の OpenShift Container Platform 向けアーキテクチャー

1.6. サービス間の対話
このセクションでは、RHACS サービスがどのように対話するかを説明します。
コンポーネント | 方向 | 対話先 | 説明 |
---|---|---|---|
Central | ⮂ | スキャナー | Central とスキャナーの間の双方向通信です。Central はスキャナーにイメージスキャンを要求し、スキャナーは Central に CVE データベースの更新を要求します。 |
Central | ➞ |
|
Central は、 |
Central | ➞ |
|
Central は、サポートされているカーネルモジュールを |
Central | ➞ | イメージレジストリー | Central はイメージレジストリーにクエリーを実行して、イメージメタデータを取得します。たとえば、RHACS ポータルで Dockerfile の手順を表示します。 |
スキャナー | ➞ | イメージレジストリー | Scanner はイメージレジストリーからイメージをプルして、脆弱性を特定します。 |
Sensor | ⮂ | Central | Central と Sensor 間の双方向通信です。Sensor は、Sensor バンドル設定の更新をダウンロードするために定期的に Central をポーリングします。また、セキュアなクラスターで観察されたアクティビティーと観察されたポリシー違反のイベントも送信します。Central は Sensor と通信して、有効なポリシーに対してすべてのデプロイメントの再処理を強制します。 |
Sensor | ⮂ | スキャナー |
OpenShift Container Platform でのみ、Sensor は Scanner と通信して、クラスターに接続されたローカルレジストリーにアクセスします。Scanner は Sensor と通信して、 |
Collector | ⮂ | Sensor | Collector は Sensor と通信し、すべてのイベントをクラスターのそれぞれの Sensor に送信します。サポートされる OpenShift Container Platform クラスターでは、Collector はノードにインストールされているソフトウェアパッケージを分析し、それらを Sensor に送信して、後で脆弱性の有無をスキャンできるようにします。Collector は、不明ドライバーも Sensor に要求します。Sensor は、Collector にコンプライアンススキャン結果を要求します。さらに Sensor は、Central から外部の Classless Inter-Domain Routing 情報を受け取り、それを Collector にプッシュします。 |
Admission controller | ⮂ | Sensor | Sensor は、適用するセキュリティーポリシーのリストを Admission controller に送信します。Admission controller は、セキュリティーポリシー違反アラートを Sensor に送信します。Admission controller は、必要に応じて Sensor にイメージスキャンを要求することもできます。 |
Admission controller | ➞ | Central | これは一般的ではありません。ただし、Central エンドポイントが判明しており、かつ Sensor が使用できない場合、Admission controller は Central と直接通信できます。 |
第2章 Red Hat Advanced Cluster Security Cloud Service アーキテクチャー
Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) のアーキテクチャーと概念について説明します。
2.1. Red Hat Advanced Cluster Security Cloud Service アーキテクチャーの概要
Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) は、ビルド、デプロイ、ランタイムのライフサイクル全体にわたって Kubernetes および OpenShift Container Platform クラスターとアプリケーションを保護できる Red Hat 管理の Software-as-a-Service (SaaS) プラットフォームです。。
RHACS Cloud Service には、Center for Internet Security (CIS) ベンチマークや National Institute of Standards Technology (NIST) ガイドラインなどの業界標準に基づいた、多くの組み込みの DevOps 強制制御とセキュリティーに重点を置いたベストプラクティスが含まれています。また、既存の DevOps ツールおよびワークフローと統合して、セキュリティーとコンプライアンスを向上させることもできます。
図2.1 RHACS Cloud Service アーキテクチャー

Central サービスには、ユーザーインターフェイス (UI)、データストレージ、RHACS アプリケーションプログラミングインターフェイス (API)、およびイメージスキャン機能が含まれます。Central サービスは Red Hat Hybrid Cloud Console を通じてデプロイします。新しい ACS インスタンスを作成すると、Red Hat は RHACS 用の個別のコントロールプレーンを作成します。
RHACS Cloud Service を使用すると、Central インスタンスと通信する自己管理型クラスターを保護できます。保護されたクラスター (セキュアなクラスターと呼ばれます) は、Red Hat ではなく、お客様によって管理されます。セキュアなクラスターサービスには、オプションの脆弱性スキャンサービス、アドミッションコントロールサービス、実行時の監視とコンプライアンスに使用されるデータ収集サービスが含まれます。セキュアなクラスターサービスは、保護する OpenShift または Kubernetes クラスターにインストールします。
2.2. Central
Red Hat は、RHACS Cloud Service のコントロールプレーンである Central を管理します。Central、Central DB、Scanner の 3 つの主要コンポーネントが含まれています。
- Central: Central は、RHACS Cloud Service のアプリケーション管理インターフェイスおよびサービスです。API 対話とユーザーインターフェイスアクセスを管理します。同じ Central インスタンスを使用して、複数の OpenShift Container Platform または Kubernetes クラスターをセキュリティー保護できます。
- Central DB: 中央 DB は RHACS Cloud Service のデータベースであり、すべてのデータの永続化を処理します。現在、PostgreSQL 13 をベースにしています。
Scanner: Red Hat が開発および認定した、コンテナーイメージをスキャンするための脆弱性スキャナーです。Scanner は次の機能を実行します。
- すべてのイメージレイヤーを分析して、Common Vulnerabilities and Exposures (CVE) リストから既知の脆弱性をチェックします。
- インストールされているパッケージの脆弱性と、複数のプログラミング言語の依存関係を特定します。コンテナーイメージのスキャンに加え、ノードのオペレーティングシステムとオーケストレーターの脆弱性も特定します。たとえば、ノードをスキャンして、Kubernetes、OpenShift Container Platform、Istio の脆弱性を特定します。
2.3. セキュアなクラスターサービス
RHACS クラウドサービスを使用して、セキュリティー保護する各クラスターに、セキュアなクラスターサービスをインストールします。セキュリティー保護されたクラスターサービスには、次のコンポーネントが含まれます。
- Sensor: クラスターの分析と監視を行うサービスです。OpenShift Container Platform または Kubernetes API および Collector イベントをリッスンして、クラスターの現在の状態を報告します。RHACS Cloud Service ポリシーに基づき、デプロイタイムおよびランタイムの違反もトリガーします。さらに、ネットワークポリシーの適用、RHACS Cloud Service ポリシーの再処理の開始、Admission Controller との対話など、すべてのクラスターの対話も担当します。
- Admission Controller: ユーザーが RHACS Cloud Service のセキュリティーポリシーに違反するワークロードを作成するのを防ぎます。
- Collector: クラスターノード上のコンテナーアクティビティーを分析および監視します。コンテナーのランタイムとネットワークアクティビティーの情報を収集し、収集したデータを Sensor に送信します。
- Scanner: Kubernetes では、セキュアなクラスターサービスには、オプションのコンポーネントとして Scanner-slim が含まれています。ただし、OpenShift Container Platform では、RHACS Cloud Service は、セキュアなクラスターごとにスキャナースリムバージョンをインストールして、OpenShift Container Platform 統合レジストリーおよびオプションで他のレジストリー内のイメージをスキャンします。
関連情報
2.4. データアクセスとパーミッション
Red Hat は、セキュリティーで保護されたクラスターサービスをインストールするクラスターにアクセスできません。また、RHACS Cloud Service には、セキュリティー保護されたクラスターにアクセスするための権限は必要ありません。たとえば、新しい IAM ポリシー、アクセスロール、または API トークンを作成する必要はありません。
ただし、RHACS Cloud Service は、セキュアなクラスターサービスが送信するデータを保存します。すべてのデータは RHACS Cloud Service 内で暗号化されます。RHACS Cloud Service プラットフォーム内のデータの暗号化は、データの機密性と整合性を確保するのに役立ちます。
セキュアなクラスターサービスをクラスターにインストールすると、データが生成され、RHACS Cloud Service に送信されます。このデータは RHACS Cloud Service プラットフォーム内で安全に保管され、認可された SRE チームメンバーとシステムのみがこのデータにアクセスできます。RHACS Cloud Service は、このデータを使用してクラスターとアプリケーションのセキュリティーとコンプライアンスを監視し、デプロイメントの最適化に役立つ貴重な見解と分析を提供します。