検索

4.5. Operator を使用した RHACS のセキュアクラスターサービスオプションの設定

download PDF

Operator を使用してセキュアクラスターサービスをインストールする場合、オプションの設定を指定できます。

4.5.1. セキュアクラスターサービスの設定オプション

Central インスタンスを作成すると、Operator は Central カスタムリソースの次の設定オプションをリスト表示します。

4.5.1.1. 必要な設定

パラメーター説明

centralEndpoint

ポート番号を含む、接続する Central インスタンスのエンドポイント。gRPC に対応していないロードバランサーを使用している場合は、エンドポイントアドレスの前に wss:// を付けて、WebSocket プロトコルを使用します。このパラメーターの値を指定しなかった場合、Sensor が同じ namespace で実行されている Central インスタンスへの接続を試行します。

clusterName

RHACS ポータルに表示されるこのクラスターの一意の名前。このパラメーターを使用して名前を設定した後、名前を再度変更することはできません。名前を変更するには、オブジェクトを削除して再作成する必要があります。

4.5.1.2. Admission コントローラーの設定

パラメーター説明

admissionControl.listenOnCreates

オブジェクト作成の予防ポリシーの適用を有効にするには、true を指定します。デフォルト値は true です。

admissionControl.listenOnEvents

true を指定すると、port-forward イベントや exec イベントなどの Kubernetes イベントのモニタリングと適用が有効になります。これは、Kubernetes API を介してリソースへのアクセスを制御するために使用されます。デフォルト値は true です。

admissionControl.listenOnUpdates

オブジェクトの更新に対する予防ポリシーの適用を有効にするには、true を指定します。Listen On Createstrue に設定されていない限り、効果はありません。デフォルト値は true です。

admissionControl.nodeSelector

このコンポーネントを特定のノードでのみ実行する場合は、このパラメーターを使用してノードセレクターを設定できます。

admissionControl.tolerations

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

admissionControl.resources.limits

このパラメーターを使用して、アドミッションコントローラーのデフォルトのリソース制限をオーバーライドします。

admissionControl.resources.requests

このパラメーターを使用して、アドミッションコントローラーのデフォルトのリソースリクエストをオーバーライドします。

admissionControl.bypass

以下のいずれかの値を使用して、Admission コントローラー適用のバイパスを設定します。

  • BreakGlassAnnotation: admission.stackrox.io/break-glass アノテーションを使用したアドミッションコントローラーのバイパスを有効にします。
  • Disabled は、セキュアクラスターのアドミッションコントローラー適用をバイパスする機能を無効にします。

デフォルト値は BreakGlassAnnotation です。

admissionControl.contactImageScanners

次のいずれかの値を使用して、アドミッションコントローラーをイメージ Scanner に接続する必要があるかどうかを指定します。

  • ScanIfMissing は、イメージのスキャン結果が欠落している場合です。
  • DoNotScanInline は、アドミッションリクエストのプロセス時にイメージのスキャンをスキップします。

デフォルト値は DoNotScanInline です。

admissionControl.timeoutSeconds

このパラメーターを使用して、Red Hat Advanced Cluster Security for Kubernetes がフェールオープンとしてマークする前にアドミッションレビューを待機する必要がある最大秒数を指定します。

4.5.1.3. Scanner 設定

Scanner 設定を使用して、統合 OpenShift イメージレジストリーのローカルクラスター Scanner を変更します。

パラメーター説明

scanner.analyzer.nodeSelector

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

scanner.analyzer.resources.requests.memory

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

scanner.analyzer.resources.requests.cpu

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

scanner.analyzer.resources.limits.memory

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

scanner.analyzer.resources.limits.cpu

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

scanner.analyzer.scaling.autoscaling

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

scanner.analyzer.scaling.minReplicas

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

scanner.analyzer.scaling.maxReplicas

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

scanner.analyzer.scaling.replicas

レプリカのデフォルト数。デフォルト値は 3 です。

scanner.analyzer.tolerations

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

scanner.db.nodeSelector

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

scanner.db.resources.requests.memory

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

