Closed Tadcas closed 1 month ago
Hi @Tadcas, includedTaints
is not available in v0.29.0, it was recently merged to master and will be available in the next release (v0.30.0)
Please make sure you are following the docs for your version of Descheduler, as the master branch includes unreleased changes. Alternatively you can build your own image from master
descheduler version: v0.29.0 descheduler policy config file: `--- apiVersion: v1 kind: ConfigMap metadata: name: descheduler-policy-configmap namespace: descheduler data: policy.yaml: | apiVersion: "descheduler/v1alpha2" kind: "DeschedulerPolicy" nodeSelector: "agentpool=user1" profiles:
AKS version - 1.29.2
What did you do? Tried to run cronjob with RemovePodsViolatingNodeTaints plugin. If using excludedTaints arg, everything is working, if using includedTaints arg, get the errors below:
I0508 14:42:13.637675 1 secure_serving.go:57] Forcing use of http/1.1 only I0508 14:42:13.638451 1 named_certificates.go:53] "Loaded SNI cert" index=0 certName="self-signed loopback" certDetail="\"apiserver-loopback-client@1715179333\" [serving] validServingFor=[apiserver-loopback-client] issuer=\"apiserver-loopback-client-ca@1715179333\" (2024-05-08 13:42:13 +0000 UTC to 2025-05-08 13:42:13 +0000 UTC (now=2024-05-08 14:42:13.638350473 +0000 UTC))" I0508 14:42:13.638478 1 secure_serving.go:213] Serving securely on [::]:10258 I0508 14:42:13.638489 1 tracing.go:87] Did not find a trace collector endpoint defined. Switching to NoopTraceProvider I0508 14:42:13.638518 1 tlsconfig.go:240] "Starting DynamicServingCertificateController" E0508 14:42:13.639663 1 server.go:96] "descheduler server" err="failed decoding descheduler's policy config \"/policy-dir/policy.yaml\": strict decoding error: unknown field \"includedTaints\"" E0508 14:42:13.639680 1 run.go:74] "command failed" err="failed decoding descheduler's policy config \"/policy-dir/policy.yaml\": strict decoding error: unknown field \"includedTaints\""
Using an example from here: https://github.com/kubernetes-sigs/descheduler/tree/master?tab=readme-ov-file#removepodsviolatingnodetaints
Also tested with --dry-run option. Am I missing something?
What did you expect to see? Expect that it works the same way as using excludedTaints.
What did you see instead? When run cronjob I get this error:
I0508 14:42:13.637675 1 secure_serving.go:57] Forcing use of http/1.1 only I0508 14:42:13.638451 1 named_certificates.go:53] "Loaded SNI cert" index=0 certName="self-signed loopback" certDetail="\"apiserver-loopback-client@1715179333\" [serving] validServingFor=[apiserver-loopback-client] issuer=\"apiserver-loopback-client-ca@1715179333\" (2024-05-08 13:42:13 +0000 UTC to 2025-05-08 13:42:13 +0000 UTC (now=2024-05-08 14:42:13.638350473 +0000 UTC))" I0508 14:42:13.638478 1 secure_serving.go:213] Serving securely on [::]:10258 I0508 14:42:13.638489 1 tracing.go:87] Did not find a trace collector endpoint defined. Switching to NoopTraceProvider I0508 14:42:13.638518 1 tlsconfig.go:240] "Starting DynamicServingCertificateController" E0508 14:42:13.639663 1 server.go:96] "descheduler server" err="failed decoding descheduler's policy config \"/policy-dir/policy.yaml\": strict decoding error: unknown field \"includedTaints\"" E0508 14:42:13.639680 1 run.go:74] "command failed" err="failed decoding descheduler's policy config \"/policy-dir/policy.yaml\": strict decoding error: unknown field \"includedTaints\""