Node Selection and Scheduling

This page explains the shared scheduling and node-selection fields used by Scan and ScanSuite.

Where to Configure These Fields

The same scheduling concepts appear in both resources, but the field paths are different:

ConceptScan PathScanSuite Path
Scan typespec.scanTypespec.scanTemplate.scanType
Node scope strategyspec.nodeScopeStrategyspec.scanTemplate.nodeScopeStrategy
Target node rolesspec.targetNodeRolesspec.scanTemplate.targetNodeRoles
Node selectorspec.nodeSelectorspec.scanTemplate.nodeSelector

Parameter Behavior

ParameterDescription
scanTypeSupports platform, node, and all. In platform mode, the system only scans Kubernetes resources. In node mode, the system only scans node files.
nodeScopeStrategySupports auto and manual. In auto mode, nodes are selected based on rule-specific scope definitions. In manual mode, all rules are executed on the specified nodes.
targetNodeRolesOptional. Restricts node roles. Valid values include control-plane and worker.
nodeSelectorOptional. Uses node labels for selection.

nodeScopeStrategy Behavior

StrategyDescription
autoNodes are automatically selected based on the benchmark rule's spec.nodeScope. Kube-bench maps nodes by benchmark.file.type. No job is created if there is no match.
manualRun on all matched nodes and ignore rule-specific nodeScope.

Filtering Rules

When both targetNodeRoles and nodeSelector are configured, they work together as an intersection during node filtering.

Profile-Specific Limits

Important Notes:

  • OS scanning requires scanType: node.
  • CIS only supports scanType: node; platform and all are not supported because kube-bench does not support rule-level node selection.
  • STIG supports platform, node, and all.
  • CIS and STIG baselines have different scheduling rules, so they should not be combined in one ScanSuite.