scanner.db.resources.requests.cpu

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

scanner.db.resources.limits.memory

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

scanner.db.resources.limits.cpu

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

scanner.db.tolerations

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

scanner.scannerComponent

このオプションを Disabled に設定すると、Red Hat Advanced Cluster Security for Kubernetes は Scanner デプロイメントをデプロイしません。OpenShift Container Platform クラスターで Scanner を無効にしないでください。デフォルト値は AutoSense です。

scannerV4.db.nodeSelector

このコンポーネントを特定のノードでのみ実行する場合は、このパラメーターを使用してノードセレクターを設定できます。

scannerV4.db.tolerations

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

scannerV4.db.resources.limits

このパラメーターを使用して、Scanner V4 DB のデフォルトのリソース制限をオーバーライドします。

scannerV4.db.resources.requests

このパラメーターを使用して、Scanner V4 DB のデフォルトのリソース要求をオーバーライドします。

scannerV4.db.persistence.persistentVolumeClaim.claimName

Scanner V4 の永続データを管理する PVC の名前。指定した名前の PVC が存在しない場合は、PVC が作成されます。設定されていない場合、デフォルト値は scanner-v4-db です。データ損失を防ぐため、Central が削除されても PVC は自動的に削除されません。

scannerV4.indexer.nodeSelector

このコンポーネントを特定のノードでのみ実行する場合は、このパラメーターを使用してノードセレクターを設定できます。

scannerV4.indexer.tolerations

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

scannerV4.indexer.resources.limits

このパラメーターを使用して、Scanner V4 Indexer のデフォルトのリソース制限をオーバーライドします。

scannerV4.indexer.resources.requests

このパラメーターを使用して、Scanner V4 Indexer のデフォルトのリソース要求をオーバーライドします。

scannerV4.indexer.scaling.autoScaling

有効にすると、Scanner V4 Indexer のレプリカの数が、指定された制限内で負荷に基づいて動的に管理されます。

scannerV4.indexer.scaling.maxReplicas

Scanner V4 Indexer の自動スケーリング設定で使用されるレプリカの最大数を指定します。

scannerV4.indexer.scaling.minReplicas

Scanner V4 Indexer の自動スケーリング設定で使用するレプリカの最小数を指定します。

scannerV4.indexer.scaling.replicas

Scanner V4 Indexer の自動スケーリングが無効になっている場合、レプリカの数が常にこの値と一致するように設定されます。

scannerV4.monitoring.exposeEndpoint

Scanner V4 のモニタリングエンドポイントを設定します。モニタリングエンドポイントを使用すると、Prometheus 互換形式で提供されるメトリクスを、他のサービスが Scanner V4 から収集できるようになります。モニタリングエンドポイントを公開するには、Enabled を使用します。モニタリングを有効にすると、RHACS がポート 9090 に新しいサービス (monitoring) を作成し、そのポートへの受信接続を許可するネットワークポリシーを作成します。デフォルトでは、これは有効になっていません。

scannerV4.scannerComponent

Scanner V4 を有効にします。デフォルト値は default で、このパラメーターは無効になっています。Scanner V4 を有効にするには、このパラメーターを Enabled に設定します。

4.5.1.4. イメージ設定

カスタムレジストリーを使用している場合は、イメージ設定を使用します。

パラメーター説明

imagePullSecrets.name

イメージをプルするために考慮される追加のイメージプルシークレット。

4.5.1.5. ノードごとの設定

ノードごとの設定は、クラスターをセキュリティー保護するためにクラスター内の各ノードで実行されるコンポーネントの設定を定義します。これらのコンポーネントは、Collector と Compliance です。

パラメーター説明

perNode.collector.collection

システムレベルのデータ収集の方法。デフォルト値は CORE_BPF です。Red Hat は、データ収集に CORE_BPF を使用することを推奨します。NoCollection を選択した場合、Collector からネットワークアクティビティーおよびプロセス実行に関する情報は報告されません。使用可能なオプションは、NoCollectionEBPF、および CORE_BPF です。

注記

Red Hat は EBPF オプションを非推奨にして、今後のバージョンから削除する予定です。代わりに CORE_BPF を使用してください。

perNode.collector.imageFlavor

Collector に使用するイメージのタイプ。Regular または Slim として指定できます。Regular イメージは、サイズが大きくなりますが、ほとんどのカーネルのカーネルモジュールを含んでいます。Slim イメージタイプを使用する場合は、Central インスタンスがインターネットに接続されていること、または Collector サポートパッケージの更新を定期的に受信していることを確認する必要があります。デフォルト値は Slim です。

perNode.collector.resources.limits

このパラメーターを使用して、Collector のデフォルトのリソース制限をオーバーライドします。

perNode.collector.resources.requests

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

perNode.compliance.resources.requests

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

perNode.compliance.resources.limits

このパラメーターを使用して、Compliance のデフォルトのリソース制限をオーバーライドします。

perNode.taintToleration

クラスターアクティビティーを包括的にモニタリングするために、Red Hat Advanced Cluster Security for Kubernetes は、デフォルトで taint されたノードを含む、クラスター内のすべてのノードでサービスを実行します。この動作を望まない場合は、このパラメーターに AvoidTaints を指定してください。デフォルト値は TolerateTaints です。

4.5.1.6. Sensor 設定

この設定は、クラスター内の 1 つのノードで実行される Sensor コンポーネントの設定を定義します。

パラメーター説明

sensor.nodeSelector

Sensor を特定のノードでのみ実行する場合は、ノードセレクターを設定できます。

sensor.tolerations

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

sensor.resources.limits

このパラメーターを使用して、Sensor のデフォルトのリソース制限をオーバーライドします。

sensor.resources.requests

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

4.5.1.7. 一般およびその他の設定

パラメーター説明

tls.additionalCAs

セキュアクラスター用の追加の信頼できる CA 証明書。これらの証明書は、プライベート認証局を使用してサービスと統合するときに使用されます。

misc.createSCCs

Central の SCC を作成するには、これを true に設定します。一部の環境では問題が発生する可能性があります。

customize.annotations

Central デプロイメントのカスタムアノテーションを指定できます。

customize.envVars

環境変数を設定するための詳細設定。

egress.connectivityPolicy

Red Hat Advanced Cluster Security for Kubernetes をオンラインモードとオフラインモードのどちらで実行するかを設定します。オフラインモードでは、脆弱性定義とカーネルモジュールの自動更新は無効になります。

overlays

「Operator とオーバーレイを使用したインストールのカスタマイズ」を参照してください。

4.5.2. Operator とオーバーレイを使用したインストールのカスタマイズ

Operator とオーバーレイを使用して RHACS のインストールを調整する方法を説明します。

4.5.2.1. オーバーレイ

Central または SecuredCluster のカスタムリソースが特定の低レベル設定オプションをパラメーターとして公開していない場合は、.spec.overlays フィールドを使用して調整できます。このフィールドを使用して、これらのカスタムリソースによって生成された Kubernetes リソースを修正します。

.spec.overlays フィールドは一連のパッチで構成されます。パッチはフィールド内のリストの順序で適用されます。これらのパッチは、デプロイメントがクラスターに送信される前に、Kubernetes リソース上で Operator によって処理されます。

警告

CentralSecuredCluster の両方の .spec.overlays フィールドを使用すると、ユーザーは任意の方法で低レベルの Kubernetes リソースを変更できます。この機能は、SecuredCluster または Central カスタムリソースを通じて必要なカスタマイズが利用できない場合にのみ使用してください。

.spec.overlays 機能のサポートは限定的です。その主な理由は、この機能が Kubernetes リソースに複雑かつ非常に詳細な変更を加える権限を付与することにあります。Kubernetes リソースは、実装ごとに大幅に異なる場合があります。このレベルのカスタマイズを行うと、標準的な使用シナリオの範囲を超える複雑さが生じるため、広範なサポートを提供することが困難になります。場合によっては、固有の変更を行うことになり、製品のさまざまなバージョンや設定に応じて、Kubernetes システムに予期しない影響が発生する可能性があります。このような変動性があるため、このレベルのカスタマイズのトラブルシューティングを実施し、安定性を確保するには、各個人のセットアップに応じた一定レベルの専門知識と理解が必要です。そのため、この機能を使用すると、ニーズに合わせて的確に Kubernetes リソースを調整できる一方で、特に基盤となる製品のアップグレード変更時には、設定の互換性と安定性を確保するために、より大きな責任を担うことが要求されます。

