15.9.6. 发现模式
发现模式允许您在不更改其配置的情况下,验证集群的功能。在测试时使用现有环境配置。测试会尝试查找所需的配置项目,并使用这些项目来执行测试。如果没有找到运行特定测试所需的资源,则会跳过测试,为用户提供正确的信息。测试完成后,不会清理预配置的配置项目,测试环境可立即用于另一个测试运行。
某些配置项目仍由测试创建。这些是运行测试所需的特定项,例如 SR-IOV 网络。这些配置项目会在自定义命名空间中创建,并在执行测试后进行清理。
一个额外的好处是可以减少测试运行时间。因为已经有配置项目,因此不需要时间进行环境配置和分配。
要启用发现模式,必须如下设置 DISCOVERY_MODE
环境变量来指示测试:
$ docker run -v $(pwd)/:/kubeconfig:Z -e KUBECONFIG=/kubeconfig/kubeconfig -e DISCOVERY_MODE=true registry.redhat.io/openshift-kni/cnf-tests /usr/bin/test-run.sh
15.9.6.1. 所需的环境配置先决条件
SR-IOV 测试
大多数 SR-IOV 测试需要以下资源:
-
SriovNetworkNodePolicy
. -
至少有一个资源由
SriovNetworkNodePolicy
指定的资源为可分配的资源 ; 至少 5 个资源数才被视为足够。
有些测试有额外的要求:
-
节点上有可用策略资源的未使用设备,其链接状态为
DOWN
,而不是桥接 slave。 -
一个
SriovNetworkNodePolicy
,其 MTU 值为9000
。
DPDK 测试
与 DPDK 相关的测试需要:
- 一个性能配置集。
- 一个 SR-IOV 策略。
-
具有可用于 SR-IOV 策略的资源的节点,并使用
PerformanceProfile
节点选择器。
PTP 测试
-
一个从
PtpConfig
(ptp4lOpts="-s" ,phc2sysOpts="-a -r"
)。 -
具有与 slave
PtpConfig
匹配标签的节点。
SCTP 测试
-
SriovNetworkNodePolicy
. -
与
SriovNetworkNodePolicy
和启用 SCTP 的MachineConfig
匹配的节点。
Performance Operator 测试
不同的测试有不同的要求。其中一些是:
- 一个性能配置集。
-
带有
profile.Spec.CPU.Isolated = 1
的性能配置集。 -
带有
profile.Spec.RealTimeKernel.Enabled == true
的性能配置集。 - 没有使用巨页的节点。