-
Notifications
You must be signed in to change notification settings - Fork 334
Configcheck secret fails to reconcile when there is too much data in the reconcile for fluentd #1944
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
there is a |
quick update. I disabled the config check in the operator like this: flowConfigCheckDisabled: true but then I m getting this error: So the logging operator uses yet again a new secret to store all new fluentd.conf and the total of flows and the final fluentd.conf exceeds the max size of 1mb. 2 questions related to this a) Would the compressConfigFile help me with this situation? Thanks! |
So if I get this right, the problem is a limit in the number of flows that the operator logging can handle? In my tests, when creating more than 200 flows the final fluentd.conf exceeds the 1Mb size and then fails to create the secret for that What am I missing here? Does the logging-operator need to create a secret containing the final fluentd.conf always? Is there any workaround for this? |
It should help, yes. However we received a report from a different user, that it might have a bug around that. We can look at that bug if that's the case, but it would be good to know if it worked for you or not.
Always the final config. An alternative solution is to shard your single fluentd instance into multiple ones using FluentdConfigs, where you can create separate "tenants" that have their isolated configuration. Please reach out over discord or slack if you are interested to learn more: |
Hey @mostrovoi, |
Closing this. |
I have a setup that creates around 200 flows from flow CRD in a cluster and when applying the changes that go from a centralized clusterflow to 200 flows I get the following error:
erator-logging","reconcileID":"68addd32-12a5-4d44-9e08-e539187b0ba1","error":"failed to validate config: failed to create secret for fluentd configcheck: Secret "logging-operator-logging-fluentd-configcheck-c308675f" is invalid: data: Too long: must have at most 1048576 bytes","errorVerbose":"Secret "logging-operator-logging-fluentd-configcheck-c308675f" is invalid: data: Too long: must have at most 1048576 bytes\nfailed to create secret for fluentd configcheck\ngithub.com/kube-logging/logging-operator/pkg/resources/fluentd.(*Reconciler).configCheck\n\t/workspace/pkg/resources/fluentd/appconfigmap.go:83\ngithub.com/kube-logging/logging-operator/pkg/resources/fluentd.(*Reconciler).Reconcile\n\t/workspace/pkg/resources/fluentd/fluentd.go:168\ngithub.com/kube-logging/logging-operator/controllers/logging.
I suspect that the issue is that the created secret exceed 1Mb which is the max size for a secret creation in k8s when the logging-operator goes through the newly defined flows. What would be the workaround for this?
One way to go about this is to do batches of 10-20 flows and then reconcile would work I guess. Is there any other way?
Thanks
Version of logging-operator is 4.2.2
The text was updated successfully, but these errors were encountered: