-
Notifications
You must be signed in to change notification settings - Fork 548
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
Bundle extract size limit exceeded guidance #1523
Comments
In the process of unpacking operator bundles on-cluster, OLM copies the content of bundle manifests into a ConfigMap -- more on that here: https://github.com/operator-framework/operator-lifecycle-manager/blob/2b93a4bc750a6ca77586f81914567a7582aa7341/doc/design/resolving-bundle-images.md#unpacking. As I understand it, the default is what it is because individual values in etcd can't be larger than 1MiB (kubernetes/kubernetes#19781 (comment)). |
No, this limit is currently per-bundle.
Not at the moment, but if we're hitting this limit we will need to support unpacking across multiple resources so that it can't be hit. Can you share the manifests you're trying to use? We haven't seen anyone hit this limit yet, and I'm curious if there is some duplication in your bundle that is causing the problem. |
@ecordell We've not released our Operator yet, so we can't share them yet, sorry. We have a large number of CRDs (over a dozen). Individually none of them are over 1mb (although we do have one unusually large one which is 550kb), but the combined size of all our CRDs and roles does bump us just over 1mb. I think there is definitely duplication within each CRD, but in the absence of |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
+1 on this issue. In the upcoming release of Strimzi (0.22) we drop support for Openshift 3.11 and so have now added schema to our CRDs, doubling (or more) their length. This results in us getting the same issue shown above with the initContainer unable to apply the CRDs. |
+1 We (OCS) just ran into this as a result of one of our components updating to kubebuilder v0.4.1 to generate our operator bundle. Here's the offending PR: red-hat-storage/ocs-operator#1144 Currently trying to figure out a workaround. |
What could be the workaround for this? Not really want to split the operator. |
I'm getting this error when attempting to bundle cert-manager for operatorhub in operator-framework/community-operators#4103
Bundle created using operator-sdk as follows
|
@wallrj This size error is due to the fact that OLM relies on etcd to store the bundle content. The 1MB limit of etcd is what's hitting us here. We are looking at potential workaround in parallel to building a new bundle management system that can work around the etcd limitation. Fundamentally this is a Kubernetes API problem because there are some CRDs out there that due to excessive inlining of all kind of standard resource specs alone exceed the 1MB limit. The second error is asking you to provide example JSON manifests for your CRDs in your CSV, see here: https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/building-your-csv.md#crd-templates |
We are running into similar issue and suggested workaround does not apply to us as our single CRD is close to ~850kb without any description fields in it. The total bundle size comes close to ~1.3 MB. This is a blocker for us. |
Hi @iam-veeramalla, What is the version of OLM used by you? |
Type of question
Looking for guidance into an issue blocking the development of an operator. It doesn't seem like a bug in the product or a feature request but it does feel like a serious limitation.
Question
Attempting to install operator through OLM I am faced with this error
aside from the error message being slightly confusing. It does seem that the combined total of all the manifests is greater than the 1048576 byte and the file mentioned is what pushes it over the limit.
what is the purpose of this size limit?
does it need to be enforced on the combined bundle?
is there any way to get round this error?
given we can cut down the size to below the limit, at the moment there is only one versions metadata within this bundle, when the time comes to add another version will we hit this issue again?
Environment
OCP 4.4
The text was updated successfully, but these errors were encountered: