-
Notifications
You must be signed in to change notification settings - Fork 304
Description
Describe the issue
The dependency update PR #1558 bumped the controller runtime version from v0.18 to v0.20. Controller runtime v0.19 has a breaking change where controller names are now validated. One of the validation checks is ensuring that no two controllers have the same name.
The FluentBit controller and FluentBit config controller both bind to the fluentbitv1alpha2.FluentBit
type. The Fluentd and Fluentd config controller do the exact same4 thing, but for fluentdv1alpha1.Fluentd
instead. This is results in controllers registering under the same names, which is invalid due to the changes the controller runtime v0.19.0 update.
Due to another issue with how v3.3.0 was published, v3.3.0 installs be default point to the "latest" image tag. This tag is updated on every merge to master. As a result, any time the container runtime pulls this image, the container will crash on startup.
To Reproduce
Install v3.3.0 via the Helm chart with default values, or just run a master
branch build directly
Expected behavior
The operator should not crash on startup, and v3.3.0 should not be affected
Your Environment
- Fluent Operator version: v3.3.0, master branch
- Container Runtime: N/A
- Operating system: N/A
- Kernel version: N/A
How did you install fluent operator?
Helm chart
Additional context
Relevant log output:
2025-04-12T17:26:27-05:00 ERROR setup unable to create controller {"controller": "FluentBit", "error": "controller with name fluentbit already exists. Controller names must be unique to avoid multiple controllers reporting the same metric. This validation can be disabled via the SkipNameValidation option"}
main.main
/workspace/main.go:158
runtime.main
/usr/local/go/src/runtime/proc.go:283