次の例は、オーバーレイの構造を示しています。

overlays:
- apiVersion: v1     1
  kind: ConfigMap    2
  name: my-configmap 3
  patches:
    - path: .data    4
      value: |       5
        key1: data2
        key2: data2
1
ターゲットとなる Kubernetes リソースの ApiVersion (例: apps/v1v1networking.k8s.io/v1)
2
リソースタイプ (例: Deployment、ConfigMap、NetworkPolicy)
3
リソースの名前 (例: my-configmap)
4
フィールドへの JSONPath 式 (例: spec.template.spec.containers[name:central].env[-1])
5
新しいフィールド値の YAML 文字列
4.5.2.1.1. オーバーレイの追加

カスタマイズのために、Central または SecuredCluster カスタムリソースにオーバーレイを追加できます。変更には、OpenShift CLI (oc) または OpenShift Container Platform Web コンソールを使用します。

オーバーレイが期待どおりに有効にならない場合は、RHACS Operator ログに構文エラーや問題が記録されていないか確認してください。

4.5.2.2. オーバーレイの例

4.5.2.2.1. Central ServiceAccount の EKS Pod ロール ARN の指定

次の例に示すように、Amazon Elastic Kubernetes Service (EKS) Pod ロールの Amazon Resource Name (ARN) アノテーションを central ServiceAccount に追加します。

apiVersion: platform.stackrox.io
kind: Central
metadata:
  name: central
spec:
  # ...
  overlays:
  - apiVersion: v1
    kind: ServiceAccount
    name: central
    patches:
      - path: metadata.annotations.eks\.amazonaws\.com/role-arn
        value: "\"arn:aws:iam:1234:role\""
4.5.2.2.2. Central デプロイメントへの環境変数の注入

次の例に示すように、環境変数を central デプロイメントに注入します。

apiVersion: platform.stackrox.io
kind: Central
metadata:
  name: central
spec:
  # ...
  overlays:
  - apiVersion: apps/v1
    kind: Deployment
    name: central
    patches:
    - path: spec.template.spec.containers[name:central].env[-1]
      value: |
        name: MY_ENV_VAR
        value: value
4.5.2.2.3. Ingress ルールを使用したネットワークポリシーの拡張

次の例に示すように、ポート 999 トラフィック用の Ingress ルールを allow-ext-to-central ネットワークポリシーに追加します。

apiVersion: platform.stackrox.io
kind: Central
metadata:
  name: central
spec:
    # ...
    overlays:
    - apiVersion: networking.k8s.io/v1
      kind: NetworkPolicy
      name: allow-ext-to-central
      patches:
        - path: spec.ingress[-1]
          value: |
            ports:
            - port: 999
              protocol: TCP
4.5.2.2.4. ConfigMap データの変更

次の例に示すように、central-endpoints ConfigMap のデータを変更します。

apiVersion: platform.stackrox.io
kind: Central
metadata:
  name: central
spec:
    # ...
    overlays:
    - apiVersion: v1
      kind: ConfigMap
      name: central-endpoints
      patches:
      - path: data
        value: |
          endpoints.yaml: |
            disableDefault: false
4.5.2.2.5. Central デプロイメントへのコンテナーの追加

次の例に示すように、新しいコンテナーを central デプロイメントに追加します。

apiVersion: platform.stackrox.io
kind: Central
metadata:
  name: central
spec:
    # ...
    overlays:
    - apiVersion: apps/v1
      kind: Deployment
      name: central
      patches:
        - path: spec.template.spec.containers[-1]
      value: |
        name: nginx
        image: nginx
        ports:
          - containerPort: 8000
            name: http
            protocol: TCP
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.